Re: [PATCH v3 03/13] mpt3sas: SGL to PRP Translation for I/Os to NVMe devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Martin,
This code was added to detect holes, when we started testing with 4.9
kernel. when we disabled "use_blk_mq" and no merges, we are hitting
issues with holes. Anyhow In latest upstream, it got fixed with this
commit 5a8d75a1b8c99bdc926ba69b7b7dbe4fae81a5af

So we are removing the code related to hole detection .

Thanks,
Suganath Prabu S



On Tue, Aug 8, 2017 at 9:42 PM, Martin K. Petersen
<martin.petersen@xxxxxxxxxx> wrote:
>
> Suganath,
>
>> +     /*
>> +      ** Below code detects gaps/holes in IO data buffers.
>> +      ** What does holes/gaps mean?
>> +      ** Any SGE except first one in a SGL starts at non NVME page size
>> +      ** aligned address OR Any SGE except last one in a SGL ends at
>> +      ** non NVME page size boundary.
>> +      **
>> +      ** Driver has already informed block layer by setting boundary rules
>> +      ** for bio merging done at NVME page size boundary calling kernel API
>> +      ** blk_queue_virt_boundary inside slave_config.
>> +      ** Still there is possibility of IO coming with holes to driver because
>> +      ** of IO merging done by IO scheduler.
>
> All this SGL to PRP code needs to go.
>
> If you are seeing anything that's not a valid PRP after setting the
> queue virt boundary then there's a block layer bug that needs to be
> debugged and fixed. Regardless of whether you are using an I/O scheduler
> or not.
>
> --
> Martin K. Petersen      Oracle Linux Engineering



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux