Re: bfq: update internal depth state when queue depth changes

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

 



Hi Jens,
I'm not finding this fix in either current rc or for-5.2.  Am I missing
something?

Thanks,
Paolo

> Il giorno 19 gen 2019, alle ore 15:36, Jens Axboe <axboe@xxxxxxxxx> ha scritto:
> 
> On 1/19/19 4:13 AM, Kai Krakow wrote:
>> Am Fr., 18. Jan. 2019 um 18:34 Uhr schrieb Jens Axboe <axboe@xxxxxxxxx>:
>>> 
>>> A previous commit moved the shallow depth and BFQ depth map calculations
>>> to be done at init time, moving it outside of the hotter IO path. This
>>> potentially causes hangs if the users changes the depth of the scheduler
>>> map, by writing to the 'nr_requests' sysfs file for that device.
>>> 
>>> Add a blk-mq-sched hook that allows blk-mq to inform the scheduler if
>>> the depth changes, so that the scheduler can update its internal state.
>>> 
>>> Reported-by: Paolo Valente <paolo.valente@xxxxxxxxxx>
>>> Fixes: f0635b8a416e ("bfq: calculate shallow depths at init time")
>>> Signed-off-by: Jens Axboe <axboe@xxxxxxxxx>
>> 
>> Works fine here in 4.18 as far as I could test (running a full backup,
>> some compilations and Gentoo package upgrades, filling memory with web
>> browsers to force swapping).
>> 
>> $ grep ^ /sys/block/*/queue/nr_requests
>> /sys/block/bcache0/queue/nr_requests:128
>> /sys/block/bcache1/queue/nr_requests:128
>> /sys/block/bcache2/queue/nr_requests:128
>> /sys/block/bcache3/queue/nr_requests:128
>> /sys/block/bcache4/queue/nr_requests:128
>> /sys/block/sda/queue/nr_requests:256
>> /sys/block/sdb/queue/nr_requests:256
>> /sys/block/sdc/queue/nr_requests:256
>> /sys/block/sdd/queue/nr_requests:256
>> /sys/block/sde/queue/nr_requests:256
>> /sys/block/sdf/queue/nr_requests:256
>> 
>> Tested-by: Kai Krakow <kai@xxxxxxxxxxx>
> 
> Great, thanks for testing!
> 
> -- 
> Jens Axboe
> 





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux