diff options
author | Jens Axboe <axboe@suse.de> | 2006-07-20 08:54:05 -0400 |
---|---|---|
committer | Jens Axboe <axboe@nelson.home.kernel.dk> | 2006-09-30 14:29:40 -0400 |
commit | dc72ef4ae35c2016fb594bcc85ce871376682174 (patch) | |
tree | c0c78879addf0d65adcc8f8cce01165fa2502dac /block/as-iosched.c | |
parent | 981a79730d586335ef8f942c83bdf2b1de6d4e3d (diff) |
[PATCH] Add blk_start_queueing() helper
CFQ implements this on its own now, but it's really block layer
knowledge. Tells a device queue to start dispatching requests to
the driver, taking care to unplug if needed. Also fixes the issue
where as/cfq will invoke a stopped queue, which we really don't
want.
Signed-off-by: Jens Axboe <axboe@suse.de>
Diffstat (limited to 'block/as-iosched.c')
-rw-r--r-- | block/as-iosched.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/block/as-iosched.c b/block/as-iosched.c index f6dc95489316..bc13dc0b29be 100644 --- a/block/as-iosched.c +++ b/block/as-iosched.c | |||
@@ -1280,8 +1280,7 @@ static void as_work_handler(void *data) | |||
1280 | unsigned long flags; | 1280 | unsigned long flags; |
1281 | 1281 | ||
1282 | spin_lock_irqsave(q->queue_lock, flags); | 1282 | spin_lock_irqsave(q->queue_lock, flags); |
1283 | if (!as_queue_empty(q)) | 1283 | blk_start_queueing(q); |
1284 | q->request_fn(q); | ||
1285 | spin_unlock_irqrestore(q->queue_lock, flags); | 1284 | spin_unlock_irqrestore(q->queue_lock, flags); |
1286 | } | 1285 | } |
1287 | 1286 | ||