Re: [PATCH 5/6] USB: make hub driver's release more robust

Alan Stern <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Tue, 10 Apr 2007, David Brownell wrote:

> On Monday 09 April 2007 7:50 am, Alan Stern wrote:
> 
> >  void usb_kick_khubd(struct usb_device *hdev)
> >  {
> > +	/* FIXME: What if hdev isn't bound to the hub driver? */
> 
> We should just disallow that.  There's no reason for us to risk
> the integrity of USB framework by letting any other driver manage
> all the essential transitions that the hub driver handles...

I agree that no other driver should manage the essential features that the 
hub driver handles.  However, at the moment we can't easily prevent the 
hub driver from being unbound (leaving _no_ driver in control of the root 
hub).

Fortunately the problem mentioned in the comment should be fixable without
too much trouble.  That routine gets called from only one place:
usb_hc_died().  Instead we can arrange to have the hub status URB complete
with a special error status to indicate a dead root hub.  That would
notify khubd to do the necessary cleanup and would remove the need for
usb_kick_khubd() entirely.

Mainly I added that comment just as a reminder to myself to come back
later and do the real fix.

Alan Stern


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[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.