From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Stefan Richter <stefanr@s5r6.in-berlin.de>
Cc: Matthew Wilcox <matthew@wil.cx>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
linux-scsi@vger.kernel.org
Subject: Re: RFC: Transport identifier
Date: Sat, 28 Feb 2009 07:36:36 -0800 [thread overview]
Message-ID: <1235835396.3468.4.camel@localhost.localdomain> (raw)
In-Reply-To: <49A95616.3070502@s5r6.in-berlin.de>
On Sat, 2009-02-28 at 16:19 +0100, Stefan Richter wrote:
> Matthew Wilcox wrote:
> > On Sat, Feb 28, 2009 at 03:53:31PM +0100, Stefan Richter wrote:
> >> /Is/ the used transport protocol a good indicator for whether a
> >> particular target breaks by READ CAPACITY 16? I have doubts. Command
> >> set support is independent of transport protocol support.
> >
> > You must admit there's a striking correlation between USB devices and
> > completely failing to follow the SCSI spec. Our current workaround of
> > clamping USB devices at a SCSI_2 level does avoid much of the pain.
>
> OK, but currently implementations typically are:
> 1. transport layer driver detects device with known flaws, switches on
> a device quirk flag,
> 2. transport layer enables quirk for all devices which it serves by,
> default, possibly disables quirk for some whitelisted devices.
>
> Pulling the SCSI level down in usb-storage belongs into the latter category.
>
> Martin's proposal for transport identifiers includes the suggestion of a
> third strategy:
> 3. transport layer identifies itself, upper layer enable some quirks
> based on that information (alone or in combination with whatever
> other information).
Actually, that's the piece of this proposal I'm explicitly saying no to:
we're not going to code transport knowledge into the mid-layer because
it's setting us up to get things wrong.
The thing that may be useful in all of this is for udev to get the
transport type from sysfs ... I'm not entirely sure about this one,
since udev seems to do a pretty good job on its own without an exported
identifier, but I can see an explicit one might be useful to it.
> So, while it may be prudent to deduct "it's USB" -> "don't try READ
> CAPACITY 16", why not keep implementing this in way #2?
We will. That way if a wonderfully compliant USB device comes along
(big if, I know) you can white list it in the USB (or SBP-2) layer and
pass along its true SCSI compliance level.
James
next prev parent reply other threads:[~2009-02-28 15:36 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-26 4:31 RFC: Transport identifier Martin K. Petersen
2009-02-26 4:54 ` Julian Calaby
2009-02-26 5:32 ` Joel Becker
2009-02-26 20:22 ` Martin K. Petersen
2009-02-26 9:53 ` Douglas Gilbert
2009-02-26 15:39 ` Mike Christie
2009-02-26 15:48 ` James Bottomley
2009-02-26 20:32 ` Martin K. Petersen
2009-02-27 7:33 ` FUJITA Tomonori
2009-02-28 4:13 ` Martin K. Petersen
2009-02-28 4:50 ` Matthew Wilcox
2009-02-28 5:19 ` FUJITA Tomonori
2009-02-28 15:40 ` Martin K. Petersen
2009-02-28 14:53 ` Stefan Richter
2009-02-28 15:06 ` Matthew Wilcox
2009-02-28 15:19 ` Stefan Richter
2009-02-28 15:36 ` James Bottomley [this message]
2009-02-28 15:54 ` Martin K. Petersen
2009-02-28 15:42 ` Martin K. Petersen
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=1235835396.3468.4.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=matthew@wil.cx \
--cc=stefanr@s5r6.in-berlin.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox