Re: [PATCH v2] usb/hcd: Send a uevent signaling that the host controller has died

From: Raul Rangel
Date: Wed Apr 17 2019 - 14:32:01 EST


On Wed, Apr 17, 2019 at 02:24:06PM -0400, Alan Stern wrote:
> On Wed, 17 Apr 2019, Raul Rangel wrote:
>
> > > > Also where would be a good place to document this?
> > >
> > > Documentation/ABI/ is a good start.
> > I'll add something to Documentation/ABI/testing/xhci-uevent
>
> Your patch will apply to all host controllers, not just xhci. The
> documentation filename should reflect this. Perhaps "usb-uevent"?
I realized that after I had sent the email :) I'll do usb-uevent.
>
> > > Why do you need to lock something that is "dead"? And why is the idr
> > > lock the correct one here?
> > We need to ensure that root_hub is not null. Though I'm not sure the
> > lock is entirely necessary in this case. usb_remove_hcd stops the work
> > item before it sets the rhdev to null. The reason I picked
> > usb_bus_idr_lock was because it's the same lock that usb_remove_hcd uses
> > when setting rhdev = NULL.
> >
> > Alan, what do you think? Should I remove the lock?
>
> You're both right; the lock isn't needed because the work is stopped
> before the root hub gets removed. Acquiring the lock doesn't do any
> harm, but it isn't needed so you probably should remove it. In fact,
> you don't even need to test for whether hcd->self.root_hub is
> non-NULL.
Sounds good, I'll clean it up.
>
> Alan Stern
>
>