Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1
From: Alan Stern (stern_at_rowland.harvard.edu)
Date: 12/11/03
- Previous message: Nick Piggin: "Re: [CFT][RFC] HT scheduler"
- In reply to: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Next in thread: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Reply: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Reply: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 11 Dec 2003 10:19:51 -0500 (EST) To: Duncan Sands <baldrick@free.fr>
On Thu, 11 Dec 2003, Duncan Sands wrote:
> On Wednesday 10 December 2003 19:19, Alan Stern wrote:
> >
> > I don't understand the problem. What's wrong with dropping dev->serialize
> > before calling usb_reset_device() or usb_set_configuration() and then
> > reacquiring it afterward?
>
> The problem is that between dropping the lock and usb_set_configuration (or
> whatever) picking it up again, the device may be disconnected, so usb_set_configuration
> needs to handle the case of being called after disconnect (it doesn't seem to
> check for that right now, but I only had a quick look).
It should handle that okay (provided you retain a reference to the
usb_device so that it doesn't get deallocated). Although it wouldn't hurt
to change one of the tests from
if (dev->state != USB_STATE_ADDRESS)
to
if (dev->state > USB_STATE_ADDRESS)
> Also, after usbfs picks up
> the lock again it needs to check for disconnect. None of this is a big deal, but
> it could all be avoided by a simpler change: provide a usb_physical_set_configuration
> (or whatever), which is usb_set_configuration without taking dev->serialize.
I agree that it would ease things to provide entry points for set_config
and reset_device that require the caller to hold dev->serialize already.
The issue you and Oliver noted about holding the bus semaphore will go
away when I finally get around to rewriting usb_reset_device().
Alan Stern
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Previous message: Nick Piggin: "Re: [CFT][RFC] HT scheduler"
- In reply to: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Next in thread: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Reply: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Reply: Duncan Sands: "Re: [linux-usb-devel] Re: [OOPS, usbcore, releaseintf] 2.6.0-test10-mm1"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|