perf tools: Fix tracing_path_mount proper path
authorJiri Olsa <jolsa@kernel.org>
Tue, 16 Oct 2018 11:48:18 +0000 (13:48 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 16 Oct 2018 15:27:46 +0000 (12:27 -0300)
If there's no tracefs (RHEL7) support the tracing_path_mount
returns debugfs path which results in following fail:

  # perf probe sys_write
  kprobe_events file does not exist - please rebuild kernel with CONFIG_KPROBE_EVENTS.
  Error: Failed to add events.

In tracing_path_debugfs_mount function we need to return the
'tracing' path instead of just the mount to make it work:

  # perf probe sys_write
  Added new event:
    probe:sys_write      (on sys_write)

  You can now use it in all perf tools, such as:

          perf record -e probe:sys_write -aR sleep 1

Adding the 'return tracing_path;' also to tracing_path_tracefs_mount
function just for consistency with tracing_path_debugfs_mount.

Upstream keeps working, because it has the tracefs support.

Link: http://lkml.kernel.org/n/tip-yiwkzexq9fk1ey1xg3gnjlw4@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Fixes: 23773ca18b39 ("perf tools: Make perf aware of tracefs")
Link: http://lkml.kernel.org/r/20181016114818.3595-1-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/lib/api/fs/tracing_path.c

index 120037496f77484bc002da4b24ae4f14340e1251..5afb11b30fca4e318f88aaf9e7e28b0c2d4107b8 100644 (file)
@@ -36,7 +36,7 @@ static const char *tracing_path_tracefs_mount(void)
 
        __tracing_path_set("", mnt);
 
-       return mnt;
+       return tracing_path;
 }
 
 static const char *tracing_path_debugfs_mount(void)
@@ -49,7 +49,7 @@ static const char *tracing_path_debugfs_mount(void)
 
        __tracing_path_set("tracing/", mnt);
 
-       return mnt;
+       return tracing_path;
 }
 
 const char *tracing_path_mount(void)