diff options
| author | Jiri Olsa <jolsa@kernel.org> | 2015-09-02 03:56:42 -0400 |
|---|---|---|
| committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-09-04 11:01:01 -0400 |
| commit | 709adcb33928b5bf965587b23ed6544e964584a3 (patch) | |
| tree | 4c194e58157013953e55d21c38963873f454cfe0 /tools/lib/api | |
| parent | 73ca85ad364769ffa312b1d892816d8fa23a02bf (diff) | |
tools lib api fs: Add FSTYPE__configured() method
Add FSTYPE__configured() (where FSTYPE is one of sysfs, procfs, debugfs,
tracefs) interface that returns bool state of the filesystem mount:
true - mounted, false - not mounted
It will not try to mount the filesystem.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Raphael Beamonte <raphael.beamonte@gmail.com>
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: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1441180605-24737-13-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/lib/api')
| -rw-r--r-- | tools/lib/api/fs/fs.c | 23 | ||||
| -rw-r--r-- | tools/lib/api/fs/fs.h | 5 |
2 files changed, 18 insertions, 10 deletions
diff --git a/tools/lib/api/fs/fs.c b/tools/lib/api/fs/fs.c index bc93baf33fff..8afe08a99bc6 100644 --- a/tools/lib/api/fs/fs.c +++ b/tools/lib/api/fs/fs.c | |||
| @@ -244,15 +244,20 @@ static const char *fs__mount(int idx) | |||
| 244 | return fs__check_mounts(fs) ? fs->path : NULL; | 244 | return fs__check_mounts(fs) ? fs->path : NULL; |
| 245 | } | 245 | } |
| 246 | 246 | ||
| 247 | #define FS(name, idx) \ | 247 | #define FS(name, idx) \ |
| 248 | const char *name##__mountpoint(void) \ | 248 | const char *name##__mountpoint(void) \ |
| 249 | { \ | 249 | { \ |
| 250 | return fs__mountpoint(idx); \ | 250 | return fs__mountpoint(idx); \ |
| 251 | } \ | 251 | } \ |
| 252 | \ | 252 | \ |
| 253 | const char *name##__mount(void) \ | 253 | const char *name##__mount(void) \ |
| 254 | { \ | 254 | { \ |
| 255 | return fs__mount(idx); \ | 255 | return fs__mount(idx); \ |
| 256 | } \ | ||
| 257 | \ | ||
| 258 | bool name##__configured(void) \ | ||
| 259 | { \ | ||
| 260 | return name##__mountpoint() != NULL; \ | ||
| 256 | } | 261 | } |
| 257 | 262 | ||
| 258 | FS(sysfs, FS__SYSFS); | 263 | FS(sysfs, FS__SYSFS); |
diff --git a/tools/lib/api/fs/fs.h b/tools/lib/api/fs/fs.h index a9627ea5e6ae..f654bcb99d1e 100644 --- a/tools/lib/api/fs/fs.h +++ b/tools/lib/api/fs/fs.h | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | #ifndef __API_FS__ | 1 | #ifndef __API_FS__ |
| 2 | #define __API_FS__ | 2 | #define __API_FS__ |
| 3 | 3 | ||
| 4 | #include <stdbool.h> | ||
| 5 | |||
| 4 | /* | 6 | /* |
| 5 | * On most systems <limits.h> would have given us this, but not on some systems | 7 | * On most systems <limits.h> would have given us this, but not on some systems |
| 6 | * (e.g. GNU/Hurd). | 8 | * (e.g. GNU/Hurd). |
| @@ -11,7 +13,8 @@ | |||
| 11 | 13 | ||
| 12 | #define FS(name) \ | 14 | #define FS(name) \ |
| 13 | const char *name##__mountpoint(void); \ | 15 | const char *name##__mountpoint(void); \ |
| 14 | const char *name##__mount(void); | 16 | const char *name##__mount(void); \ |
| 17 | bool name##__configured(void); \ | ||
| 15 | 18 | ||
| 16 | FS(sysfs) | 19 | FS(sysfs) |
| 17 | FS(procfs) | 20 | FS(procfs) |
