Subject: RE: iSCSI: DLB-T.28 (Logout discards OOO commands)

From: [email-masked]
Date: Wed, 10 Jul 2002 03:56:46 -0400

Mallikarjun,

The "active" suggestion helps, but the text in Section
9.14 uses the phrase "command reordering
queue" without defining it, and uses the word
"tasks" where "commands" would have been better.

The language used in 9.14 needs to be aligned with the language
used to specify command ordering in Section 2.2.2.1.  One
(somewhat wordy) possibility for rephrasing would be:

	results in the discarding of commands that have arrived
	on the connection being logged out but have not been
	delivered to SCSI because a command with a smaller CmdSN
	has not been received by iSCSI (see Section 2.2.2.1).

Thanks,
--David
---------------------------------------------------
David L. Black, Senior Technologist
EMC Corporation, 42 South St., Hopkinton, MA  01748
+1 (508) 249-6449            FAX: +1 (508) 497-8018
[email-masked]       Mobile: +1 (978) 394-7754
---------------------------------------------------

> -----Original Message-----
> From: Mallikarjun C. [mailto:[email-masked]]
> Sent: Tuesday, July 09, 2002 3:43 PM
> To: [email-masked]
> Subject: iSCSI: DLB-T.28 (Logout discards OOO commands)
> 
> 
> > [T.28] 9.14 Logout Request
> > 
> >   A successful completion of a logout request with the reason code of 
> >   "close the connection" or "remove the connection for recovery" 
> >   results in the discarding of all tasks waiting in the command reor-
> >   dering queue that are allegiant to the connection being logged out.
> > 
> > "discarding" is not what hapapens in the "remove the connection for
recovery
> > case according to the following text from Section 6.5:
> > 
> >       b)  Logout the connection for recovery and continue the tasks on a

> >       different connection instance as described in Section 6.1 Retry 
> >       and Reassign in Recovery. [OR]
> > 
> > A "discarded" task cannot be "continue"-d.  I suspect the text should
say
> > that "close the connection" terminates the tasks, anad "remove the
> > connection
> > for recovery" suspends the tasks with the following CmdSN 
> side effects ...
> 
> Notice the phrase "waiting in the command reordering queue".  *Any*
> flavor of Logout would cause the OOO commands in the target's reordering
> queue to be discarded.  The difference in behaviors is only
> for the active tasks.
> 
> The recovery Logout, when successfully executed, would prepare the *active

> instantiated tasks* for reassignment, while the other two flavors
> of Logout would terminate all appropriate tasks.
> 
> I would suggest qualifying the words task/tasks with "active"
> in section 6.5 (in the 
> text you quoted), and also in sections 9.5/9.6 to make this 
> distinction clear.
> 
> 
> Mallikarjun
>   
>

---

From: "Mallikarjun C." <[email-masked]>
Date: Wed, 10 Jul 2002 12:01:20 -0700

David,

You're right, "command reordering queue" needs to be defined.
I'd prefer doing that, or alternatively going with your suggested
text below, but S/b " a command with a smaller CmdSN has"
W/ "one or more commands with smaller CmdSN(s) have".

And yes, in the quoted text at the bottom, "commands" would
be a better fit compared to "tasks".

Thanks.
--
Mallikarjun

Mallikarjun Chadalapaka
Networked Storage Architecture
Network Storage Solutions
Hewlett-Packard MS 5668 
Roseville CA 95747
[email-masked]