I agree. It appears that the PRIn
(REad Full Status) is not behaving correctly.
Kevin D. Butt
SCSI & Fibre Channel Architect, Tape Firmware
MS 6TYA, 9000 S. Rita Rd., Tucson, AZ 85744
Tel: 520-799-2869 / 520-799-5280
Fax: 520-799-2723 (T/L:321)
Email address: kdbutt@us.ibm.com
http://www-03.ibm.com/servers/storage/
"David Peterson"
<dpeterso@Brocade.COM> Sent by: owner-t10@t10.org
02/26/2008 11:42 AM
To
<t10@t10.org>
cc
Subject
Persistent Reserve In: READ FULL STATUS
response
From a trace I see the following:
PR In (Read Reservations)
-
PRgeneration
= 00 00 00 00h
-
Additional
Length = 00 00 00 00h
Good Status
* Given this response data
there is no reservation held
PR In (Read Full Status)
-
no
data returned
Good Status
* SPC-4 5.6.6.4 states:
An application client may send a PERSISTENT
RESERVE IN command with READ FULL STATUS service action to receive all
information about registrations and the persistent reservation, if any.
In response to a PERSISTENT RESERVE IN
command with READ FULL STATUS service action the device server shall report
the current PRgeneration value (see 6.13.2) and, for every I_T nexus that
is currently registered, the
following information:
a) The registered reservation key;
b) Whether the I_T nexus is a persistent
reservation holder;
c) If the I_T nexus is a persistent reservation
holder, the scope and type of the persistent reservation;
d) The relative target port identifier
identifying the target port of the I_T nexus; and
e) A TransportID identifying the initiator
port of the I_T nexus.
My understanding is that although
no reservation is held, the PRgeneration value (00 00 00 00h in this case)
shall be returned and the Additional Length field shall be set to zero.
Appears this particular target
implementation is not following the standard per Service Action=Read Full
Status in that it simply returns no data if no reservation is held.