Messages in this thread | | | Date | Sat, 30 Jun 2012 13:52:40 +0100 | From | Alan Cox <> | Subject | Re: AF_BUS socket address family |
| |
On Fri, 29 Jun 2012 20:13:50 -0400 Benjamin LaHaise <bcrl@kvack.org> wrote:
> On Sat, Jun 30, 2012 at 12:42:30AM +0100, Vincent Sanders wrote: > > The current users are suffering from the issues outlined in my > > introductory mail all the time. These issues are caused by emulating an > > IPC system over AF_UNIX in userspace. > > Nothing in your introductory statements indicate how your requirements > can't be met through a hybrid socket + shared memory solution. The IPC > facilities of the kernel are already quite rich, and sufficient for > building many kinds of complex systems. What's so different about DBus' > requirements?
dbus wants to - multicast - pass file handles - never lose an event - be fast - have a security model
The security model makes a shared memory hack impractical, the file handle passing means at least some of it needs to be AF_UNIX. The event loss handling/speed argue for putting it in kernel.
I'm not convinced AF_BUS entirely sorts this either. In particular the failure case dbus currently has to handle for not losing events allows it to identify who in a "group" has jammed the bus by not listening (eg by locking up). This information appears to be lost in the AF_BUS case and that's slightly catastrophic for error recovery.
Alan
| |