Thread (33 messages) flat view 33 messages, 6 authors, 2014-12-01

Re: kdbus: add node and filesystem implementation

From: Andy Lutomirski <luto@amacapital.net>
Date: 2014-11-21 16:41:33
Also in: lkml

On Fri, Nov 21, 2014 at 8:35 AM, Andy Lutomirski [off-list ref] wrote:
On Thu, Nov 20, 2014 at 9:02 PM, Greg Kroah-Hartman
[off-list ref] wrote:
quoted
From: Daniel Mack <daniel@zonque.org>

kdbusfs is a filesystem that will expose a fresh kdbus domain context
each time it is mounted. Per mount point, there will be a 'control'
node, which can be used to create buses. fs.c contains the
implementation of that pseudo-fs. Exported inodes of 'file' type have
their i_fop set to either kdbus_handle_control_ops or
kdbus_handle_ep_ops, depending on their type. The actual dispatching
of file operations is done from handle.c

node.c is an implementation of a kdbus object that has an id and
children, organized in an R/B tree. The tree is used by the filesystem
code for lookup and iterator functions, and to deactivate children
once the parent is deactivated. Every inode exported by kdbusfs is
backed by a kdbus_node, hence it is embedded in struct kdbus_ep,
struct kdbus_bus and struct kdbus_domain.

Signed-off-by: Daniel Mack <daniel@zonque.org>
Signed-off-by: David Herrmann <redacted>
Signed-off-by: Djalal Harouni <redacted>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
quoted
+
+static struct file_system_type fs_type = {
+       .name           = KBUILD_MODNAME "fs",
+       .owner          = THIS_MODULE,
+       .mount          = fs_super_mount,
+       .kill_sb        = fs_super_kill,
+};
Does this want something like:

.fs_flags = FS_USERNS_MOUNT

This design may have the annoying property that, if a namespace-based
sandbox wants to use kdbus itself, it will need to proxy anything from
the parent that it wants to use.

Is there a good reason why individual *busses* don't show up in the
filesystem?  If they did, maybe they could be bind-mounted or
otherwise arranged to cross namespace boundaries.
Whoops.  Brainfart there -- busses do show up in the filesystem.  Does
bind-mounting them work?

--Andy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help