All of lore.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Jiri Olsa <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: a.p.zijlstra@chello.nl, jolsa@kernel.org, tglx@linutronix.de,
	mingo@kernel.org, linux-kernel@vger.kernel.org,
	matt.fleming@intel.com, raphael.beamonte@gmail.com,
	acme@redhat.com, hpa@zytor.com, rostedt@goodmis.org,
	dsahern@gmail.com, namhyung@kernel.org
Subject: [tip:perf/core] tools lib api fs: Move debugfs__strerror_open into tracing_path.c object
Date: Tue, 8 Sep 2015 07:33:46 -0700	[thread overview]
Message-ID: <tip-988bdb319246dea977a375beee39a5452e99b3ef@git.kernel.org> (raw)
In-Reply-To: <1441180605-24737-6-git-send-email-jolsa@kernel.org>

Commit-ID:  988bdb319246dea977a375beee39a5452e99b3ef
Gitweb:     http://git.kernel.org/tip/988bdb319246dea977a375beee39a5452e99b3ef
Author:     Jiri Olsa <jolsa@kernel.org>
AuthorDate: Wed, 2 Sep 2015 09:56:35 +0200
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Fri, 4 Sep 2015 12:00:58 -0300

tools lib api fs: Move debugfs__strerror_open into tracing_path.c object

Moving debugfs__strerror_open out of api/fs/debugfs.c, because it's not
debugfs specific. It'll be changed to consider tracefs mount as well in
following patches.

Renaming it into tracing_path__strerror_open_tp to fit into the
namespace. No functional change is intended.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Reviewed-by: Matt Fleming <matt.fleming@intel.com>
Cc: Raphael Beamonte <raphael.beamonte@gmail.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1441180605-24737-6-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/lib/api/fs/debugfs.c      | 52 ---------------------------------------
 tools/lib/api/fs/tracing_path.c | 54 +++++++++++++++++++++++++++++++++++++++++
 tools/lib/api/fs/tracing_path.h |  3 +++
 tools/perf/builtin-trace.c      |  5 ++--
 4 files changed, 60 insertions(+), 54 deletions(-)

diff --git a/tools/lib/api/fs/debugfs.c b/tools/lib/api/fs/debugfs.c
index eb7cf4d..c707cfb 100644
--- a/tools/lib/api/fs/debugfs.c
+++ b/tools/lib/api/fs/debugfs.c
@@ -75,55 +75,3 @@ char *debugfs_mount(const char *mountpoint)
 out:
 	return debugfs_mountpoint;
 }
-
-int debugfs__strerror_open(int err, char *buf, size_t size, const char *filename)
-{
-	char sbuf[128];
-
-	switch (err) {
-	case ENOENT:
-		if (debugfs_found) {
-			snprintf(buf, size,
-				 "Error:\tFile %s/%s not found.\n"
-				 "Hint:\tPerhaps this kernel misses some CONFIG_ setting to enable this feature?.\n",
-				 debugfs_mountpoint, filename);
-			break;
-		}
-		snprintf(buf, size, "%s",
-			 "Error:\tUnable to find debugfs\n"
-			 "Hint:\tWas your kernel compiled with debugfs support?\n"
-			 "Hint:\tIs the debugfs filesystem mounted?\n"
-			 "Hint:\tTry 'sudo mount -t debugfs nodev /sys/kernel/debug'");
-		break;
-	case EACCES: {
-		const char *mountpoint = debugfs_mountpoint;
-
-		if (!access(debugfs_mountpoint, R_OK) && strncmp(filename, "tracing/", 8) == 0) {
-			const char *tracefs_mntpoint = tracefs_find_mountpoint();
-
-			if (tracefs_mntpoint)
-				mountpoint = tracefs_mntpoint;
-		}
-
-		snprintf(buf, size,
-			 "Error:\tNo permissions to read %s/%s\n"
-			 "Hint:\tTry 'sudo mount -o remount,mode=755 %s'\n",
-			 debugfs_mountpoint, filename, mountpoint);
-	}
-		break;
-	default:
-		snprintf(buf, size, "%s", strerror_r(err, sbuf, sizeof(sbuf)));
-		break;
-	}
-
-	return 0;
-}
-
-int debugfs__strerror_open_tp(int err, char *buf, size_t size, const char *sys, const char *name)
-{
-	char path[PATH_MAX];
-
-	snprintf(path, PATH_MAX, "tracing/events/%s/%s", sys, name ?: "*");
-
-	return debugfs__strerror_open(err, buf, size, path);
-}
diff --git a/tools/lib/api/fs/tracing_path.c b/tools/lib/api/fs/tracing_path.c
index 1fd6e1f..3b3e4f5 100644
--- a/tools/lib/api/fs/tracing_path.c
+++ b/tools/lib/api/fs/tracing_path.c
@@ -5,6 +5,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <errno.h>
+#include <unistd.h>
 #include "debugfs.h"
 #include "tracefs.h"
 
