On Mon, Oct 22, 2018 at 06:11:04PM +0100, Robin Murphy wrote: >> + if (!dev_is_dma_coherent(dev) && >> + (attrs & DMA_ATTR_SKIP_CPU_SYNC) == 0) > > Nit: other parts of the file are already using the "!(...)" style rather > than "(...) == 0".
Indeed. Probably some kind of copy and past error.. > I had a quick play at moving the cache maintenance here out into the > callers, which comes out arguably looking perhaps a little cleaner (only +1 > source line overall, and actually reduces text size by 32 bytes for my > build), but sadly I can't really see any way of doing the equivalent for > map/unmap short of duplicating the whole 3-line arch_sync_*() block, which > just makes for a different readability problem. As you mentioned on patch > #7, I guess this really is just one of those things which has no nice > solution, so cosmetics aside, It looks pretty ok, but given that I want to send this version to Linus for the merge window I don't really dare to touch it. The master plan for 4.21 is to actually merge swiotlb into dma-direct and to allow direct calls to dma-direct given how expensive indirect calls are with spectre, and dma mappings show up badly in various benchmarks. I'll see if I can do that in a way following what you've done. _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu