On 1/19/19 4:13 AM, Kai Krakow wrote:
> Am Fr., 18. Jan. 2019 um 18:34 Uhr schrieb Jens Axboe <[email protected]>:
>>
>> 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 <[email protected]>
>> Fixes: f0635b8a416e ("bfq: calculate shallow depths at init time")
>> Signed-off-by: Jens Axboe <[email protected]>
> 
> 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 <[email protected]>

Great, thanks for testing!

-- 
Jens Axboe

Reply via email to