Re: SCSI regression

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

 



On 8/24/18 5:16 PM, Ming Lei wrote:
> Hi,
> 
> On Fri, Aug 24, 2018 at 04:20:41PM -0600, Jens Axboe wrote:
>> Hi,
>>
>> Was testing other things today, but ended up with this:
>>
>> # echo "write through" > /sys/block/sde/device/scsi_disk/4:0:0:0/cache_type
>>
>> hanging. Looking closer, the request is successfully queued and the
>> caller is waiting on rq execution and completion, but the request is
>> sitting in the hctx->dispatch list and is continually being attempted
>> issued, but gets a BLK_STS_RESOURCE return.
> 
> Just run fio randwrite and 'dbench -s' on virtio-scsi/usb-storage
> after setting 'write through', looks not see such issue.
> 
> Also not see such kind of issue on blktests/xfstests against today's
> next tree too.
> 
> Could you share a bit more(disk, io sched, dmesg log, workload) about
> how to reproduce it? Is it in normal IO path or EH?

You're misunderstanding. The echo "write through" is the one that hangs,
not subsequent IO. As written above, that first spawns a TUR and that
request is being inserted, and the caller ends up waiting for it to
complete off blk_execute_rq(). But the request itself sits on the
dispatch list, gets dispatched, and gets BLK_STS_RESOURCE off
->queue_rq(). It goes back on the dispatch list, and the process repeats
indefinitely since it always gets a BUSY return. On the SCSI side, what
happens is that scsi_host_queue_ready() keeps returning false, which is
why we keep returning BLK_STS_RESOURCE and not making any progress at
all.

Hope that helps...

-- 
Jens Axboe




[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