diff --git a/[refs] b/[refs] index a5111785de40..3b51a330fade 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 25776e3594f841b7fae7b33ebecf009a0a55bed1 +refs/heads/master: ae818a38d4755ba4c16a22a8eacec859511a5393 diff --git a/trunk/block/cfq-iosched.c b/trunk/block/cfq-iosched.c index 5d2047b93eb5..85d188a30f82 100644 --- a/trunk/block/cfq-iosched.c +++ b/trunk/block/cfq-iosched.c @@ -2193,10 +2193,9 @@ static void cfq_idle_class_timer(unsigned long data) * race with a non-idle queue, reset timer */ end = cfqd->last_end_request + CFQ_IDLE_GRACE; - if (!time_after_eq(jiffies, end)) { - cfqd->idle_class_timer.expires = end; - add_timer(&cfqd->idle_class_timer); - } else + if (!time_after_eq(jiffies, end)) + mod_timer(&cfqd->idle_class_timer, end); + else cfq_schedule_dispatch(cfqd); spin_unlock_irqrestore(cfqd->queue->queue_lock, flags);