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
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to