diff options
author | Jens Axboe <axboe@kernel.dk> | 2011-10-24 16:24:38 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2011-10-24 16:24:38 +0200 |
commit | 83157223defe3be490cfea048e83451b6f254216 (patch) | |
tree | fa484185d27765a13036bb43ae68d8cdb63f585b /block | |
parent | 9562ad9ab36df7ccef920d119f3b5100025db95f (diff) | |
parent | f992ae801a7dec34a4ed99a6598bbbbfb82af4fb (diff) | |
download | lwn-83157223defe3be490cfea048e83451b6f254216.tar.gz lwn-83157223defe3be490cfea048e83451b6f254216.zip |
Merge branch 'for-linus' into for-3.2/core
Diffstat (limited to 'block')
-rw-r--r-- | block/blk-core.c | 2 | ||||
-rw-r--r-- | block/blk-flush.c | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/block/blk-core.c b/block/blk-core.c index da697936d220..f65871116404 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -1769,6 +1769,8 @@ int blk_insert_cloned_request(struct request_queue *q, struct request *rq) where = ELEVATOR_INSERT_FLUSH; add_acct_request(q, rq, where); + if (where == ELEVATOR_INSERT_FLUSH) + __blk_run_queue(q); spin_unlock_irqrestore(q->queue_lock, flags); return 0; diff --git a/block/blk-flush.c b/block/blk-flush.c index 491eb30a242d..720ad607ff91 100644 --- a/block/blk-flush.c +++ b/block/blk-flush.c @@ -320,7 +320,7 @@ void blk_insert_flush(struct request *rq) return; } - BUG_ON(!rq->bio || rq->bio != rq->biotail); + BUG_ON(rq->bio != rq->biotail); /*assumes zero or single bio rq */ /* * If there's data but flush is not necessary, the request can be @@ -330,7 +330,6 @@ void blk_insert_flush(struct request *rq) if ((policy & REQ_FSEQ_DATA) && !(policy & (REQ_FSEQ_PREFLUSH | REQ_FSEQ_POSTFLUSH))) { list_add_tail(&rq->queuelist, &q->queue_head); - blk_run_queue_async(q); return; } |