Minutes of FCP activities during SCSI Working Group and Plenary
Bob Snively
Bob.Snively at eng.sun.com
Fri Aug 5 03:20:58 PDT 1994
To: X3T10, X3T11 via e-mail
fibre-channel-ext at think.com, scsi at WichitaKS.NCR.COM
From: Bob Snively
Date: July 20, 1994
Subject: FCP activities during the SCSI Working Group meeting
At the SCSI Working Group meeting of July 20, 1994, the FCP
ballot review comments and other FCP issues were discussed.
Some of the ballot review comments were also discussed during
the SCSI Plenary meeting on July 21, and the conclusions reached
at that time concerning particular comments are also included here.
DISCUSSION AND RESOLUTION OF UNRESOLVED BALLOT COMMENTS:
After careful study by the commenters, three ballot review
comments were considered to be unresolved by the resolutions of
the ballot comments described in X3T10/94-109r1 and included
in X3T10/993D revision 8b.
Comment 57:
The original text of the comment requested that the Terminate Task
and Clear ACA functions be mandatory. "...They are discoverable
attributes managed by Inquiry Data and the ACA field of the CDB.... Whether
they are invoked or not is up to the ULP and not of concern to the
FCP FC-4 or the ports. As a general rule, any functions that are
logically managed SHALL be supported by the FC-4. Otherwise, a
SCSI device may implement a function which cannot be performed because
of the choice of FC-4 or port manufacturer."
During the meeting working group meeting, resolution was not reached.
The consensus was that the functions should not be mandatory.
During the SCSI plenary meeting, the comment was clarified. The
SCSI FCP mapping is intended to provide a complete description of
the capabilities that are mandatory for implementation by both
the target and the initiator and those that are optional for either.
In contrast, the comment intends that initiators shall always be
able to pass the task management function, even if the system
integrators never intend to use the function and if none of the
attached targets supports it. The requirement is that additional
mapping code between the CAM (or equivalent interface) and the
FC-PH service layer be provided to create the required bits.
For the two task management functions, Terminate Task and Clear ACA,
compliance with the suggested change has some effect on the required
code complexity and cost of testing at the initiator. At the
target, not implementing the functions, accepting the functions
and performing no operation, and fully implementing the functions
are indistinguishable under most test cases.
To resolve this particular comment, the initiator and target
requirements could be separated and the function could be
made mandatory for the initiator and optional for the target.
This resolution was accepted by the committee.
Comment 134:
The original text of the comment indicated that FCP should allow
the overlay of data during read or write operations. The comment
was resolved, but during review, some text in section 7.3
was questioned. That text indicates that initiators would have
the option of treating data overlays as an error if they could
not guarantee data integrity during such transfers.
To complete resolution of the comment, a bit will be placed in
the PRLI as a negotiated requirement. The default or zero
state of the bit will indicate that data overlay is not allowed or
supported.
Comment 142:
The original text of the comment suggested that the residual length
definition be modified significantly. Instead, some textual
corrections were made to make it more accurate and easier to
understand. The following additional corrections were requested
to complete resolution of the comment:
a) The formula on page 32 does not take into account the
possibility of overlays. It will be modified to
refer to the highest value filled, instead of the
actual count of bytes transferred.
b) The proper behavior for targets must be indicated when
there is a conflict between the CDB defined data length and
the FCP_DL value.
1) The target is not required to verify CDB data length
and FCP_DL consistency before beginning data transfer.
2) The SCSI Status Byte may not be valid if a SAM
service delivery failure occurs. Data overrun is
a SAM service delivery failure. Data underrun is
not a SAM service delivery failure, since
underruns often occur in the SCSI command set.
The completion state of the SCSI command is uncertain
if an overrun occurred.
DISCUSSION AND RESOLUTION OF ADDITIONAL COMMENTS:
The following questions had been raised and discussed after
revision 8b of FCP was prepared. These comments generally
complete previously incomplete portions of the document or
provide editorial clarifications.
1) Special case of ambiguous commands (Giles Frazier)
Giles Frazier correctly points out that commands cleared as
a result of performing a recovery with the QERR bit = 1 in
the Mode Sense/Select pages will throw away unused commands.
These commands are in an ambiguous state and FC-PH resources
associated with these commands must be cleared. Recovery Abort
performed by the target will successfully clear these commands.
It was suggested that this case be considered in section 7.1.2.5.
2) Targets should be allowed to not perform recovery abort (Kurt Chan)
Kurt Chan has suggested that the Recovery Abort function is not required
for all implementations. The most interesting case is the case of
class 3 closed loops or point-to-point configurations where no
out-of-order recovery is required and where simple ULP timers can
be used to determine that targets have lost track of an I/O Operation.
Four questions about this subject were identified and three answered.
1) Can recovery abort be done at any time?
Yes. The text should be modified to allow the use
of recovery abort for any additional cases where
ambiguity may be assumed or supposed to simplify the
recovery of link resources.
2) Is recovery abort required at all?
Yes. Link resource recovery can only be completed in
some ambiguous cases with the assistance of recovery abort.
3) Will it work correctly for Class 3?
Yes. No modifications should be required.
4) Can the requirement be ignored?
No. This is presently being discussed by e-mail. For
interoperability reasons, only two mutually exclusive cases
appear to guarantee proper operation for all initiators and targets.
a) The target must generate recovery abort for
those cases where it is aware of ambiguity.
This allows rapid recovery of resources and
resumption of normal operation. This is presently
specified by FCP.
OR
b) The initiator must have ULP timers for all
commands and must individually perform a
recovery abort for each outstanding command
as it times out. Recovery by initiators
other than a failing initiator is not defined yet.
Recovery for target/initiators performing third
party operations requires more complex processing
by the target/initiator.
3) Dual Port operation should be defined
Because SAM and other SCSI-3 standards do not define dual
port operation yet, this subject will be included in a future
FCP project.
4) Task Management Response
SAM does not require a task management response. Task Management
functions are attempted, but no reject or error conditions other
than link errors are recovered. Note that the optional Task
Management functions are successfully executed by a target if the
target chooses to ignore the functions and if ACA was cleared by
the presentation of status and automatic sense information in a FCP_RSP IU.
5) Ordered Operations (Lansing Sloan)
The text presently indicates that Class 2 Sequential Delivery is
sufficient to guarantee that ordering will be performed according
to SAM. Lansing Sloan correctly points out that it is not possible
to guarantee that ordered tags will follow SAM unless retries
of a command transmission are completed before a new command
is transmitted. The text will add that correction.
6) COPY Command (Lansing Sloan)
The text does not presently specify the format of the 64-bit
field that defines the source and destination for COPY and
certain RESERVE/RELEASE command formats. The location and
controls for D_ID/S_ID and for PA will be included in section
5.4.2.
7) TTD/CIOP or Transfer Ready Interlock
There is no mechanism presently defined in FCP to hold off or
to interlock the delivery of read data to a host. SAM does
not define such a mechanism, although some revisions of the
SCSI Interlocked Protocol (SIP) do allow such a mechanism.
If this function can be properly defined and justified, it will be
included in a future FCP project.
8) Overlapping Commands
An editorial change is suggested to make it clear that checking
for overlapping commands is not required, since FC-PH does not
provide any legal mechanism for generating them. Text will be
added in section 5.4.9 as follows:
"Since the value of the OX_ID is required by FC-PH to be
unique, there is no requirement for an FCP logical unit to
check for overlapping tags."
9) Target Reset does not perform PRLO
An editorial change is suggested to make it clear that Target
Reset does not cause FCP to perform a PRLO. Text will be added
to the first paragraph of the Target Reset section as follows:
"The FCP Login state of the affected image pairs is not changed
by the Target Reset."
EDITORIAL AND NO-SUBSTANTIVE TECHNICAL CORRECTIONS:
1) PRLI/PRLO Definition not in any standard
Because the PRLI/PRLO function is not defined by any standard yet,
the text from FC-SB (which is scheduled for incorporation in the
FC-EP standard) will be added to FCP as a normative
annex. This also clarifies a number of other comments by
those who did not have copies of the FC-SB Annex to reference.
2) ISO changes
A number of document re-orderings must be performed to
properly meet ISO requirements.
3) Capitalization conventions
The following capitalization conventions were agreed upon among
various X3T10 editors.
Lower case:
Standard words, even if they describe a unique FCP object.
Examples:
target, initiator, exchange, sequence,
fully qualified exchange identifier
Upper case:
SCSI commands
COPY, TEST UNIT READY, etc.
SAM functions
TARGET RESET, CLEAR ACA, etc.
Abbreviations
FQXID, etc.
Abbreviated field names
FCP_RESID_UNDER, etc.
Small Capitals:
Field names that are not abbreviations
TASK ATTRIBUTE, etc.
SCHEDULE AND ACTION ITEMS:
Revision 9 of FCP will be prepared for the mailing, which has
a deadline of August 12, 1994. Assuming that the document is
complete at that time and is available to everyone in a timely
manner, it will be reviewed by the committee members with the
plan that it will be forwarded for public review at the
September SCSI Plenary meeting.
More information about the T10
mailing list