Messages in this thread | | | Date | Wed, 25 Apr 2018 00:09:05 -0700 | From | Christoph Hellwig <> | Subject | Re: [Linaro-mm-sig] [PATCH 4/8] dma-buf: add peer2peer flag |
| |
On Wed, Apr 25, 2018 at 09:02:17AM +0200, Daniel Vetter wrote: > Can we please not nack everything right away? Doesn't really motivate > me to show you all the various things we're doing in gpu to make the > dma layer work for us. That kind of noodling around in lower levels to > get them to do what we want is absolutely par-for-course for gpu > drivers. If you just nack everything I point you at for illustrative > purposes, then I can't show you stuff anymore.
No, it's not. No driver (and that includes the magic GPUs) has any business messing with dma ops directly.
A GPU driver imght have a very valid reason to disable the IOMMU, but the code to do so needs to be at least in the arch code, maybe in the dma-mapping/iommu code, not in the driver.
As a first step to get the discussion started we'll simply need to move the code Thierry wrote into a helper in arch/arm and that alone would be a massive improvement. I'm not even talking about minor details like actually using arm_get_dma_map_ops instead of duplicating it.
And doing this basic trivial work really helps to get this whole mess under control.
| |