Mixing tagged and untagged tasks
gop at us.ibm.com
gop at us.ibm.com
Fri Sep 24 14:51:45 PDT 1999
* From the T10 Reflector (t10 at t10.org), posted by:
* gop at us.ibm.com
*
Mark,
The change from SCSI-2 to SCSI-3 on allowing a single untagged task to be mixed
in with tagged tasks was intentional.
Bye for now,
George Penokie
Dept Z9V 114-2 N212
E-Mail: gop at us.ibm.com
Internal: 553-5208
External: 507-253-5208 FAX: 507-253-2880
Mark_Heath at notes.seagate.com on 09/24/99 04:04:28 PM
To: t10 at t10.org
cc:
Subject: Mixing tagged and untagged tasks
* From the T10 Reflector (t10 at t10.org), posted by:
* Mark_Heath at notes.seagate.com
*
Hello all,
I recently noticed a discrepancy between the SCSI-2 standards documents and
the SCSI-3 standards documents related to the legality of mixing tagged and
untagged tasks. SCSI-2 disallows the simultaneous use of tagged and
untagged tasks by a single initiator (except when a contingent allegiance
condition exists), as stated in section 7.5.2 of X3T9.2/375R revision 10L:
> An incorrect initiator connection also occurs on an initial connection
when
> an initiator:
> a) attempts to establish an I_T_L_Q nexus when an I_T_L nexus already
exists
> from a previous connection, or
> b) attempts to establish an I_T_L nexus when an I_T_L_Q nexus already
exists,
> unless there is a contingent allegiance or extended contingent
allegiance
> condition present for the logical unit.
>
> A target that detects an incorrect initiator connection shall abort all
I/O
> processes for the initiator on the logical unit or target routine and
shall
> return CHECK CONDITION status. The sense key shall be set to ABORTED
COMMAND
> and the additional sense code shall be set to OVERLAPPED COMMANDS
ATTEMPTED.
However, it appears that SCSI-3 allows the simultaneous use of a single
untagged task with any number of tagged tasks, as stated in section 5.6.2
of SAM-2 T10/1157-D revision 12:
> An overlapped command occurs when an application client reuses a Task
Address
> (see 4.9.3) in a new command before a previous task to which that address
was
> assigned completes its task lifetime as described in 5.4. Each SCSI
protocol
> standard shall specify whether or not a logical unit is required to
detect
> overlapped commands. A logical unit that detects an overlapped command
shall
> abort all tasks for the initiator in the task set and shall return CHECK
CONDITION
> status for that command. If the overlapped command condition was caused
by an
> untagged task or a tagged task with a tag value exceeding FFh, then the
sense
> key shall be set to ABORTED COMMAND and the additional sense code shall
be set
> to OVERLAPPED COMMANDS ATTEMPTED. Otherwise, an additional sense code of
TAGGED
> OVERLAPPED TASKS shall be returned with the additional sense code
qualifier byte
> set to the value of the duplicate tag.
Since a tagged Task Address and an untagged Task Address are by definition
different Task Addresses, mixing a single untagged task with any number of
tagged tasks doesn't result in "reuse" of a Task Address, and thus appears
to be legal.
Is this an intentional deviation from SCSI-2's rules, or is this an
oversight?
Cheers,
Mark A. Heath
Seagate Technology, Inc.
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org
*
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org
More information about the T10
mailing list