]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] cfq-iosched: don't allow sync merges across queues
authorJens Axboe <jens.axboe@oracle.com>
Wed, 20 Dec 2006 10:04:12 +0000 (11:04 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Wed, 20 Dec 2006 10:04:12 +0000 (11:04 +0100)
commit00bd7437c16b100c812d7f0bbe7371559bd4fad2
treef7b28991b281a8c581bd3ab0bb470e158ae2206f
parent8187622d97a9494e06b850e06de94d49cd09da98
[PATCH] cfq-iosched: don't allow sync merges across queues

Currently we allow any merge, even if the io originates from different
processes. This can cause really bad starvation and unfairness, if those
ios happen to be synchronous (reads or direct writes).

So add a allow_merge hook to the io scheduler ops, so an io scheduler can
help decide whether a bio/process combination may be merged with an
existing request.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
block/cfq-iosched.c
block/elevator.c
include/linux/elevator.h