cfq: Remove wait_request flag when idle time is being deleted
authorGui Jianfeng <guijianfeng@cn.fujitsu.com>
Thu, 10 Dec 2009 08:38:39 +0000 (09:38 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Thu, 10 Dec 2009 08:38:39 +0000 (09:38 +0100)
Remove wait_request flag when idle time is being deleted, otherwise
it'll hit this path every time when a request is enqueued.

Signed-off-by: Gui Jianfeng <guijianfeng@cn.fujitsu.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
block/cfq-iosched.c

index 69ecee7f4ad47b8b0f2a9c80bf66a7524130eef9..96f59ae5b6e96418f383d2c148a8011aaf5b18c0 100644 (file)
@@ -3202,6 +3202,7 @@ cfq_rq_enqueued(struct cfq_data *cfqd, struct cfq_queue *cfqq,
                        if (blk_rq_bytes(rq) > PAGE_CACHE_SIZE ||
                            cfqd->busy_queues > 1) {
                                del_timer(&cfqd->idle_slice_timer);
+                               cfq_clear_cfqq_wait_request(cfqq);
                                __blk_run_queue(cfqd->queue);
                        } else
                                cfq_mark_cfqq_must_dispatch(cfqq);