On Tue, May 05, 2009 at 11:45:13PM -0700, Greg KH wrote: > On Wed, May 06, 2009 at 08:35:52AM +0200, Eric Valette wrote: > > FUJITA Tomonori wrote: > > > CC'ed linux-usb, > > > > > > The ehci_hcd driver uses buffers on the stack for DMA? > > > > > > On Sun, 03 May 2009 17:36:24 +0200 > > > Eric Valette <eric.valette@xxxxxxx> wrote: > > > > > >> ------------[ cut here ]------------ > > >> > > >> WARNING: at /usr/src/linux-2.6.22.9/lib/dma-debug.c:609 > > > > > > Hmm, the kernel version is wired. lib/dma-debug.c was added in > > > 2.6.30-rc. > > > > No that's the file path. I use ketchup to apply patches... > > > > > > > >> check_for_stack+0x6b/0x8b() > > >> Hardware name: P5W DH Deluxe > > >> > > >> ehci_hcd 0000:00:1d.7: DMA-API: device driver maps memory fromstack > > >> [addr=ffff88007fa79968] > > >> Modules linked in: > > >> > > >> Pid: 297, comm: khubd Not tainted 2.6.30-rc4-git1 #32 > > > > Here is the real version. > > The problem is in the rtl8187 driver. > > They are calling usb_control_msg and passing a pointer to a buffer on > the stack. See drivers/net/wireless/rtl818x/rtl8187.h for where the > problem happens in numerous places. > > Also it looks like rtl8225_write_8051() is incorrect. You are passing a > pointer to a variable that was passed as an argument. I don't know > where that is supposed to be on, somewhere on the stack I guess. > > Larry, care to fix this up? I just sent '[RFT] rtl8187: use DMA-aware buffers with usb_control_msg' as a parallel reply to this message. It is pretty ugly w.r.t. kmalloc failures, but it might be worth testing just to see if it helps the problem at hand...? John -- John W. Linville Someday the world will need a hero, and you linville@xxxxxxxxxxxxx might be all we have. Be ready. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html