On Mon, 12 Apr 2010, Andi Kleen wrote:
On Mon, Apr 12, 2010 at 12:17:22PM -0400, Alan Stern wrote:
On Mon, 12 Apr 2010, Andi Kleen wrote:
Well, the sound driver itself doesn't care for any of those things, just like any other USB driver doesn't. The USB core itself of the host controller driver should do, and as far as I can see, it does that, yes.
Hmm, still things must go wrong somewhere. Perhaps need some instrumentation to see if all the transfer buffers really hit the PCI mapping functions.
Such a test has already been carried out earlier in this thread:
http://marc.info/?l=linux-usb&m=127074587029353&w=2 http://marc.info/?l=linux-usb&m=127076841801051&w=2 http://marc.info/?l=linux-usb&m=127082890510415&w=2
Hmm, thanks. But things must still go wrong somewhere, otherwise the GFP_DMA32 wouldn't be needed?
Indeed, something must go wrong somewhere. Since Daniel's patch fixed the problem by changing the buffer from a streaming mapping to a coherent mapping, it's logical to assume that bad DMA addresses have something to do with it. But we don't really know for certain.
Alan Stern