linux-stable/block
Jan Kara 149321a611 cfq-iosched: Fix regression in bonnie++ rewrite performance
Commit 9a7f38c42c (cfq-iosched: Convert from jiffies to nanoseconds)
broke the condition for detecting starved sync IO in
cfq_completed_request() because rq->start_time remained in jiffies but
we compared it with nanosecond values. This manifested as a regression
in bonnie++ rewrite performance because we always ended up considering
sync IO starved and thus never increased async IO queue depth.

Since rq->start_time is used in a lot of places, converting it to ns
values would be non-trivial. So just revert the condition in CFQ to use
comparison with jiffies. This will lead to suboptimal results if
cfq_fifo_expire[1] will ever come close to 1 jiffie but so far we are
relatively far from that with the storage used with CFQ (the default
value is 128 ms).

Fixes: 9a7f38c42c
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jens Axboe <axboe@fb.com>
2016-06-28 08:21:48 -06:00
..
partitions
badblocks.c
bio-integrity.c block/bio-integrity.c: Add #include "blk.h" 2016-06-14 09:09:17 -06:00
bio.c
blk-cgroup.c block/blk-cgroup.c: Declare local symbols static 2016-06-14 09:09:33 -06:00
blk-core.c cfq-iosched: temporarily boost queue priority for idle classes 2016-06-09 16:15:01 -06:00
blk-exec.c
blk-flush.c block, drivers, fs: rename REQ_FLUSH to REQ_PREFLUSH 2016-06-07 13:41:38 -06:00
blk-integrity.c
blk-ioc.c
blk-lib.c block discard: use bio set op accessor 2016-06-07 13:41:38 -06:00
blk-map.c
blk-merge.c block: convert merge/insert code to check for REQ_OPs. 2016-06-07 13:41:38 -06:00
blk-mq-cpu.c
blk-mq-cpumap.c
blk-mq-sysfs.c
blk-mq-tag.c
blk-mq-tag.h
blk-mq.c blk-mq: actually hook up defer list when running requests 2016-06-09 09:55:15 -06:00
blk-mq.h
blk-settings.c
blk-softirq.c
blk-sysfs.c
blk-tag.c
blk-throttle.c
blk-timeout.c
blk.h
bounce.c
bsg-lib.c
bsg.c
cfq-iosched.c cfq-iosched: Fix regression in bonnie++ rewrite performance 2016-06-28 08:21:48 -06:00
cmdline-parser.c
compat_ioctl.c
deadline-iosched.c block: Convert fifo_time from ulong to u64 2016-06-28 08:21:44 -06:00
elevator.c block: prepare elevator to use REQ_OPs. 2016-06-07 13:41:38 -06:00
genhd.c
ioctl.c
ioprio.c
Kconfig
Kconfig.iosched
Makefile
noop-iosched.c
partition-generic.c block/partition-generic.c: Remove a set-but-not-used variable 2016-06-14 09:09:15 -06:00
scsi_ioctl.c
t10-pi.c