Possible conflict in spi3r13a IU mode section 10.8.3.3.3

gop at us.ibm.com gop at us.ibm.com
Thu Apr 6 19:11:35 PDT 2000


* From the T10 Reflector (t10 at t10.org), posted by:
* gop at us.ibm.com
*
The following error in SPI-3 rev 13 has been pointed out. I feel it is
serious enough that it needs to be fixed before SPI-3 is published. As a
result there will be a letter ballot comment generated to fix the problem.

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



----
Subject:  Possible conflict in spi3r13a IU mode section 10.8.3.3.3





Hi George,

There seems to be a conflict in spi3r13a.  In section 16.5.2
(page 168) it states:

    In addition to the requirements in the SCSI Architecture
    Model-2 standard the target shall go to the BUS FREE phase
    following the successful receipt of the ABORT TASK message.

However, in section 10.8.3.3.3 (page 110) is states:

    If the initiator receives a SPI L_Q information unit with
    a type code that is not defined in table 39 that initiator
    shall create an attention condition after negating the ACK
    for the last byte of the iuCRC in the SPI L_Q information
    unit and before negating the ACK for the last byte of the
    last iuCRC in the information unit that follows the SPI L_Q
    information unit. When the target switches to a MESSAGE OUT
    phase the initiator shall send an ABORT TASK message (see
    16.5.2) to the target. The target shall send a SPI L_Q/SPI
    status information unit pair to the initiator with a CHECK
    CONDITION status and a sense key set to ABORTED COMMAND for
    the task associated with the received ABORT TASK message.

How can the target send a SPI L_Q/SPI status information unit
pair to the initiator after the command has been aborted?

In sam2r13 section 7.7.3 (page 70) states:

    A task abort event shall cause the task to unconditionally
    enter the Ended state.

Further more, sam2r13 section 7.5.4 (page 68) states:

    A task in the Ended state is removed from the task set.

Since an aborted task is moved unconditionally to the ended
state, which removes it from the task set, it is impossible
to respond to the Abort Task message with a SPI L_Q/SPI
status information unit pair (the target has gone to bus
free and the task no longer exists).  In all other cases
an aborted command goes to bus free and is never heard from
again (this is an expected bus free condition).  Isn't that
what should happen here?  This is not an autosense situation
since this is an expected bus free.  Why should this be error
situation be any different from any other time the Abort Task
message is received by a target?  Also, why does the Initiator
need sense information since it's the one who sent the Abort
Task message?

Paul







*
* 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