Re: USB Mass Storage devices continually reenumerate

Alan Stern <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Tue, 6 Nov 2007, Mike Nuss wrote:

> On 11/6/07, Alan Stern <[email protected]> wrote:
> > On Mon, 5 Nov 2007, Mike Nuss wrote:
> > > Nov  5 14:50:02 usb-storage: Status code -62; transferred 192/65536
> > > Nov  5 14:50:02 usb-storage: -- unknown error
> > > Nov  5 14:50:02 End usb_stor_bulk_transfer_sglist: Wait 10s
> > > Nov  5 14:50:02 hub 1-0:1.0: state 7 ports 2 chg 0000 evt 0004
> > > Nov  5 14:50:02 ohci_hcd 0000:00:13.0: GetStatus roothub.portstatus
> > > [1] = 0x00030101 PESC CSC PPS CCS
> >
> > Aha!  So the controller thinks the device really did signal a
> > disconnect condition (CSC is set).
> 
> Good point. Does that mean the kernel should have previously seen a
> status report with CSC and no CCS? Or if the disconnect condition was
> short enough, would I only see the reconnect status, as above?

CCS always reflects the current status.  If a disconnect occurs and a
reconnect happens very quickly thereafter, the kernel might well miss
the intermediate stage where CCS was clear.

However I hedged my bets: I said "the controller thinks the device 
really did signal a disconnect condition".  That doesn't necessarily 
mean there _actually_ was a disconnect -- perhaps the controller was 
buggy or mistaken.

> (It's
> not clear to me whether the OHCI root hub status is always polled or
> if changes are interrupt-based.)

Sometimes polled, sometimes interrupt-based.  But interrupt latency can 
be high enough that you mustn't depend on seeing short-lived 
intermediate states.

Alan Stern


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
[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.