Re: [patch 2.6.24-rc3] usb peripheral controller driver oops avoidance

David Brownell <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Monday 19 November 2007, Alan Stern wrote:
> > --- at91.orig/drivers/usb/gadget/dummy_hcd.c	2007-11-19 12:33:33.000000000 -0800
> > +++ at91/drivers/usb/gadget/dummy_hcd.c	2007-11-19 12:36:05.000000000 -0800
> > @@ -830,6 +830,7 @@ usb_gadget_unregister_driver (struct usb
> >  	spin_unlock_irqrestore (&dum->lock, flags);
> >  
> >  	driver->unbind (&dum->gadget);
> > +	dum->gadget.dev.driver = NULL;
> >  	dum->driver = NULL;
> >  
> >  	device_release_driver (&dum->gadget.dev);
> 
> Arghh, no!  Setting dum->gadget.dev.driver to NULL will break the call 
> to device_release_driver() just below.
> 
> net2280 and dummy_hcd are different from the other device controllers 

Maybe dummy_hcd is, but net2280 doesn't do that.  In fact it
already has that dev.driver = NULL line, which is why it did
not get added.


> in that they register the gadget driver with the driver core.  Hence 
> they don't need this extra action when unregistering a gadget driver.

ISTR trying to make net2280 bind to the driver core way way
way back when, but the driver core complained about it since
it demanded that there be some (pointless singleton) bus
associated with the driver, else it'd hijack me to oopsville.

OK, I'll take the dummy_hcd bit out -- but add a comment to
highlight this unique behavior.

- Dave

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.