tools lib api fs tracing_path: Introduce opendir() method

That takes care of using the right call to get the tracing_path
directory, the one that will end up calling tracing_path_set() to figure
out where tracefs is mounted.

One more step in doing just lazy reading of system structures to reduce
the number of operations done unconditionaly at 'perf' start.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-42zzi0f274909bg9mxzl81bu@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Arnaldo Carvalho de Melo
2018-05-17 14:42:39 -03:00
parent 25a7d91427
commit 7014e0e3bf
4 changed files with 21 additions and 5 deletions

View File

@@ -191,7 +191,7 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config)
char evt_path[MAXPATHLEN];
char *dir_path;
sys_dir = opendir(tracing_events_path);
sys_dir = tracing_events__opendir();
if (!sys_dir)
return NULL;
@@ -578,7 +578,7 @@ static int add_tracepoint_multi_sys(struct list_head *list, int *idx,
DIR *events_dir;
int ret = 0;
events_dir = opendir(tracing_events_path);
events_dir = tracing_events__opendir();
if (!events_dir) {
tracepoint_error(err, errno, sys_name, evt_name);
return -1;
@@ -2106,7 +2106,7 @@ void print_tracepoint_events(const char *subsys_glob, const char *event_glob,
bool evt_num_known = false;
restart:
sys_dir = opendir(tracing_events_path);
sys_dir = tracing_events__opendir();
if (!sys_dir)
return;
@@ -2200,7 +2200,7 @@ int is_valid_tracepoint(const char *event_string)
char evt_path[MAXPATHLEN];
char *dir_path;
sys_dir = opendir(tracing_events_path);
sys_dir = tracing_events__opendir();
if (!sys_dir)
return 0;