tools lib api fs tracing_path: Introduce get/put_events_file() helpers
To make reading events files a tad more compact than with
get_tracing_files("events/foo").
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-do6xgtwpmfl8zjs1euxsd2du@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
@@ -86,6 +86,21 @@ void put_tracing_file(char *file)
|
|||||||
free(file);
|
free(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char *get_events_file(const char *name)
|
||||||
|
{
|
||||||
|
char *file;
|
||||||
|
|
||||||
|
if (asprintf(&file, "%s/events/%s", tracing_path_mount(), name) < 0)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
return file;
|
||||||
|
}
|
||||||
|
|
||||||
|
void put_events_file(char *file)
|
||||||
|
{
|
||||||
|
free(file);
|
||||||
|
}
|
||||||
|
|
||||||
int tracing_path__strerror_open_tp(int err, char *buf, size_t size,
|
int tracing_path__strerror_open_tp(int err, char *buf, size_t size,
|
||||||
const char *sys, const char *name)
|
const char *sys, const char *name)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,5 +12,10 @@ const char *tracing_path_mount(void);
|
|||||||
char *get_tracing_file(const char *name);
|
char *get_tracing_file(const char *name);
|
||||||
void put_tracing_file(char *file);
|
void put_tracing_file(char *file);
|
||||||
|
|
||||||
|
char *get_events_file(const char *name);
|
||||||
|
void put_events_file(char *file);
|
||||||
|
|
||||||
|
#define zput_events_file(ptr) ({ free(*ptr); *ptr = NULL; })
|
||||||
|
|
||||||
int tracing_path__strerror_open_tp(int err, char *buf, size_t size, const char *sys, const char *name);
|
int tracing_path__strerror_open_tp(int err, char *buf, size_t size, const char *sys, const char *name);
|
||||||
#endif /* __API_FS_TRACING_PATH_H */
|
#endif /* __API_FS_TRACING_PATH_H */
|
||||||
|
|||||||
@@ -103,11 +103,10 @@ out:
|
|||||||
|
|
||||||
static int record_header_files(void)
|
static int record_header_files(void)
|
||||||
{
|
{
|
||||||
char *path;
|
char *path = get_events_file("header_page");
|
||||||
struct stat st;
|
struct stat st;
|
||||||
int err = -EIO;
|
int err = -EIO;
|
||||||
|
|
||||||
path = get_tracing_file("events/header_page");
|
|
||||||
if (!path) {
|
if (!path) {
|
||||||
pr_debug("can't get tracing/events/header_page");
|
pr_debug("can't get tracing/events/header_page");
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
@@ -128,9 +127,9 @@ static int record_header_files(void)
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
put_tracing_file(path);
|
put_events_file(path);
|
||||||
|
|
||||||
path = get_tracing_file("events/header_event");
|
path = get_events_file("header_event");
|
||||||
if (!path) {
|
if (!path) {
|
||||||
pr_debug("can't get tracing/events/header_event");
|
pr_debug("can't get tracing/events/header_event");
|
||||||
err = -ENOMEM;
|
err = -ENOMEM;
|
||||||
@@ -154,7 +153,7 @@ static int record_header_files(void)
|
|||||||
|
|
||||||
err = 0;
|
err = 0;
|
||||||
out:
|
out:
|
||||||
put_tracing_file(path);
|
put_events_file(path);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -243,7 +242,7 @@ static int record_ftrace_files(struct tracepoint_path *tps)
|
|||||||
char *path;
|
char *path;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
path = get_tracing_file("events/ftrace");
|
path = get_events_file("ftrace");
|
||||||
if (!path) {
|
if (!path) {
|
||||||
pr_debug("can't get tracing/events/ftrace");
|
pr_debug("can't get tracing/events/ftrace");
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|||||||
Reference in New Issue
Block a user