@@ -81,3 +83,55 @@ void put_tracing_file(char *file)
 {
 	free(file);
 }
+
+static int strerror_open(int err, char *buf, size_t size, const char *filename)
+{
+	char sbuf[128];
+
+	switch (err) {
+	case ENOENT:
+		if (debugfs_configured()) {
+			snprintf(buf, size,
+				 "Error:\tFile %s/%s not found.\n"
+				 "Hint:\tPerhaps this kernel misses some CONFIG_ setting to enable this feature?.\n",
+				 debugfs_mountpoint, filename);
+			break;
+		}
+		snprintf(buf, size, "%s",
+			 "Error:\tUnable to find debugfs\n"
+			 "Hint:\tWas your kernel compiled with debugfs support?\n"
+			 "Hint:\tIs the debugfs filesystem mounted?\n"
+			 "Hint:\tTry 'sudo mount -t debugfs nodev /sys/kernel/debug'");
+		break;
+	case EACCES: {
+		const char *mountpoint = debugfs_mountpoint;
+
+		if (!access(debugfs_mountpoint, R_OK) && strncmp(filename, "tracing/", 8) == 0) {
+			const char *tracefs_mntpoint = tracefs_find_mountpoint();
+
+			if (tracefs_mntpoint)
+				mountpoint = tracefs_mntpoint;
+		}
+
+		snprintf(buf, size,
+			 "Error:\tNo permissions to read %s/%s\n"
+			 "Hint:\tTry 'sudo mount -o remount,mode=755 %s'\n",
+			 debugfs_mountpoint, filename, mountpoint);
+	}
+		break;
+	default:
+		snprintf(buf, size, "%s", strerror_r(err, sbuf, sizeof(sbuf)));
+		break;
+	}
+
+	return 0;
+}
+
+int tracing_path__strerror_open_tp(int err, char *buf, size_t size, const char *sys, const char *name)
+{
+	char path[PATH_MAX];
+
+	snprintf(path, PATH_MAX, "tracing/events/%s/%s", sys, name ?: "*");
+
+	return strerror_open(err, buf, size, path);
+}
diff --git a/tools/lib/api/fs/tracing_path.h b/tools/lib/api/fs/tracing_path.h
index b132dc5..3f233ac 100644
--- a/tools/lib/api/fs/tracing_path.h
+++ b/tools/lib/api/fs/tracing_path.h
@@ -1,6 +1,8 @@
 #ifndef __API_FS_TRACING_PATH_H
 #define __API_FS_TRACING_PATH_H
 
+#include <linux/types.h>
+
 extern char tracing_path[];
 extern char tracing_events_path[];
 
@@ -10,4 +12,5 @@ const char *tracing_path_mount(void);
 char *get_tracing_file(const char *name);
 void put_tracing_file(char *file);
 
+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 */
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 4e3abba..2156532 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -17,6 +17,7 @@
  */
 
 #include <traceevent/event-parse.h>
+#include <api/fs/tracing_path.h>
 #include "builtin.h"
 #include "util/color.h"
 #include "util/debug.h"
@@ -2686,11 +2687,11 @@ out_delete_evlist:
 	char errbuf[BUFSIZ];
 
 out_error_sched_stat_runtime:
-	debugfs__strerror_open_tp(errno, errbuf, sizeof(errbuf), "sched", "sched_stat_runtime");
+	tracing_path__strerror_open_tp(errno, errbuf, sizeof(errbuf), "sched", "sched_stat_runtime");
 	goto out_error;
 
 out_error_raw_syscalls:
