On Thu, Aug 14, 2003 at 01:21:22PM -0700, David Brownell wrote:
> Alan Stern wrote:
> 
> >>>I foresee races between set_bConfigurationValue() and disconnect.  But 
> >>>that's not something I can fix in two minutes.
> >>
> >>Could you elaborate?  I don't think I added any new races there.
> >
> >
> >Maybe not, but perhaps you exacerbated an existing race.  I'm not sure; I 
> >haven't examined the code interactions in detail.
> >
> >This is a problem generic to sysfs attribute files:  They can persist and
> >be writeable long after you want them to go away.  If a user process has
> >an attribute file open, then calling device_remove_file() won't prevent
> >the show() and store() routines from being invoked.  (I have a patch for
> >sysfs that would prevent that, but nobody seems interested in it.)  If
> >someone tries to write the config value for a usb_device after it has
> >disconnected and much of its state has gone away, what will happen?
> 
> Both usb_set_configuration() and usb_disconnect() are going to want to
> call usb_disable_device() to shut down all pending operations before
> they do the next step.

And that will fail if the device is not really there, right?

> I suppose usb_disconnect() might want to consider grabbing dev->serialize,
> and usb_set_configuration() might want an _explicit_ check for whether the
> device is actually connected before it proceeds...

If the usb_disable_device() call does not fail for a device that is
gone, that check would be a good thing to have.


thanks,

greg k-h


-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to