|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: iSCSI: I/O (command) recoverySantosh Rao wrote: > > Matt, > > This is a good write-up and clearly outlines the behaviour. Just a couple of > comments below. > > Regards, > Santosh > > Matt Wakeley wrote: > > > 4- The target iSCSI sends the read data and status to the initiator, but does > > *not* deallocate the resources associated with the I/O. > > The draft is ambiguous about (4). It states that the numbering MUST be supported, > but the data and status recovery MAY be supported. This means initiators > & targets MUST use StatSN/ExpStatSN. However, the target is allowed to > de-allocate the resources associated with the I/O without waiting for ExpStatSN > ack. That's correct. There is nothing in the document that states that retry must be supported. There should probably be a negotiation key that a target uses to indicate if it supports retry or not. > > If some error occurs such that the initiator iSCSI does not receive all the > > data and status, then the initiator iSCSI performs whatever > > link/connection/session recovery to re-establish communication with the > > target. At that point, the initiator iSCSI layer re-issues the I/O with the > > retry bit set. > > > > - At this point, the target iSCSI layer (*not* the SCSI layer) recognizes the > > command is a duplicate (because the retry bit is set), and instead of sending > > Again, the wording for the above in the draft could do with some clarity (Section > 1.2.2.1). It is not clear from the draft whether CmdSNs that are outside the > (ExpCmdSN, MaxCmdSN) window are to be accepted if the retry bit is set. Well, in my mind, the retried command will either have a CmdSN of zero, or a (new/different) valid value within the current range (the next available CmdSN). I don't think there should ever be duplicates. > My interpretation of : > "- The target MUST silently ignore any command > outside this range or duplicates within the range not flagged with > the retry bit (the X bit in the opcode)." > > is : > - ignore all commands outside the (ExpCmdSN, MaxCmdSN) range. > - ignore all duplicate commands within the range that are not flagged with the > retry > > So, if a command with the "retry" bit is set is received outside the (ExpCmdSN, > MaxCmdSN) window, this causes the target to drop the received retry. The wording > on this could do with further clarity. > > > > > For a Target Write operation: > > > > 8- The target iSCSI sends the status to the initiator (and saves it in the > > iSCSI allocated resources for the I/O), but does *not* deallocate the > > resources associated with the I/O. > > Same comment as given for (4) under read operation. Same reply as for (4) under read.... -Matt
Home Last updated: Tue Sep 04 01:05:40 2001 6315 messages in chronological order |