On Tue, 1 Jun 2004 11:20:48 -0400 (EDT)
Alan Stern <[EMAIL PROTECTED]> wrote:

> On Tue, 1 Jun 2004, Luca Risolia wrote:
> 
> > It seems usb_unlink_urb(submitted_urb) causes a kernel
> > oops if called after the usbcore completes usb_disconnect(),
> > during fileop->close(), when the device is hardware-disconnected
> > while streaming.
> >                                                                           
> > Below is the oops from the kernel and (part of) the code calling
> > usb_unlink_urb(). The same code used to work on previous versions of the kernel.
> 
> I'm not sure what happened with earlier versions of the kernel, but here
> it looks like you are calling usb_unlink_urb() after your disconnect()
> routine has returned.

Correct.

  By that time the struct usb_device has already been
> deallocated, so it's too late.  You must not unlink the urb during close()  
> if the device has been disconnected; you must unlink it during
> disconnect() instead.
> 
> Actually, when the device is unplugged usbcore will unlink all its URBs 
> automatically.

Since the driver needs to run under linux > 2.4.20, do you
know whether this is the default behaviour with previous
versions of the kernel as well?




-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. 
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to