On Wed, 28 Apr 2004 12:27:34 -0400 (EDT) Alan Stern <[EMAIL PROTECTED]> wrote:
> > --- > > Issue a READ_TOC CBW to bulk out pipe > > > > Issue a GET_DESCRIPTOR to pipe 0 (a different thread does this, > > presumably) > > > > Try to read data for READ_TOC from bulk in pipe -- pipe stalls because > > there's no CD in the drive and therefore no TOC data > > > > Try to issue a CLEAR_FEATURE to clear the stall to pipe 0 -- this fails > > because there's already an URB in progress to pipe 0 > > > > USB driver then tries to read the CSW (never mind that the stall wasn't > > cleared)--this also fails because pipe is stalled > > > > Try to issue a CLEAR_FEATURE again, with similar results > Under Linux 2.4, one way to handle this is by preventing the other thread > from issuing the GET_DESCRIPTOR to pipe 0 while the CDROM drive is busy. > You could find out what that other thread is and suspend or kill it. > > Under Linux 2.6 there shouldn't be any problem. Alan, I'm not up to speed. What code, exactly, does accomplish the necessary serialization in 2.6? Can you give me a function name and a lock or counter name? Thanks, -- Pete ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
