diff options
| author | Weiping Zhang <[email protected]> | 2020-06-17 06:18:37 +0000 |
|---|---|---|
| committer | Jens Axboe <[email protected]> | 2020-06-18 03:33:04 +0000 |
| commit | fe35ec58f0d339221643287bbb7cee15c93a5389 (patch) | |
| tree | 57b317c47c08da4ddcc8e178e3ac7a5567f3f8b6 /tools/perf/scripts/python/compaction-times.py | |
| parent | blktrace: Avoid sparse warnings when assigning q->blk_trace (diff) | |
| download | kernel-fe35ec58f0d339221643287bbb7cee15c93a5389.tar.gz kernel-fe35ec58f0d339221643287bbb7cee15c93a5389.zip | |
block: update hctx map when use multiple maps
There is an issue when tune the number for read and write queues,
if the total queue count was not changed. The hctx->type cannot
be updated, since __blk_mq_update_nr_hw_queues will return directly
if the total queue count has not been changed.
Reproduce:
dmesg | grep "default/read/poll"
[ 2.607459] nvme nvme0: 48/0/0 default/read/poll queues
cat /sys/kernel/debug/block/nvme0n1/hctx*/type | sort | uniq -c
48 default
tune the write queues to 24:
echo 24 > /sys/module/nvme/parameters/write_queues
echo 1 > /sys/block/nvme0n1/device/reset_controller
dmesg | grep "default/read/poll"
[ 433.547235] nvme nvme0: 24/24/0 default/read/poll queues
cat /sys/kernel/debug/block/nvme0n1/hctx*/type | sort | uniq -c
48 default
The driver's hardware queue mapping is not same as block layer.
Signed-off-by: Weiping Zhang <[email protected]>
Reviewed-by: Ming Lei <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/compaction-times.py')
0 files changed, 0 insertions, 0 deletions
