summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorTom Zanussi <zanussi@us.ibm.com>2006-01-08 01:02:29 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-08 20:13:50 -0800
commite6c08367b8fc6dce6dfd1106f53f6ef28215b313 (patch)
treefa5bb7071fdcd61d3296e5d0be224d864cb1d166 /include/linux
parent03d78d11d92b5ed688bb18167b05d9d01493e175 (diff)
[PATCH] relayfs: add support for global relay buffers
This patch adds the optional is_global outparam to the create_buf_file() callback. This can be used by clients to create a single global relayfs buffer instead of the default per-cpu buffers. This was suggested as being useful for certain debugging applications where it's more convenient to be able to get all the data from a single channel without having to go to the bother of dealing with per-cpu files. Signed-off-by: Tom Zanussi <zanussi@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/relayfs_fs.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/relayfs_fs.h b/include/linux/relayfs_fs.h
index 8c217710585..30f45511b40 100644
--- a/include/linux/relayfs_fs.h
+++ b/include/linux/relayfs_fs.h
@@ -116,6 +116,7 @@ struct rchan_callbacks
* @parent: the parent of the file to create
* @mode: the mode of the file to create
* @buf: the channel buffer
+ * @is_global: outparam - set non-zero if the buffer should be global
*
* Called during relay_open(), once for each per-cpu buffer,
* to allow the client to create a file to be used to
@@ -126,12 +127,17 @@ struct rchan_callbacks
* The callback should return the dentry of the file created
* to represent the relay buffer.
*
+ * Setting the is_global outparam to a non-zero value will
+ * cause relay_open() to create a single global buffer rather
+ * than the default set of per-cpu buffers.
+ *
* See Documentation/filesystems/relayfs.txt for more info.
*/
struct dentry *(*create_buf_file)(const char *filename,
struct dentry *parent,
int mode,
- struct rchan_buf *buf);
+ struct rchan_buf *buf,
+ int *is_global);
/*
* remove_buf_file - remove file representing a relayfs channel buffer