dma-buf non-coherent mmap

Daniel Vetter daniel at ffwll.ch
Fri Nov 1 00:00:51 CET 2013


On Thu, Oct 31, 2013 at 10:07:25PM +0100, Thomas Hellstrom wrote:
> On 10/31/2013 09:48 PM, Dave Airlie wrote:
> >On Fri, Nov 1, 2013 at 6:40 AM, Thomas Hellstrom <thellstrom at vmware.com> wrote:
> >>Well, I'd be happy to avoid mmap, but then what does optional mean in this
> >>context?
> >>That all generic user-space apps *must* implement a workaround if mmap isn't
> >>implemented?
> >>
> >>It's unfortunate a bit like implicit synchronization mentioned in section 3)
> >>in Direct Userspace Access/mmap Support
> >>in the kernel dma-buf doc: It should be avoided, otherwise it might be
> >>relied upon by userspace and exporters
> >>not implementing it will suffer.
> >>
> >>In reality, people will start using mmap() and won't care to implement
> >>workarounds if it's not supported, and drivers like
> >>vmwgfx and non-coherent architectures will suffer.
> >>
> >>I haven't looked closely at how DRI3 or Wayland/weston use or will use
> >>dma-buf, but if they rely on mmap, we're sort
> >>of lost. MIR uses the following scheme:
> >DRI3 and wayland won't use dma-buf mmap directly,
> >
> >using dma-buf mmap directly is wrong for anything that shares objects
> >with itself.
> 
> That sounds good to hear. Perhaps we should add that to the dma-buf docs.

Userspace mmap was essentially added as a concession to the android ion
guys since they really, really wanted it. We've tried to tell them that
it's a horrible idea (see all the fun with coherency and syncing), but
they said that they have userspace for it already and so we let it be.

Imo if you're not running Android userspace there's no need for this at
all.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the dri-devel mailing list