Németh Márton wrote: > Jean-Francois Moine wrote: >> On Fri, 20 Nov 2009 08:14:10 +0100 >> Németh Márton <nm127@xxxxxxxxxxx> wrote: >>> Unfortunately I still get the following error when I start streaming, >>> stop streaming or unplug the device: >>> >>> [ 6876.780726] uhci_hcd 0000:00:10.1: dma_pool_free buffer-32, >>> de0ad168/1e0ad168 (bad dma) >> As there is no 'break' in gspca_input_create_urb(), many URBs are >> created. > > I added 'break' in the loop, which makes no real difference because > my device have only one interrupt in endpoint. The error message is > printed when the usb_buffer_free() is called in gspca_input_destroy_urb(): > > [ 6362.113264] gspca_input: Freeing buffer > [ 6362.113284] uhci_hcd 0000:00:1d.1: dma_pool_free buffer-32, f5ada948/35ada948 (bad dma) > [ 6362.113296] gspca_input: Freeing URB The problem was that the URB buffer was allocated with kmalloc() and was freed with usb_buffer_free(). The right pair is usb_buffer_alloc() and usb_buffer_free(). Regards, Márton Németh -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html