Re: [PATCH v2 1/3] scsi_cmnd: Introduce scsi_transfer_length helper

Boaz Harrosh
2014-07-27T08:45:11Z

On 06/25/2014 04:17 AM, Vladislav Bolkhovitin wrote:
> Martin K. Petersen, on 06/23/2014 06:58 PM wrote:
>>>>>>> "Mike" == Mike Christie <michaelc@cs.wisc.edu> writes:
>>>> + unsigned int xfer_len = blk_rq_bytes(scmd->request);
>>
>> Mike> Can you do bidi and dif/dix?
>>
>> Nope.
>
> Correction: at the moment.
>
> There is a proposal of READ GATHERED command, which is bidirectional and potentially
> DIF/DIX.
>

That's all very good. But current infrastructure can not support BIDI+DIFF.
Because you we'll need *two* diff vectors one for each side.

Now in fact at the block layer this is actually supported. Since BIDI is
two requests, and each can have its own DIFF bio. But on the scsi layer
this is not implemented.

So I'd say: *For now DIFF and BIDI are mutually exclusive.*

(You'll need someone to love these new commands a lot in order to
enable it)

> Vlad
>

Cheers
Boaz