On Wed, Apr 15, 2015 at 03:28:58PM -0700, Andy Lutomirski wrote: > On Wed, Apr 15, 2015 at 3:18 PM, Al Viro <v...@zeniv.linux.org.uk> wrote: > > On Wed, Apr 15, 2015 at 03:11:17PM -0700, Andy Lutomirski wrote: > > > >> This is functionally identical to passing AF_UNIX socket fds over > >> SCM_RIGHTS, but I want something much lighter weight. > > > > Most of the weight in SCM_RIGHTS comes from the fact that you can > > pass AF_UNIX sockets over it, which requires a garbage collector. > > Exclude that and suddenly it becomes very cheap... > > I should have been more specific. I don't mean the performance of > SCM_RIGHTS itself; I mean the memory overhead of keeping tons of fds > around, each with their socket data structures and buffers. > > I think that dbus could be quite efficiently implemented with a > userspace daemon that just introduces peers to each other, but the fd > explosion could be rather bad for some use cases. > > I'll be the first to admit that I don't have a clean API in mind. > There was a lightweight fd proposal way back when, but it never went > anywhere, and it might not be suitable anyway.
Wait, are you talking about the overhead of descriptors used for capability tokens (essentially zero - one system-wide struct file per capability + one pointer in descriptor table of anyone who holds it + two bits in bitmaps in the sam descriptor tables) or about the overhead of descriptors used to send/receive those over? The latter don't have to be sockets at all - they could bloody well be files on some ipcfs, or character device, or FIFOs, etc. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/