aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lib/api/fs/tracing_path.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2015-09-29 03:43:46 -0400
committerIngo Molnar <mingo@kernel.org>2015-09-29 03:43:46 -0400
commit9c17dbc6eb73bdd8a6aaea1baefd37ff78d86148 (patch)
tree5b303f98bc8898f26d2445138904f2fb14403a2d /tools/lib/api/fs/tracing_path.c
parent18ab2cd3ee9d52dc64c5ae984146a261a328c4e8 (diff)
parente637d17757a10732fa5d573c18f20b3cd4d31245 (diff)
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo: - Accept a zero --itrace period, meaning "as often as possible". In the case of Intel PT that is the same as a period of 1 and a unit of 'instructions' (i.e. --itrace=i1i). (Adrian Hunter) - Harmonize itrace's synthesized callchains with the existing --max-stack tool option. (Adrian Hunter) - Allow time to be displayed in nanoseconds in 'perf script'. (Adrian Hunter) - Fix potential infinite loop when handling Intel PT timestamps. (Adrian Hunter) - Slighly improve Intel PT debug logging. (Adrian Hunter) - Warn when AUX data has been lost, just like when processing PERF_RECORD_LOST. (Adrian Hunter) - Further document export-to-postgresql.py script. (Adrian Hunter) - Add option to synthesize branch stack from auxtrace data. (Adrian Hunter) - Use equivalent logic to avoid using dso->kernel. (Arnaldo Carvalho de Melo) - Show proper error messages when parsing bad terms for hw/sw events. (He Kuang) - Tracepoint event parsing improvements. (He Kuang) - Store tracing mountpoint for better error message. (Jiri Olsa) - Add fixdep to tools/build, bringing it closer to the kernel counterpart, from where it is being lifted. (Jiri Olsa) Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/lib/api/fs/tracing_path.c')
-rw-r--r--tools/lib/api/fs/tracing_path.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/tools/lib/api/fs/tracing_path.c b/tools/lib/api/fs/tracing_path.c
index 38aca2dd1946..0406a7d5c891 100644
--- a/tools/lib/api/fs/tracing_path.c
+++ b/tools/lib/api/fs/tracing_path.c
@@ -12,12 +12,14 @@
12#include "tracing_path.h" 12#include "tracing_path.h"
13 13
14 14
15char tracing_mnt[PATH_MAX + 1] = "/sys/kernel/debug";
15char tracing_path[PATH_MAX + 1] = "/sys/kernel/debug/tracing"; 16char tracing_path[PATH_MAX + 1] = "/sys/kernel/debug/tracing";
16char tracing_events_path[PATH_MAX + 1] = "/sys/kernel/debug/tracing/events"; 17char tracing_events_path[PATH_MAX + 1] = "/sys/kernel/debug/tracing/events";
17 18
18 19
19static void __tracing_path_set(const char *tracing, const char *mountpoint) 20static void __tracing_path_set(const char *tracing, const char *mountpoint)
20{ 21{
22 snprintf(tracing_mnt, sizeof(tracing_mnt), "%s", mountpoint);
21 snprintf(tracing_path, sizeof(tracing_path), "%s/%s", 23 snprintf(tracing_path, sizeof(tracing_path), "%s/%s",
22 mountpoint, tracing); 24 mountpoint, tracing);
23 snprintf(tracing_events_path, sizeof(tracing_events_path), "%s/%s%s", 25 snprintf(tracing_events_path, sizeof(tracing_events_path), "%s/%s%s",
@@ -109,19 +111,10 @@ static int strerror_open(int err, char *buf, size_t size, const char *filename)
109 "Hint:\tTry 'sudo mount -t debugfs nodev /sys/kernel/debug'"); 111 "Hint:\tTry 'sudo mount -t debugfs nodev /sys/kernel/debug'");
110 break; 112 break;
111 case EACCES: { 113 case EACCES: {
112 const char *mountpoint = debugfs__mountpoint();
113
114 if (!access(mountpoint, R_OK) && strncmp(filename, "tracing/", 8) == 0) {
115 const char *tracefs_mntpoint = tracefs__mountpoint();
116
117 if (tracefs_mntpoint)
118 mountpoint = tracefs__mountpoint();
119 }
120
121 snprintf(buf, size, 114 snprintf(buf, size,
122 "Error:\tNo permissions to read %s/%s\n" 115 "Error:\tNo permissions to read %s/%s\n"
123 "Hint:\tTry 'sudo mount -o remount,mode=755 %s'\n", 116 "Hint:\tTry 'sudo mount -o remount,mode=755 %s'\n",
124 tracing_events_path, filename, mountpoint); 117 tracing_events_path, filename, tracing_mnt);
125 } 118 }
126 break; 119 break;
127 default: 120 default: