Hi, On 7/17/07, Soeren Sonnenburg <[EMAIL PROTECTED]> wrote: > > err_free_buffer: > @@ -656,6 +699,7 @@ static void atp_disconnect(struct usb_interface *iface) > > usb_set_intfdata(iface, NULL); > if (dev) { > + cancel_work_sync(&dev->work); > usb_kill_urb(dev->urb); > input_unregister_device(dev->input); > usb_buffer_free(dev->udev, dev->datalen, >
This should go into atp_close() and I think you need to do cancel_work_sync after calling usb_kill_urb() otherwise you risk it being submitted while you gettingto kill the urb. How many boxes did you try this patch on? -- Dmitry ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel