]> git.baikalelectronics.ru Git - kernel.git/commit
block CFQ: avoid moving request to different queue
authorShaohua Li <shli@kernel.org>
Tue, 6 Nov 2012 11:39:51 +0000 (12:39 +0100)
committerJens Axboe <axboe@kernel.dk>
Tue, 6 Nov 2012 11:39:51 +0000 (12:39 +0100)
commit7da026ee880c03568a78b4c97e2b345e808b33a2
tree6e812a7d199557452117ed5e53c98e20cf33f893
parent110a3aabcda3103953ddf3a66926d7280f13deed
block CFQ: avoid moving request to different queue

request is queued in cfqq->fifo list. Looks it's possible we are moving a
request from one cfqq to another in request merge case. In such case, adjusting
the fifo list order doesn't make sense and is impossible if we don't iterate
the whole fifo list.

My test does hit one case the two cfqq are different, but didn't cause kernel
crash, maybe it's because fifo list isn't used frequently. Anyway, from the
code logic, this is buggy.

I thought we can re-enable the recusive merge logic after this is fixed.

Signed-off-by: Shaohua Li <shli@fusionio.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/cfq-iosched.c