From: Pat LaVarre <p.lavarre@ieee.org>
To: dmitrik@users.sourceforge.net
Cc: linux-scsi@vger.kernel.org
Subject: Re: [usb-storage] mode sense blacklist how
Date: 20 Nov 2003 08:57:15 -0700 [thread overview]
Message-ID: <1069343835.6663.16.camel@patrh9> (raw)
In-Reply-To: <1069337187.3fbcca6395f44@webmail.netregistry.net>
> The only really important question IMHO is
> how come SG_IO is not interruptible.
Yes, now being pursued by Doug G in this thread.
> > In the log I see this command repeated, time and again. Did you ask for
> > this command repeatedly yourself, or is it the code of SG_IO and below
> > that is so helpfully retrying?
>
> That wasn't me. I see these commands were sent *after* the device has
> been unplugged. It must've been SCSI layer.
This also could matter. In our kernel code who wrongly thinks we gave
permission to retry SG_IO? This evidence echoes someone else's - may
have been Patrick M - who saw mode sense stuttering. I don't remember
if that was different (rude mode sense from the kernel) or the same
(rude mode sense via SG_IO from plscsi).
> Anyway, it must be obvious by now that the device is broken or shall
> we say proprietary. There is a quick workaround already in place. I'd
> say blacklist it in unusual_devs and be done with it.
Not broken.
This device explicitly self-identifies itself as a proprietary kind of
SCSI via bInterfaceSubClass = xFF and also the almost-proprietary kind
of SCSI over USB that is bInterfaceProtocol != x50.
No separate blacklist needed. Recently near here I think I heard:
We of usb-storage are instead choosing to blacklist all the reserved
bInterfaceSubClass codes altogether. Already we blacklist such devices
in that we don't try talking unless they appear in unusual_devs. Now
also we won't try non-Microsoft mode sense even if they do appear in
unusual_devs.
> > the plscsi workaround: -X time 5 0.
> > Does that work for you?
>
> Yes, ... Still, ... device ... must be unplugged ...
Curious. If the mode senses that work aren't the first mode senses that
Windows tries, then the resets of Windows must be working ...
> try more MODE SENSE(10) ... finally found some that work:
>
> ./plscsi /dev/sg1 -v -p -X time 10 0 -i xC0 -x "5A 00 3F 00 00 00 00 00 C0 00"
> produces the following output:
>
> x 00000000 5A 00 3F:00:00:00 00 00:C0 00 .. .. .. .. .. .. "Z@?@@@@@@@"
> x 00000000 00:32:00:00 00:00:00:00 05:1E:00:12 04:20:02:00 "@2@@@@@@E^@RD B@"
> x 00000010 01:00:00:00 00:00:00:00 00:00:00:00 00:00:00:00 "A@@@@@@@@@@@@@@@"
> x 00000020 00:00:00:00 00:B4:00:00 1B:0A:C0:00 00:00:00:00 "@@@@@4@@[J@@@@@@"
> x 00000030 00:00:00:00 00:00:00:00 00:00:00:00 00:00:00:00 "@@@@@@@@@@@@@@@@"
> ...
> x 000000B0 00:00:00:00 00:00:00:00 00:00:00:00 00:00:00:00 "@@@@@@@@@@@@@@@@"
Ah. Eight byte header claiming x34 bytes available. No optional block
descriptor. x20 bytes of page x05 for boot H:S:C. x0C bytes of page
x1B to please Windows. x 8 + 20 + 0C = 34, good.
> // 0 = plscsi.main exit int
>
> It looks like the device does support MODE SENSE(10) for pages 5 and 1B only.
Perhaps that is all that PC boot BIOS and Windows require. This could
be a sample of design-by-test: edit, compile, test, ship when it does
not crash. Do you know if the device firmware is upgradable?
> "5A 00 05 00 00 00 00 00 C0 00" and "5A 00 1B 00 00 00 00 00 C0 00" also work.
>
> There is not much useful info on those 2 pages, what was the point
> of implementing them I wonder?
t10.org as we speak is hashing over the value or not of reporting a
fictional C:H:S geometry in the mode page x05 that can report C:H:S up
to about 8 GiB.
Page x1B I don't remember the t10.org name of but it appears in Windows
traces, so someone on Earth thinks it can be useful. Name might be
something like "power conditions".
> > Have you tried `modprobe -r usb-storage`?
> "Module in use"
> Not entirely unexpected since plscsi holds an open handle at this point.
I'm sure I'm enough of a kernelnewbie to be deeply confused here, but I
don't understand why we can kill the plscsi process without gaining
permission to kill the SG_IO.
> > Adding -v might tell us more.
>
> Not really:) It just shows the command going down and that's it.
Thanks for saying, now I feel less bad about not suggesting -v to begin
with.
> > Here we see "auto-sense" "code: 0x70, key: 0x5, ASC: 0x24, ASCQ: 0x0".
> >
> > In the t10.org English, x 5 24 means cdb[0] opcode understood, but whole
> > cdb not understood. x 5 20 means cdb[0] opcode not understood.
> >
> > This result suggests, without guaranteeing, that the vendor-specific
> > bInterfaceSubClass = xFF SCSI of this device includes some cdb's that
> > begin with op x1A Mode Sense (6).
>
> Hmm, I tried MODE SENSE(6) with the same pages (5,1B and 3F) that worked
> with MODE SENSE(10) and I've got the same error: x 5 24.
Ouch, maybe this device is creatively reporting x 5 24 to mean x 5 20.
Pat LaVarre
next prev parent reply other threads:[~2003-11-20 15:57 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-11-12 23:50 [PATCH] fix Sony USB mass storage - pass larger receive buffer Patrick Mansfield
2003-11-13 0:09 ` Matthew Dharm
2003-11-13 0:13 ` Patrick Mansfield
2003-11-13 0:44 ` Patrick Mansfield
2003-11-13 1:56 ` Matthew Dharm
2003-11-13 14:54 ` [usb-storage] " Alan Stern
2003-11-13 16:21 ` Pat LaVarre
2003-11-13 17:09 ` Alan Stern
2003-11-13 17:24 ` Pat LaVarre
2003-11-13 18:04 ` Patrick Mansfield
2003-11-13 18:15 ` Pat LaVarre
2003-11-13 18:22 ` Pat LaVarre
2003-11-13 18:26 ` Pat LaVarre
2003-11-13 18:37 ` Pat LaVarre
2003-11-13 19:13 ` Matthew Dharm
2003-11-13 19:30 ` Pat LaVarre
2003-11-13 22:03 ` Alan Stern
2003-11-13 23:40 ` Pat LaVarre
2003-11-13 23:51 ` Dmitri Katchalov
2003-11-14 0:16 ` Pat LaVarre
2003-11-14 1:04 ` Matthew Dharm
2003-11-14 1:10 ` Pat LaVarre
2003-11-14 1:13 ` Matthew Dharm
2003-11-13 22:01 ` Alan Stern
2003-11-13 23:37 ` Pat LaVarre
2003-11-14 0:24 ` Patrick Mansfield
2003-11-14 1:54 ` Pat LaVarre
2003-11-14 2:08 ` Matthew Dharm
2003-11-14 2:24 ` Pat LaVarre
2003-11-17 21:38 ` Pat LaVarre
2003-11-17 22:00 ` Patrick Mansfield
2003-11-17 23:36 ` Pat LaVarre
2003-11-14 1:03 ` Matthew Dharm
2003-11-13 23:44 ` Pat LaVarre
2003-11-14 0:13 ` Dmitri Katchalov
2003-11-14 0:55 ` Pat LaVarre
2003-11-14 1:13 ` Matthew Dharm
2003-11-14 2:02 ` Pat LaVarre
2003-11-14 2:10 ` Pat LaVarre
2003-11-14 2:19 ` Matthew Dharm
2003-11-14 2:38 ` [usb-storage] mode sense blacklist how Pat LaVarre
2003-11-14 2:44 ` Matthew Dharm
2003-11-14 17:27 ` Pat LaVarre
2003-11-14 17:57 ` Pat LaVarre
2003-11-14 3:11 ` Dmitri Katchalov
2003-11-14 19:41 ` Pat LaVarre
[not found] ` <20031114153607.A7207@beaverton.ibm.com>
[not found] ` <20031116121039.A13224@beaverton.ibm.com>
2003-11-17 20:14 ` Pat LaVarre
2003-11-19 12:55 ` Dmitri Katchalov
2003-11-19 16:34 ` Pat LaVarre
2003-11-19 17:02 ` Pat LaVarre
2003-11-19 23:34 ` Douglas Gilbert
2003-11-20 16:32 ` Pat LaVarre
2003-11-21 1:17 ` SG_IO ioctl (was: mode sense blacklist how) Douglas Gilbert
2003-11-21 3:18 ` Willem Riede
2003-11-21 20:51 ` Pat LaVarre
2003-11-28 17:07 ` Pat LaVarre
2003-11-28 17:14 ` Pat LaVarre
2003-11-28 17:31 ` Pat LaVarre
2003-11-28 17:09 ` Pat LaVarre
2003-11-21 21:29 ` Pat LaVarre
2003-11-20 14:06 ` [usb-storage] mode sense blacklist how Dmitri Katchalov
2003-11-20 15:57 ` Pat LaVarre [this message]
2003-11-14 1:06 ` [usb-storage] Re: [PATCH] fix Sony USB mass storage - pass larger receive buffer Matthew Dharm
2003-11-14 16:14 ` Alan Stern
2003-11-14 17:29 ` Matthew Dharm
2003-11-14 17:50 ` Pat LaVarre
2003-11-14 2:02 ` Douglas Gilbert
2003-11-14 21:45 ` [usb-storage] " Pat LaVarre
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1069343835.6663.16.camel@patrh9 \
--to=p.lavarre@ieee.org \
--cc=dmitrik@users.sourceforge.net \
--cc=linux-scsi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.