On 12 April 2010 12:53, Andi Kleen andi@firstfloor.org wrote:
Which is exactly what usb_buffer_alloc() does already. So at least for x86 you say this is the right thing to do? However, we don't necessarily need coherent memory on other platforms, which is why I hessitate to enforce that type of memory for all transfer_buffer allocations.
Yes today it's faster at least.
Probably we should have better interfaces for this, but we don't.
Or just use GFP_KERNEL and pci_map_* later.
The USB core does this already, but at least on Pedro's machine, this seems unsufficient. Unfortunately, I can't reproduce the issue yet, even with more than 4GB of RAM installed.
Then something must be broken in Pedro's system and likely other drivers will also not work. I don't think it should be worked around in the USB layer.
-Andi
I'm not putting into question whether something is broken in my system, but if it is, it must be the ICH9 platform, because I was able to reproduce it in another laptop.
My laptop is a Lenovo T400 and I was able to reproduce it in a Acer Aspire 59xx (I don't remember the exact model, but it is one of the new ones with 15.6 inch - i think they all use the same base). And the common thing between them is the ICH9 platform.
The only which solved this problem was the first patch sent to me by Daniel Mack. I've been using it for days straight and it works fine.
Pedro