Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fbf99625 authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

perf tools: Switch to tracing_path interface on appropriate places



Using tracing_path interface on several places, that more or less
copy the functionality of tracing_path interface.

Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Raphael Beamonte <raphael.beamonte@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1441180605-24737-16-git-send-email-jolsa@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 60a1133a
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ int test__openat_syscall_event_on_all_cpus(void)
	cpu_set_t cpu_set;
	struct thread_map *threads = thread_map__new(-1, getpid(), UINT_MAX);
	char sbuf[STRERR_BUFSIZE];
	char errbuf[BUFSIZ];

	if (threads == NULL) {
		pr_debug("thread_map__new\n");
@@ -31,12 +32,8 @@ int test__openat_syscall_event_on_all_cpus(void)

	evsel = perf_evsel__newtp("syscalls", "sys_enter_openat");
	if (evsel == NULL) {
		if (tracefs__configured())
			pr_debug("is tracefs mounted on /sys/kernel/tracing?\n");
		else if (debugfs__configured())
			pr_debug("is debugfs mounted on /sys/kernel/debug?\n");
		else
			pr_debug("Neither tracefs or debugfs is enabled in this kernel\n");
		tracing_path__strerror_open_tp(errno, errbuf, sizeof(errbuf), "syscalls", "sys_enter_openat");
		pr_err("%s\n", errbuf);
		goto out_thread_map_delete;
	}

+4 −7
Original line number Diff line number Diff line
#include <api/fs/fs.h>
#include <api/fs/tracing_path.h>
#include "thread_map.h"
#include "evsel.h"
#include "debug.h"
@@ -11,6 +11,7 @@ int test__openat_syscall_event(void)
	unsigned int nr_openat_calls = 111, i;
	struct thread_map *threads = thread_map__new(-1, getpid(), UINT_MAX);
	char sbuf[STRERR_BUFSIZE];
	char errbuf[BUFSIZ];

	if (threads == NULL) {
		pr_debug("thread_map__new\n");
@@ -19,12 +20,8 @@ int test__openat_syscall_event(void)

	evsel = perf_evsel__newtp("syscalls", "sys_enter_openat");
	if (evsel == NULL) {
		if (tracefs__configured())
			pr_debug("is tracefs mounted on /sys/kernel/tracing?\n");
		else if (debugfs__configured())
			pr_debug("is debugfs mounted on /sys/kernel/debug?\n");
		else
			pr_debug("Neither tracefs or debugfs is enabled in this kernel\n");
		tracing_path__strerror_open_tp(errno, errbuf, sizeof(errbuf), "syscalls", "sys_enter_openat");
		pr_err("%s\n", errbuf);
		goto out_thread_map_delete;
	}

+2 −14
Original line number Diff line number Diff line
@@ -1261,23 +1261,11 @@ test__checkevent_breakpoint_len_rw_modifier(struct perf_evlist *evlist)

static int count_tracepoints(void)
{
	char events_path[PATH_MAX];
	struct dirent *events_ent;
	const char *mountpoint;
	DIR *events_dir;
	int cnt = 0;

	mountpoint = tracefs__mountpoint();
	if (mountpoint) {
		scnprintf(events_path, PATH_MAX, "%s/events",
			  mountpoint);
	} else {
		mountpoint = debugfs__mountpoint();
		scnprintf(events_path, PATH_MAX, "%s/tracing/events",
			  mountpoint);
	}

	events_dir = opendir(events_path);
	events_dir = opendir(tracing_events_path);

	TEST_ASSERT_VAL("Can't open events dir", events_dir);

@@ -1294,7 +1282,7 @@ static int count_tracepoints(void)
			continue;

		scnprintf(sys_path, PATH_MAX, "%s/%s",
			  events_path, events_ent->d_name);
			  tracing_events_path, events_ent->d_name);

		sys_dir = opendir(sys_path);
		TEST_ASSERT_VAL("Can't open sys dir", sys_dir);
+2 −12
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@
#include "color.h"
#include "symbol.h"
#include "thread.h"
#include <api/fs/fs.h>
#include <api/fs/tracing_path.h>
#include "probe-event.h"
#include "probe-file.h"
#include "session.h"
@@ -72,21 +72,11 @@ static void print_both_open_warning(int kerr, int uerr)
static int open_probe_events(const char *trace_file, bool readwrite)
{
	char buf[PATH_MAX];
	const char *__debugfs;
	const char *tracing_dir = "";
	int ret;

	__debugfs = tracefs__mountpoint();
	if (__debugfs == NULL) {
		tracing_dir = "tracing/";

		__debugfs = debugfs__mountpoint();
		if (__debugfs == NULL)
			return -ENOTSUP;
	}

	ret = e_snprintf(buf, PATH_MAX, "%s/%s%s",
			 __debugfs, tracing_dir, trace_file);
			 tracing_path, tracing_dir, trace_file);
	if (ret >= 0) {
		pr_debug("Opening %s write=%d\n", buf, readwrite);
		if (readwrite && !probe_event_dry_run)