Messages in this thread | | | Date | Fri, 25 Mar 2022 18:42:19 +0000 | Subject | Re: [REGRESSION] Recent swiotlb DMA_FROM_DEVICE fixes break ath9k-based AP | From | Robin Murphy <> |
| |
On 2022-03-25 18:15, Toke Høiland-Jørgensen wrote: > Christoph Hellwig <hch@lst.de> writes: > >> On Thu, Mar 24, 2022 at 07:02:16PM +0100, Halil Pasic wrote: >>>> If >>>> ddbd89deb7d3 alone turns out to work OK then I'd be inclined to try a >>>> partial revert of just that one hunk. >>>> >>> >>> I'm not against being pragmatic and doing the partial revert. But as >>> explained above, I do believe for correctness of swiotlb we ultimately >>> do need that change. So if the revert is the short term solution, >>> what should be our mid-term road-map? >> >> Unless I'm misunderstanding this thread we found the bug in ath9k >> and have a fix for that now? > > According to Maxim's comment on the other subthread, that ath9k patch > wouldn't work on all platforms (and constitutes a bit of a violation of > the DMA API ownership abstraction). So not quite, I think?
Indeed, it would potentially stand to pose the same problem as the SWIOTLB change, but on the scale of individual cache lines touched by ath9k_hw_process_rxdesc_edma() rather than the whole buffer. However, that might represent a less severe impact on a smaller number of users (maybe the MIPS systems? I'm not sure...) so perhaps it's an acceptable tourniquet? 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.
Thanks, Robin.
| |