Re: [PATCH] drm/xen-front: Make shmem backed display buffer coherent

From: Christoph Hellwig
Date: Thu Dec 20 2018 - 13:38:56 EST


On Thu, Dec 20, 2018 at 07:35:15PM +0100, Daniel Vetter wrote:
> > Err, with streaming DMA buffer sharing is trivial. The coherent DMA
> > allocator is what causes all kinds of horrible hacks that can't actually
> > work on various platforms.
>
> Hm, I thought the streaming dma api is the one that causes bounce
> buffers and all that fun. If you're unlucky at least.

Yes it may. But even if that happens everything will actually work,
just slower. While the dma coherent API is simply broken.

But if you don't want bounce buffering you need to use the dma
noncoherent allocator as proposed here:

https://lists.linuxfoundation.org/pipermail/iommu/2018-December/031982.html

which combines allocating memory that doesn't need to be bounce
buffered with a sharing scheme that can actually work.