Messages in this thread | | | From | Brian Starkey <> | Subject | Re: [PATCH v3 1/1] drm: msm: Replace dma_map_sg with dma_sync_sg* | Date | Thu, 29 Nov 2018 17:33:03 +0000 |
| |
Hi Christoph,
On Thu, Nov 29, 2018 at 05:57:15PM +0100, Christoph Hellwig wrote: > > As for the buffer sharing: at least for the DMA API side I want to > move the current buffer sharing users away from dma_alloc_coherent > (and coherent dma_alloc_attrs users) and the remapping done in there > required for non-coherent architectures. Instead I'd like to allocate > plain old pages, and then just dma map them for each device separately, > with DMA_ATTR_SKIP_CPU_SYNC passed for all but the first user to map > or last user to unmap. On the iommu side it could probably work > similar. > > I have done some preliminary work on this, and want to get it into this > merge window, but there is a few other bits I need to sort out first. >
This sounds very useful for ion, to avoid CPU cache maintenance as long as the buffer stays in device-land.
One question though: How would you determine "the last user to unmap" to know when to do the final "make visible to CPU" step?
Thanks, -Brian
| |