From: Douglas Gilbert <dougg@torque.net>
To: Patrick Mansfield <patmans@us.ibm.com>
Cc: Luben Tuikov <luben_tuikov@adaptec.com>, linux-scsi@vger.kernel.org
Subject: Re: Report luns
Date: Wed, 10 Nov 2004 14:47:55 +1000 [thread overview]
Message-ID: <41919D7B.5040703@torque.net> (raw)
In-Reply-To: <20041109211055.GA11459@us.ibm.com>
Patrick Mansfield wrote:
>>Douglas Gilbert wrote:
>>
>>>So if that fails scsi_scan.c might issue a REPORT LUNS command to
>>>this lun: 0xc101 which is the value of the REPORT LUNS well-known lu.
>>>Note that this is a 16 bit quantity (not 64 bit as I said in a
>>>previous post about luns). For simplicity let us assume that
>>>that it is at the top level. [If a device returns HiSup=1 in its
>>>standard INQUIRY response then it claims to support a 4 level
>>>hierarchy in its luns (with 16 bits in each level).]
>>
>>And also supports REPORT LUNS.
>>
>>So in either case, we send REPORT LUNS to LUN 0 and if
>>this fails to REPORT LUNS W-LUN (0xC101...).
>
>
> Do we also have to change to send the INQUIRY to the well known LUN?
Yes, all well known lus have mandatory support for INQUIRY.
> And then someday add black and white list flags and code for them ...
Hope not. If an INQUIRY to lun 0 fails (and perhaps the transport level
doesn't object) then send an INQUIRY to lun 0xc101 . If that succeeds
then send a REPORT LUNS to lun 0xc101 ...
> Why is stuff like this even added to the standard??? Why not use LUN 0
> (all zeroes) or at worst have one well known LUN like the all f's?
All f's is already defined in SAM-3 as "lu not specified", whatever
that means :-)
> The hierarchical LUN stuff and the various address modes are dumb, just
> treat the LUN as a tag/identifier (similiar to a TCP/IP network port) and
> leave the interpretation of it up to the target device (or at worst the
> transport).
As you have worked in the scsi_scan.c area you are well placed
to comment. I have only recently been looking at luns. I also
wonder about the device peripheral type returned by an INQUIRY
sent to a W-LUN (i.e. well known lun). If it was closely associated
with disks (e.g. a RAID) and returned a "direct access" device then
the sd driver wouldn't make much sense of a W-LUN device. Note this
is not a problem while select=0 is set in scsi_scan's REPORT LUN
commands.
An example, inspired by the BCC draft, involving well
known logical units might help. Say we have
a bridge from SAS (or FC, it doesn't matter) to SPI-4 (U320).
One way to implement the bridge is to map the 15 possible
devices on the U320 bus to luns behind a single target in
a SAS domain (or SAS bus, it's the same thing). Lets assume
there are 5 U320 disks connected to the SPI bus and assume
SPI target ids 0 to 4 map to SAS luns 0 to 4.
So now if one sends a REPORT LUNS to lun 0 that U320 disk is
expected to know about its sibling disks!? That is why I used
the term "hack" with respect to lun 0. What really happens
is the device server in the bridge intercepts the REPORT LUNS
command and produces a response reflecting its knowledge of
those 5 U320 disks present. Why play this game? Why not talk
directly to the device server (addressed via a well known lu).
This way an INQUIRY to a W-LUN yields information about
the bridge, while an INQUIRY to lun 0 yields information about
that disk.
If the TARGET LOG PAGES W-LUN is supported then the
bridge can supply logs from its point of view (a SAS
bridge device) while a LOG SENSE command sent to lun 4
reports that U320 disk's logs.
Luben is probably correct in saying manufacturers will
support both lun 0 and the REPORT LUNS well known lu
in advanced products such as bridges. In Linux currently
we can detect the presence of well known lus (e.g.
sg_luns --select=1 /dev/sg3). If anything is found we
have no mechanism to probe them.
Doug Gilbert
next prev parent reply other threads:[~2004-11-10 4:47 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-10-27 23:33 Apple Xserve RAID and qlogic ISP2312 (qla2300) Catalin Muresan
2004-10-28 14:37 ` Patrick Mansfield
2004-10-28 15:35 ` Catalin Muresan
2004-10-28 16:42 ` Patrick Mansfield
2004-10-28 16:51 ` Patrick Mansfield
2004-10-28 17:21 ` Andrew Vasquez
2004-10-29 8:58 ` Catalin Muresan
2004-10-29 18:06 ` Patrick Mansfield
2004-10-30 15:44 ` Catalin Muresan
2004-11-01 10:56 ` Catalin Muresan
2004-11-01 19:48 ` Patrick Mansfield
2004-11-09 2:49 ` Report luns [was: Apple Xserve RAID and qlogic ISP2312 (qla2300)] Douglas Gilbert
2004-11-09 15:06 ` Luben Tuikov
2004-11-09 21:10 ` Patrick Mansfield
2004-11-09 22:07 ` Luben Tuikov
2004-11-10 4:47 ` Douglas Gilbert [this message]
2004-11-10 14:13 ` Report luns Luben Tuikov
2004-11-10 5:19 ` Report luns [was: Apple Xserve RAID and qlogic ISP2312 (qla2300)] Douglas Gilbert
2004-11-10 14:47 ` Luben Tuikov
2004-10-29 9:01 ` Apple Xserve RAID and qlogic ISP2312 (qla2300) Catalin Muresan
-- strict thread matches above, loose matches on Subject: below --
2003-06-13 14:04 REPORT LUNS Josef Möllers
2003-06-13 18:22 ` Patrick Mansfield
2003-06-16 6:55 ` Josef Möllers
2003-06-23 16:49 ` Patrick Mansfield
2003-06-24 6:51 ` Josef Möllers
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=41919D7B.5040703@torque.net \
--to=dougg@torque.net \
--cc=linux-scsi@vger.kernel.org \
--cc=luben_tuikov@adaptec.com \
--cc=patmans@us.ibm.com \
/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