> It's very likely that the type of the controller is not deciding the issue.
> The question is rather how the architectures allocate the kernel stack.
> Which architectures are hit ?

If you are doing DMA off the stack your code will not work on anything but
x86 and maybe alpha in some cases.

> Completely fixing this bug requires a change to a lot of api functions.
> Have a look at, eg. kaweth.c/kaweth_start_xmit(). It can deadlock on
> smp.
> There are a lot of drivers doing dma on the stack. I know it's bad,
> but sometimes a compromise must be reached.

I disagree, a great deal in fact. Anywhere the object is on the stack you
could kmalloc or better yet pci_alloc_* it. Yes its a bit slower and
eventually you want to propogate sanity outwards but there isn't any excuse
for dumping stuff on the stack instead of kmalloc/kfree

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to