-	debugfs__strerror_open_tp(errno, errbuf, sizeof(errbuf), "raw_syscalls", "sys_(enter|exit)");
+	tracing_path__strerror_open_tp(errno, errbuf, sizeof(errbuf), "raw_syscalls", "sys_(enter|exit)");
 	goto out_error;
 
 out_error_mmap:

  parent reply	other threads:[~2015-09-08 14:34 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-02  7:56 [PATCH 00/15] perf tools: Cleanup filesystem api Jiri Olsa
2015-09-02  7:56 ` [PATCH 01/15] perf tools: Fix parse_events_add_pmu caller Jiri Olsa
2015-09-02 13:00   ` Arnaldo Carvalho de Melo
2015-09-02 13:34     ` Jiri Olsa
2015-09-05 14:00   ` [tip:perf/urgent] " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 02/15] perf tools: Remove mountpoint arg from perf_debugfs_mount Jiri Olsa
2015-09-08 14:32   ` [tip:perf/core] " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 03/15] perf tools: Move tracing_path stuff under same namespace Jiri Olsa
2015-09-08 14:33   ` [tip:perf/core] " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 04/15] perf tools: Move tracing_path interface into api/fs/tracing_path.c Jiri Olsa
2015-09-04 11:35   ` Matt Fleming
2015-09-04 13:28     ` Raphaël Beamonte
2015-09-08 14:33   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 05/15] tools lib api: Move debugfs__strerror_open into tracing_path.c object Jiri Olsa
2015-09-02 13:12   ` Arnaldo Carvalho de Melo
2015-09-04 11:36   ` Matt Fleming
2015-09-04 13:41   ` Raphaël Beamonte
2015-09-04 13:48     ` Jiri Olsa
2015-09-04 13:51       ` Raphaël Beamonte
2015-09-08 14:33   ` tip-bot for Jiri Olsa [this message]
2015-09-02  7:56 ` [PATCH 06/15] tools lib api: Make tracing_path_strerror_open message generic Jiri Olsa
2015-09-02 13:18   ` Arnaldo Carvalho de Melo
2015-09-02 13:44     ` Jiri Olsa
2015-09-02 14:16       ` Arnaldo Carvalho de Melo
2015-09-15  6:59   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 07/15] tools lib api: Add STR and PATH_MAX macros to fs object Jiri Olsa
2015-09-08 14:34   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 08/15] tools lib api: Move SYSFS_MAGIC PROC_SUPER_MAGIC into fs.c Jiri Olsa
2015-09-08 14:34   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 09/15] tools lib api: Add debugfs into fs.c object Jiri Olsa
2015-09-08 14:34   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 10/15] tools lib api: Add tracefs " Jiri Olsa
2015-09-08 14:35   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 11/15] tools lib api: Add mount support for fs Jiri Olsa
2015-09-04 14:14   ` Raphaël Beamonte
2015-09-04 14:20     ` Steven Rostedt
2015-09-04 14:26     ` Jiri Olsa
2015-09-04 14:57       ` Steven Rostedt
2015-09-04 15:00         ` Steven Rostedt
2015-09-04 15:12           ` Raphaël Beamonte
2015-09-08 14:35   ` [tip:perf/core] tools lib api fs: Add FSTYPE__mount() method tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 12/15] tools lib api: Add configured support for fs Jiri Olsa
2015-09-02 13:39   ` Arnaldo Carvalho de Melo
2015-09-02 13:41     ` Arnaldo Carvalho de Melo
2015-09-02 13:46     ` Jiri Olsa
2015-09-02 14:17       ` Arnaldo Carvalho de Melo
2015-09-02 16:52         ` Arnaldo Carvalho de Melo
2015-09-04  7:08           ` Jiri Olsa
2015-09-04 16:42             ` Arnaldo Carvalho de Melo
2015-09-04 17:45               ` Jiri Olsa
2015-09-08 14:35   ` [tip:perf/core] tools lib api fs: Add FSTYPE__configured() method tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 13/15] tools lib api: Replace debugfs/tracefs objects interface with fs.c Jiri Olsa
2015-09-15  6:59   ` [tip:perf/core] tools lib api fs: Replace debugfs/ tracefs " tip-bot for Jiri Olsa
2015-09-02  7:56 ` [PATCH 14/15] tools lib api: Remove debugfs, tracefs and findfs objects Jiri Olsa
2015-09-15  6:59   ` [tip:perf/core] tools lib api fs: " tip-bot for Jiri Olsa
2015-09-22  0:20     ` Vinson Lee
2015-09-22 13:53       ` Arnaldo Carvalho de Melo
2015-09-22 21:29         ` Vinson Lee
2015-09-23  8:23       ` Matt Fleming
2015-09-23  8:39         ` Jiri Olsa
2015-09-23 10:08           ` Matt Fleming
2015-09-24 15:05             ` Michael Petlan
2015-10-07 20:10               ` Matt Fleming
2015-10-13 19:18                 ` Arnaldo Carvalho de Melo
2015-09-23 13:44           ` Arnaldo Carvalho de Melo
2015-09-23 13:50             ` Jiri Olsa
2015-09-23 13:54               ` Arnaldo Carvalho de Melo
2015-09-24 12:15             ` Matt Fleming
2015-09-24 14:29               ` Arnaldo Carvalho de Melo
2015-09-02  7:56 ` [PATCH 15/15] perf tools: Switch to tracing_path interface on appropriate places Jiri Olsa
2015-09-15  7:00   ` [tip:perf/core] " tip-bot for Jiri Olsa
2015-09-02  8:01 ` [PATCH 00/15] perf tools: Cleanup filesystem api Jiri Olsa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=tip-988bdb319246dea977a375beee39a5452e99b3ef@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=dsahern@gmail.com \
    --cc=hpa@zytor.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=matt.fleming@intel.com \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=raphael.beamonte@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.