--- /usr/src/linux-2.6/drivers/block/cfq-iosched.c 2005-01-17 17:28:05.000000000 +0100 +++ drivers/block/cfq-iosched.c 2005-01-18 11:17:43.000000000 +0100 @@ -2117,9 +2118,7 @@ * that would be an extremely rare OOM situation */ cfqd->rq_starved = 1; - if (!cfqd->busy_queues) - kblockd_schedule_work(&cfqd->unplug_work); - + kblockd_schedule_work(&cfqd->unplug_work); spin_unlock_irqrestore(q->queue_lock, flags); return 1; } @@ -2209,8 +2208,7 @@ expire: cfq_slice_expired(cfqd, 0); out_kick: - if (cfqd->busy_queues) - kblockd_schedule_work(&cfqd->unplug_work); + kblockd_schedule_work(&cfqd->unplug_work); out_cont: spin_unlock_irqrestore(cfqd->queue->queue_lock, flags); }