Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 47879
b: refs/heads/master
c: 9ede209
h: refs/heads/master
i:
  47877: 41dbdb6
  47875: 1019d32
  47871: 2b28476
v: v3
  • Loading branch information
Jens Axboe authored and Jens Axboe committed Feb 11, 2007
1 parent 5d52ac9 commit 51efb96
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 28f95cbc3ec01f2c7d248e1a4a384f37e9c2ab16
refs/heads/master: 9ede209e83693cf3f6b64f61ab4b65f2f809cb50
16 changes: 8 additions & 8 deletions trunk/block/cfq-iosched.c
Original file line number Diff line number Diff line change
Expand Up @@ -1057,6 +1057,14 @@ cfq_dispatch_requests(request_queue_t *q, int force)
if (prev_cfqq == cfqq)
break;

/*
* So we have dispatched before in this round, if the
* next queue has idling enabled (must be sync), don't
* allow it service until the previous have continued.
*/
if (cfqd->rq_in_driver && cfq_cfqq_idle_window(cfqq))
break;

cfq_clear_cfqq_must_dispatch(cfqq);
cfq_clear_cfqq_wait_request(cfqq);
del_timer(&cfqd->idle_slice_timer);
Expand All @@ -1066,14 +1074,6 @@ cfq_dispatch_requests(request_queue_t *q, int force)
max_dispatch = 1;

dispatched += __cfq_dispatch_requests(cfqd, cfqq, max_dispatch);

/*
* If the dispatch cfqq has idling enabled and is still
* the active queue, break out.
*/
if (cfq_cfqq_idle_window(cfqq) && cfqd->active_queue)
break;

prev_cfqq = cfqq;
}

Expand Down

0 comments on commit 51efb96

Please sign in to comment.