On Thu, May 07, 2015 at 05:40:03PM +0100, One Thousand Gnomes wrote: > On Thu, 7 May 2015 15:52:12 +0200 > Daniel Vetter <daniel@xxxxxxxx> wrote: > > > On Thu, May 07, 2015 at 03:22:20PM +0200, Thierry Reding wrote: > > > On Wed, May 06, 2015 at 03:15:32PM +0200, Daniel Vetter wrote: > > > > Yes the idea would be a special-purpose allocater thing like ion. Might > > > > even want that to be a syscall to do it properly. > > > > > > Would you care to elaborate why a syscall would be more proper? Not that > > > I'm objecting to it, just for my education. > > > > It seems to be the theme with someone proposing a global /dev node for a > > few system wide ioctls, then reviewers ask to make a proper ioctl out of > > it. E.g. kdbus, but I have vague memory of this happening a lot. > > kdbus is not necessarily an advert for how to do anything 8) > > If it can be user allocated then it really ought to be one or more device > nodes IMHO, because you want the resource to be passable between users, > you need a handle to it and you want it to go away nicely on last close. > In the cases where the CPU is allowed to or expected to have write only > access you also might want an mmap of it. dma-buf user handles are fds, which means anything allocated can be passed around nicely already. The question really is whether we'll have one ioctl on top of a special dev node or a syscall. I thought that in these cases where the dev node is only ever used to allocate the real thing, a syscall is the preferred way to go. > I guess the same kind of logic as with GEM (except preferably without > the DoS security holes) applies as to why its useful to have handles to > the DMA buffers. We have handles (well file descriptors) to dma-bufs already, I'm a bit confused what you mean? -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html