Michael,
I've searched both my memory and my archive, and neither
has been very enlightening on this subject.
What I can tell you is that the current wording was
not in the r0 of the OIR proposal, but appeared in r1 after the initial proposal
was presented at the September 2003 CAP meeting. The minutes confirm that
changes were requested as that meeting, and my notes from then have
reference to needing to include the phrase "an I_T nexus not holding" and define
which commands the bit applies to, but that's all. After r1 the text is
essentially unchanged until the r4 that was approved for inclusion in
SSC-3.
I believe that the intent here is that the 2nd and 3rd
sentence describe the same situation, namely that if the OIR bit is set to one,
and and a command is received for logical unit upon which no reservation or
persistent reservation exists, then the response is a CHECK CONDITION with "Not
Reserved".
I don't believe that your interpretation of the sentences
as describing different situations works, because in the first bullet the
response would be a Reservation Conflict, and that is not related to what is
being addressed in the OIR description.
Note that the second sentence only says "no reservation
exists", while the 3rd says "no reservation or persistent reservation
exists". I wonder if the wording is and attempt to cover the use of the OIR bit
with both SPC-2 and SPC-3 compliant devices. Sorry, that's the only constructive
suggestion I can make - does anybody else have other ideas or
memories?
Regards,
Roger Cummings
SYMANTEC
From: Banther, Michael
[mailto:michael.banther@hp.com]
Sent: Tuesday, April 18, 2006 12:10
PM
To: Roger Cummings
Cc: t10@t10.org; Casado,
Reyes
Subject: Question regarding OIR bit
Hi
Roger,
In SSC-3r02,
clause 8.3.3, the definition of the OIR bit has caused some confusion
here:
If
the only if reserved (OIR) bit is set to one, the device server shall
process a command only if a reservation (see
SPC-2) or persistent reservation (see SPC-3) exists that allows
access via the I_T nexus from which the command was received. If the OIR bit is set to one
and a command is received from an I_T nexus for which no reservation exists, the device server shall not process
the command. If the OIR bit is set to one and a command is received from an I_T nexus for a logical unit upon
which no reservation or persistent reservation exists, the device
server shall terminate the command
with CHECK CONDITION status. The sense key shall be set to ILLEGAL
REQUEST and the additional sense code
shall be set to NOT RESERVED.
We're not sure whether you intended the second a third sentences above
to describe the same situation or two slightly different situations. I
read it that these two sentences describe two different
situations:
-
The first sentence applies to a command received from an I_T nexus
when that I_T nexus does not hold a reservation (including a persistent
reservation) but some other I_T nexus does hold
one.
-
The second sentence applies to a command received from an I_T nexus
when neither that I_T nexus nor any other I_T nexus holds a
reservation.
However it's possible to interpret that second sentence as an
introduction to the specifics of the third sentence, in which case they refer
to the same situation. Could you please clarify the
intention?
Michael Banther
Hewlett-Packard Ltd.
Telephone +44 (117)
312-9503