diff options
Diffstat (limited to 'tools/perf/perf.c')
-rw-r--r-- | tools/perf/perf.c | 33 |
1 files changed, 4 insertions, 29 deletions
diff --git a/tools/perf/perf.c b/tools/perf/perf.c index 73d0cac8b67e..2b2e225a4d4c 100644 --- a/tools/perf/perf.c +++ b/tools/perf/perf.c | |||
@@ -29,8 +29,6 @@ struct pager_config { | |||
29 | int val; | 29 | int val; |
30 | }; | 30 | }; |
31 | 31 | ||
32 | static char debugfs_mntpt[MAXPATHLEN]; | ||
33 | |||
34 | static int pager_command_config(const char *var, const char *value, void *data) | 32 | static int pager_command_config(const char *var, const char *value, void *data) |
35 | { | 33 | { |
36 | struct pager_config *c = data; | 34 | struct pager_config *c = data; |
@@ -81,15 +79,6 @@ static void commit_pager_choice(void) | |||
81 | } | 79 | } |
82 | } | 80 | } |
83 | 81 | ||
84 | static void set_debugfs_path(void) | ||
85 | { | ||
86 | char *path; | ||
87 | |||
88 | path = getenv(PERF_DEBUGFS_ENVIRONMENT); | ||
89 | snprintf(debugfs_path, MAXPATHLEN, "%s/%s", path ?: debugfs_mntpt, | ||
90 | "tracing/events"); | ||
91 | } | ||
92 | |||
93 | static int handle_options(const char ***argv, int *argc, int *envchanged) | 82 | static int handle_options(const char ***argv, int *argc, int *envchanged) |
94 | { | 83 | { |
95 | int handled = 0; | 84 | int handled = 0; |
@@ -161,15 +150,14 @@ static int handle_options(const char ***argv, int *argc, int *envchanged) | |||
161 | fprintf(stderr, "No directory given for --debugfs-dir.\n"); | 150 | fprintf(stderr, "No directory given for --debugfs-dir.\n"); |
162 | usage(perf_usage_string); | 151 | usage(perf_usage_string); |
163 | } | 152 | } |
164 | strncpy(debugfs_mntpt, (*argv)[1], MAXPATHLEN); | 153 | debugfs_set_path((*argv)[1]); |
165 | debugfs_mntpt[MAXPATHLEN - 1] = '\0'; | ||
166 | if (envchanged) | 154 | if (envchanged) |
167 | *envchanged = 1; | 155 | *envchanged = 1; |
168 | (*argv)++; | 156 | (*argv)++; |
169 | (*argc)--; | 157 | (*argc)--; |
170 | } else if (!prefixcmp(cmd, CMD_DEBUGFS_DIR)) { | 158 | } else if (!prefixcmp(cmd, CMD_DEBUGFS_DIR)) { |
171 | strncpy(debugfs_mntpt, cmd + strlen(CMD_DEBUGFS_DIR), MAXPATHLEN); | 159 | debugfs_set_path(cmd + strlen(CMD_DEBUGFS_DIR)); |
172 | debugfs_mntpt[MAXPATHLEN - 1] = '\0'; | 160 | fprintf(stderr, "dir: %s\n", debugfs_mountpoint); |
173 | if (envchanged) | 161 | if (envchanged) |
174 | *envchanged = 1; | 162 | *envchanged = 1; |
175 | } else { | 163 | } else { |
@@ -281,7 +269,6 @@ static int run_builtin(struct cmd_struct *p, int argc, const char **argv) | |||
281 | if (use_pager == -1 && p->option & USE_PAGER) | 269 | if (use_pager == -1 && p->option & USE_PAGER) |
282 | use_pager = 1; | 270 | use_pager = 1; |
283 | commit_pager_choice(); | 271 | commit_pager_choice(); |
284 | set_debugfs_path(); | ||
285 | 272 | ||
286 | status = p->fn(argc, argv, prefix); | 273 | status = p->fn(argc, argv, prefix); |
287 | exit_browser(status); | 274 | exit_browser(status); |
@@ -416,17 +403,6 @@ static int run_argv(int *argcp, const char ***argv) | |||
416 | return done_alias; | 403 | return done_alias; |
417 | } | 404 | } |
418 | 405 | ||
419 | /* mini /proc/mounts parser: searching for "^blah /mount/point debugfs" */ | ||
420 | static void get_debugfs_mntpt(void) | ||
421 | { | ||
422 | const char *path = debugfs_mount(NULL); | ||
423 | |||
424 | if (path) | ||
425 | strncpy(debugfs_mntpt, path, sizeof(debugfs_mntpt)); | ||
426 | else | ||
427 | debugfs_mntpt[0] = '\0'; | ||
428 | } | ||
429 | |||
430 | static void pthread__block_sigwinch(void) | 406 | static void pthread__block_sigwinch(void) |
431 | { | 407 | { |
432 | sigset_t set; | 408 | sigset_t set; |
@@ -453,7 +429,7 @@ int main(int argc, const char **argv) | |||
453 | if (!cmd) | 429 | if (!cmd) |
454 | cmd = "perf-help"; | 430 | cmd = "perf-help"; |
455 | /* get debugfs mount point from /proc/mounts */ | 431 | /* get debugfs mount point from /proc/mounts */ |
456 | get_debugfs_mntpt(); | 432 | debugfs_mount(NULL); |
457 | /* | 433 | /* |
458 | * "perf-xxxx" is the same as "perf xxxx", but we obviously: | 434 | * "perf-xxxx" is the same as "perf xxxx", but we obviously: |
459 | * | 435 | * |
@@ -476,7 +452,6 @@ int main(int argc, const char **argv) | |||
476 | argc--; | 452 | argc--; |
477 | handle_options(&argv, &argc, NULL); | 453 | handle_options(&argv, &argc, NULL); |
478 | commit_pager_choice(); | 454 | commit_pager_choice(); |
479 | set_debugfs_path(); | ||
480 | set_buildid_dir(); | 455 | set_buildid_dir(); |
481 | 456 | ||
482 | if (argc > 0) { | 457 | if (argc > 0) { |