On Fri, Mar 21, 2003 at 01:25:00PM -0700, Pat LaVarre wrote: > > I have snipped part of the log ... > > Re guessing what Windows may be doing that works ... > > Anybody know the bInterfaceClass ...SubClass > ...Protocol involved here? > > Specifically does bInterfaceProtocol here != x06 Scsi?
bInterfaceProtocol does, in fact, = x06 SCSI. > Re guessing what Linux may be doing that breaks ... > > Would just sending one read command via SG_IO, rather > than going for the whole mount of a volume, teach us > anything? Probably not. > How about sending a read command to an Lba beyond the > capacity? In other words, a command that should fail immediately rather than try to access the media? Interesting thought.... > I presume Linux `dd` can't be persuaded to try reading > from a volume that hasn't yet been mounted? Yes, it can. But since dd will go through sd.c, I don't see much point. > > usb-storage: 28 00 00 00 00 00 00 00 08 00 9b cf > > I interpret that log line to mean the first x0C (12) > bytes of the CBWCB is x 28 00 00:00:00:00 00 00:08 00 > 9B:CF. > > I find that line intriguing because just now lately > I've heard people guessing the talk-like-Windows > protocol includes zeroing the CBWCB out at least thru > offset 11 i.e. substitute 00:00 for 9B:CF. > > But I haven't yet heard any specific anecdotes of > actual devices seen to need such pampering. Thus my recent suggestion that he try 8020 instead of SCSI, where such padding is done. > > usb-storage: Bulk command S 0x43425355 T 0x20 Trg 0 LUN 0 L 4096 F 128 CL 10 > > "L 4096" here might mean dCBWDataTransferLength = > x1000 (4096) = x00:08 * x200. Yes. > > I have snipped part of the log ... > > Presuming that op x25 Read Capacity reported bytes per > block = x200 = 512, we have Hi = Di = x1000, no > worries. Yep. > > some sort of USB snooping might provide a clue > > More folk could comment - though they may not be > subscribed here - if we could more easily access > translations to likely Usb bus traffic from Linux > kernel log jargon. > > Specifically here now I wonder if "usb-storage: > usb_stor_transfer_partial(): xfer 4096 bytes" means we > copied In x1000 bytes before we saw trouble. No, that means a request for copying 4096 bytes. After the transfer completes a status line is printed showing what actually happened. Matt -- Matthew Dharm Home: [EMAIL PROTECTED] Maintainer, Linux USB Mass Storage Driver G: Let me guess, you started on the 'net with AOL, right? C: WOW! d00d! U r leet! -- Greg and Customer User Friendly, 2/12/1999
pgp00000.pgp
Description: PGP signature