On Tue, Aug 18, 2020 at 05:10:06PM +0100, Christoph Hellwig wrote: > On Tue, Aug 18, 2020 at 11:07:57AM +0100, Will Deacon wrote: > > > > so I'm not sure > > > > that we should be complicating the implementation like this to try to > > > > make it "fast". > > > > > > > I agree that this patch makes the implementation of dma API a bit more > > > but I don't think this does not impact its complication seriously. > > > > It's death by a thousand cuts; this patch further fragments the architecture > > backends and leads to arm64-specific behaviour which consequently won't get > > well tested by anybody else. Now, it might be worth it, but there's not > > enough information here to make that call. > > So it turns out I misread the series (*cough*, crazy long lines, > *cough*), and it does not actually expose a new API as I thought, but > it still makes a total mess of the internal interface. It turns out > that on the for cpu side we already have arch_sync_dma_for_cpu_all, > which should do all that is needed. We could do the equivalent for > the to device side, but only IFF there really is a major benefit for > something that actually is mainstream and matters. > Indeed, arch_sync_dma_for_cpu_all() is used where the new internal API arch_sync_barrier_for_cpu() should be called. I just thought it is a special hook for MIPS. In the next version of the patch series, I should consider using arch_sync_dma_for_cpu_all() and introducting its 'for_dev' version with some performance data to show the benefit of the change.
Thank you for the proposal. KyongHo
_______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu