cfq-iosched: Respect ioprio_class when preempting
authorDivyesh Shah <dpshah@google.com>
Thu, 7 Jan 2010 02:58:20 +0000 (18:58 -0800)
committerJens Axboe <jens.axboe@oracle.com>
Mon, 11 Jan 2010 15:16:18 +0000 (16:16 +0100)
commit875feb63b9567442be73efbcc9a8470e376d6423
tree554331e9634a5327daa755bb1b3338697866018b
parent7af92f8754b87bc78cbfd447d5f4096b25c46682
cfq-iosched: Respect ioprio_class when preempting

In cfq_should_preempt(), we currently allow some cases where a non-RT request
can preempt an ongoing RT cfqq timeslice. This should not happen.
Examples include:

o A sync_noidle wl type non-RT request pre-empting a sync_noidle wl type cfqq
  on which we are idling.
o Once we have per-cgroup async queues, a non-RT sync request pre-empting a RT
  async cfqq.

Signed-off-by: Divyesh Shah<dpshah@google.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
block/cfq-iosched.c