Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 16941
b: refs/heads/master
c: 03d78d1
h: refs/heads/master
i:
  16939: 3ee000a
v: v3
  • Loading branch information
Tom Zanussi authored and Linus Torvalds committed Jan 9, 2006
1 parent 5bb1094 commit 78950a8
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 08c541a7ade230883c48225f4ea406a0117e7c2f
refs/heads/master: 03d78d11d92b5ed688bb18167b05d9d01493e175
27 changes: 27 additions & 0 deletions trunk/Documentation/filesystems/relayfs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,8 @@ Here's a summary of the API relayfs provides to in-kernel clients:
subbuf_start(buf, subbuf, prev_subbuf, prev_padding)
buf_mapped(buf, filp)
buf_unmapped(buf, filp)
create_buf_file(filename, parent, mode, buf)
remove_buf_file(dentry)

helper functions:

Expand Down Expand Up @@ -343,6 +345,31 @@ completely defined by the caller.
See the relay-apps tarball at http://relayfs.sourceforge.net for
examples of how these non-relay files are meant to be used.

Creating relay files in other filesystems
-----------------------------------------

By default of course, relay_open() creates relay files in the relayfs
filesystem. Because relay_file_operations is exported, however, it's
also possible to create and use relay files in other pseudo-filesytems
such as debugfs.

For this purpose, two callback functions are provided,
create_buf_file() and remove_buf_file(). create_buf_file() is called
once for each per-cpu buffer from relay_open() to allow the client to
create a file to be used to represent the corresponding buffer; if
this callback is not defined, the default implementation will create
and return a file in the relayfs filesystem to represent the buffer.
The callback should return the dentry of the file created to represent
the relay buffer. Note that the parent directory passed to
relay_open() (and passed along to the callback), if specified, must
exist in the same filesystem the new relay file is created in. If
create_buf_file() is defined, remove_buf_file() must also be defined;
it's responsible for deleting the file(s) created in create_buf_file()
and is called during relay_close().

See the 'exported-relayfile' examples in the relay-apps tarball for
examples of creating and using relay files in debugfs.

Misc
----

Expand Down

0 comments on commit 78950a8

Please sign in to comment.