[PATCH 16/21] tools lib api fs: Add {tracefs,debugfs}_configured() functions

From: Arnaldo Carvalho de Melo
Date: Wed Feb 11 2015 - 16:10:13 EST


From: "Steven Rostedt (Red Hat)" <rostedt@xxxxxxxxxxx>

Add tracefs_configured() to return true if tracefs is configured in the
kernel (succeeds to find tracefs), and debugfs_configured() if debugfs
is configured in the kernel (succeeds to find debugfs).

Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Link: http://lkml.kernel.org/r/20150202193553.190606690@xxxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/lib/api/fs/debugfs.c | 8 ++++++++
tools/lib/api/fs/debugfs.h | 1 +
tools/lib/api/fs/findfs.h | 2 ++
tools/lib/api/fs/tracefs.c | 8 ++++++++
tools/lib/api/fs/tracefs.h | 1 +
5 files changed, 20 insertions(+)

diff --git a/tools/lib/api/fs/debugfs.c b/tools/lib/api/fs/debugfs.c
index 07d74b03d828..8305b3e9d48e 100644
--- a/tools/lib/api/fs/debugfs.c
+++ b/tools/lib/api/fs/debugfs.c
@@ -3,8 +3,11 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <stdbool.h>
#include <sys/vfs.h>
+#include <sys/types.h>
+#include <sys/stat.h>
#include <sys/mount.h>
#include <linux/kernel.h>

@@ -24,6 +27,11 @@ static const char * const debugfs_known_mountpoints[] = {

static bool debugfs_found;

+bool debugfs_configured(void)
+{
+ return debugfs_find_mountpoint() != NULL;
+}
+
/* find the path to the mounted debugfs */
const char *debugfs_find_mountpoint(void)
{
diff --git a/tools/lib/api/fs/debugfs.h b/tools/lib/api/fs/debugfs.h
index 1074ac81358e..455023698d2b 100644
--- a/tools/lib/api/fs/debugfs.h
+++ b/tools/lib/api/fs/debugfs.h
@@ -11,6 +11,7 @@
#define PERF_DEBUGFS_ENVIRONMENT "PERF_DEBUGFS_DIR"
#endif

+bool debugfs_configured(void);
const char *debugfs_find_mountpoint(void);
char *debugfs_mount(const char *mountpoint);

diff --git a/tools/lib/api/fs/findfs.h b/tools/lib/api/fs/findfs.h
index 9e7d876791e1..b6f5d05acc42 100644
--- a/tools/lib/api/fs/findfs.h
+++ b/tools/lib/api/fs/findfs.h
@@ -1,6 +1,8 @@
#ifndef __API_FINDFS_H__
#define __API_FINDFS_H__

+#include <stdbool.h>
+
#define _STR(x) #x
#define STR(x) _STR(x)

diff --git a/tools/lib/api/fs/tracefs.c b/tools/lib/api/fs/tracefs.c
index ef40d15821e9..e4aa9688b71e 100644
--- a/tools/lib/api/fs/tracefs.c
+++ b/tools/lib/api/fs/tracefs.c
@@ -2,8 +2,11 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <stdbool.h>
#include <sys/vfs.h>
+#include <sys/types.h>
+#include <sys/stat.h>
#include <sys/mount.h>
#include <linux/kernel.h>

@@ -25,6 +28,11 @@ static const char * const tracefs_known_mountpoints[] = {

static bool tracefs_found;

+bool tracefs_configured(void)
+{
+ return tracefs_find_mountpoint() != NULL;
+}
+
/* find the path to the mounted tracefs */
const char *tracefs_find_mountpoint(void)
{
diff --git a/tools/lib/api/fs/tracefs.h b/tools/lib/api/fs/tracefs.h
index e6f7f5183c87..da780ac49acb 100644
--- a/tools/lib/api/fs/tracefs.h
+++ b/tools/lib/api/fs/tracefs.h
@@ -11,6 +11,7 @@
#define PERF_TRACEFS_ENVIRONMENT "PERF_TRACEFS_DIR"
#endif

+bool tracefs_configured(void);
const char *tracefs_find_mountpoint(void);
int tracefs_valid_mountpoint(const char *debugfs);
char *tracefs_mount(const char *mountpoint);
--
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/