On Fri, Mar 25, 2022 at 11:42 AM Robin Murphy robin.murphy@arm.com wrote:
Note that the current code is already a violation of the DMA API (because the device keeps writing even when it doesn't have ownership), so there's not a very strong argument in that regard.
See my other email. I actually think that the ath9k code is 100% correct, adn it's the dma-mapping code that is in violation of the rules.
And a big part of the problem - I think - is that the rules are so badly documented and not explicitly listed.
I think my list of three different sync cases (not just two! It's not just about whether to sync for the CPU or the device, it's also about what direction the data itself is taking) is correct.
But maybe I'm wrong.
I really want people to think about this, because right now my gut feel is that commit aa6f8dcbab47 was just absolutely incorrect.
Linus