Re: TMF for a write with only unsolicited data
Mike Ko <[email protected]>
| Newsgroups | gmane.ietf.ips |
|---|---|
| Message-ID | <OFC15E9DB7.BD54764F-ON85257131.00581CB3-88257131.00586660@us.ibm.com> |
Eddy, There are 8 task management function codes listed in RFC3720. They are Abort Task, Abort Task Set, Clear ACA, Clear Task Set, Logical Unit Reset, Target Warm Reset, Target Cold Reset, and Task Reassign. If your example is not Task Reassign, what TMF code do you have in mind where unsolicited write data would be sent? Mike To: "Mike Ko" <[email protected]> cc: <[email protected]> Subject: Re: [Ips] TMF for a write with only unsolicited data No. The case is not a TASK REASSIGN. It is for a write command where all of the data is unsolicited. If the STag is used for the associated R2T's then it would seem WSV would be set to 0 when no R2T's were issued. Further it says "The Write STag Valid flag is set to one when there is solicited data to be transferred" Doesn't that mean the STag is only used if there was solicited data with the command? Eddy ----- Original Message ----- From: Mike Ko To: Eddy Quicksall Cc: [email protected] Sent: Monday, March 13, 2006 7:14 PM Subject: Re: [Ips] TMF for a write with only unsolicited data If I understand your question correctly, I assume the TMF is a TASK REASSIGN and it is for a write command qualified with DataDescriptorOut. DataDescriptorOut is used to describe the I/O buffer starting with the immediate unsolicited data (if any), followed by the non-immediate unsolicited data (if any) and solicited data. A Write STag is allocated in this case. The Write STag is used by the iSER layer at the target in handling the data transfer associated with the R2T PDUs and in returning the SCSI Response PDU using the SendInvSE message. Since there is non-immediate unsolicited data, WSV is set to 1. Mike To: <[email protected]> cc: Subject: [Ips] TMF for a write with only unsolicited data Suppose: 1) a TMF is not a TASK REASSIGN 2) the TMF is for a write command 3) the write command only has unsolicited data I think this is saying the WSV is set to 0 for this case. Is that correct? If so then I think the 3rd bullet item in 7.3.3 needs to say "if allocated" since a write with unsolicited only will also have a DataDescriptorOut. Or am I wrong in that the TMF would have the DataDescriptorOut for a write with only unsolicited data? WSV - Write STag Valid flag: 1 bit This flag indicates the validity of the Write STag field of the iSER Header. If set to one, the Write STag field in this iSER Header is valid. If set to zero, the Write STag field in this iSER Header MUST be ignored at the receiver. The Write STag Valid flag is set to one when there is solicited data to be transferred for a SCSI Write or bidirectional command, or when there are non-immediate unsolicited and solicited data to be transferred for the referenced task specified in a Task Management Function Request with the TASK REASSIGN function. 7.3.3 Task Management Function Request/Response * It MUST use the ITT as specified in the Referenced Task Tag from the Task Management Function Request PDU to locate the existing STag(s), if any, in the Local Mapping(s) that associates the ITT to the local STag(s). * It MUST invalidate the existing STag(s), if any, and the Local Mapping(s) that associates the ITT to the local STag(s). * It MUST allocate a Read STag for the I/O Buffer as defined by the qualifier DataDescriptorIn if the Send_Control Operational Primitive invocation is qualified with DataDescriptorIn. Eddy_______________________________________________ Ips mailing list [email protected] https://www1.ietf.org/mailman/listinfo/ips _______________________________________________ Ips mailing list [email protected] https://www1.ietf.org/mailman/listinfo/ips