ExpCmdSn and MaxCmdSn in ISCSI_OP_R2T
MINOURA Makoto / 箕浦 真 <[email protected]> Fri, 23 Jan 2015 09:08:33 +0900
| Newsgroups | org.kernel.vger.stgt |
|---|---|
| Message-ID | <[email protected]> |
tgtd does not send ExpCmdSn and MaxCmdSn with OP_R2T (Ready
To Transfer) operations. Is this behaviour correct?
At least Linux (RHEL6.2) initiators take 0 MaxCmdSn value
and get confused.
Frame 1498: 114 bytes on wire (912 bits), 114 bytes captured (912 bits)
Ethernet II, Src: XXXX, Dst: XXXX
Internet Protocol Version 4, Src: 172.17.105.40 (172.17.105.40), Dst: 172.17.105.39 (172.17.105.39)
Transmission Control Protocol, Src Port: iscsi-target (3260), Dst Port: 59099 (59099), Seq: 1620029, Ack: 42313, Len: 48
iSCSI (Ready To Transfer)
Opcode: Ready To Transfer (0x31)
TotalAHSLength: 0x00
DataSegmentLength: 0x00000000
LUN: 1 (Single Level LUN Structure)
00.. .... = Address Mode: Single Level LUN Structure (0)
..00 0000 = BUS: 0
LUN: 1
InitiatorTaskTag: 0x0b000000
TargetTransferTag: 0x9077e700
StatSN: 0x0000017d
ExpCmdSN: 0x00000000 !!!
MaxCmdSN: 0x00000000 !!!
R2TSN: 0x00000000
BufferOffset: 0x00002000
DesiredDataLength: 0x00000200
iscsi_r2t_build() does not fill rsp->exp_cmdsn and rsp->max_cmdsn,
while iscsi_cmd_rsp_build() and iscsi_data_rsp_build() does.
--
Minoura Makoto <[email protected]>