Subject: RE: iSCSI: aborting an immediate command with ABORT TASK

From: "Julian Satran" <[email-masked]>
Date: Wed, 4 Sep 2002 16:44:21 +0300

The plug-in is meant to avoid having to resend the missing command.
This is also the reason for mandating ABORT TASK on the same connection!

Julo

"Tony Battersby" <[email-masked]>
Sent by: [email-masked]
04/09/02 16:11
Please respond to tonyb

        To:     <[email-masked]>
        cc:     <[email-masked]>
        Subject:        RE: iSCSI: aborting an immediate command with ABORT TASK

> From: [email-masked] [mailto:[email-masked]]On Behalf Of
> [email-masked]
> Sent: Tuesday, September 03, 2002 7:21 PM
> To: [email-masked]
> Cc: [email-masked]
> Subject: RE: iSCSI: aborting an immediate command with ABORT TASK
>
>
> Tony,
>

> > > 2) The race between an immediate command finishing normally
> > > (causing the target to free the command and forget its
> associated ITT)
> > >  and the initiator aborting it

>
> That's not correct.  In case 2) the ABORT TASK always succeeds no
> matter how the race turns out - SAM-2 Section 6.2 says:
>
>                If the logical unit supports this function, a response of
>                FUNCTION COMPLETE shall indicate that the task was 
aborted
>                or was not in the task set.
>
> The words "or was not in the task set" are the crucial ones.  In
> case 2), the ABORT TASK always returns FUNCTION COMPLETE, and
> there may
> or may not be a response from the aborted task prior to that FUNCTION
> COMPLETE, but there MUST NOT be one afterwards.

I am not really concerned about the response code to the ABORT TASK.  My
concern is that the initiator may end up plugging a CmdSN hole when it
shouldn't.  From Section 9.6.1 (draft 15),

"...targets must consider the CmdSN received and return the "Function
complete" response."

I don't have a problem with returning the "Function complete" response.  I
do have a problem with the target considering the CmdSN received if the
initiator intended to abort an immediate command.

Tony

---

From: "Tony Battersby" <[email-masked]>
Date: Wed, 4 Sep 2002 10:20:28 -0400

From: Julian Satran [mailto:[email-masked]]
Sent: Wednesday, September 04, 2002 9:44 AM
To: [email-masked]
Cc: [email-masked]; [email-masked]; [email-masked]
Subject: RE: iSCSI: aborting an immediate command with ABORT TASK

> The plug-in is meant to avoid having to resend the missing command.

If the missing command was non-immediate, then yes, the plug-in avoids
having to resend the missing command.  But, if the missing command was
immediate, then there is no hole to plug.  In this case, the spec requires
the target to plug a hole which does not exist, which is the problem that I
am trying to point out.

Tony