On 6/25/2014 11:48 AM, Sagi Grimberg wrote:
<SNIP>
I made the patch below which should fix both bidi
support in iscsi and also WRITE_SAME (and similar commands) support.
I'm a bit confused, for all commands (bidi or not) the iscsi header
data_length
should describe the scsi_data_buffer length, bidi information will lie
in AHS header.
(in case bidi will ever co-exist with PI, we might need another helper
that will look
in req->special + PI, something like scsi_bidi_transfer_length)
So why not keep scsi_transfer_length to work on sdb length (take
scsi_bufflen(scmnd) or
scsi_out(scmnd)->length as MKP suggested) and that's it - don't touch
libiscsi.
Let me test that.
So I tested a bidirectional command using:
$ sg_raw --infile=/root/filex --send=1024 --request=1024
--outfile=/root/filex "/dev/bsg/7:0:0:0" 53 00 00 00 00 00 00 00 02 00
And I see:
kernel: session1: iscsi_prep_scsi_cmd_pdu iscsi prep [bidirectional cid
0 sc ffff880468ca1e00 cdb 0x53 itt 0x16 len 1024 bidi_len 1024 cmdsn 223
win 64]
This confirms what I wrote above, so AFAICT no additional fix is
required for libiscsi wrt bidi commands support.
Mike?
Sagi.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html