aboutsummaryrefslogtreecommitdiffstats
path: root/block/blk-throttle.c
diff options
context:
space:
mode:
authorJens Axboe <jaxboe@fusionio.com>2011-03-10 02:58:35 -0500
committerJens Axboe <jaxboe@fusionio.com>2011-03-10 02:58:35 -0500
commit4c63f5646e405b5010cc9499419060bf2e838f5b (patch)
treedf91ba315032c8ec4aafeb3ab96fdfa7c6c656e1 /block/blk-throttle.c
parentcafb0bfca1a73efd6d8a4a6a6a716e6134b96c24 (diff)
parent69d60eb96ae8a73cf9b79cf28051caf973006011 (diff)
Merge branch 'for-2.6.39/stack-plug' into for-2.6.39/core
Conflicts: block/blk-core.c block/blk-flush.c drivers/md/raid1.c drivers/md/raid10.c drivers/md/raid5.c fs/nilfs2/btnode.c fs/nilfs2/mdt.c Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'block/blk-throttle.c')
-rw-r--r--block/blk-throttle.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/block/blk-throttle.c b/block/blk-throttle.c
index 32dd3e4b041d..37abbfc68590 100644
--- a/block/blk-throttle.c
+++ b/block/blk-throttle.c
@@ -768,6 +768,7 @@ static int throtl_dispatch(struct request_queue *q)
768 unsigned int nr_disp = 0; 768 unsigned int nr_disp = 0;
769 struct bio_list bio_list_on_stack; 769 struct bio_list bio_list_on_stack;
770 struct bio *bio; 770 struct bio *bio;
771 struct blk_plug plug;
771 772
772 spin_lock_irq(q->queue_lock); 773 spin_lock_irq(q->queue_lock);
773 774
@@ -796,9 +797,10 @@ out:
796 * immediate dispatch 797 * immediate dispatch
797 */ 798 */
798 if (nr_disp) { 799 if (nr_disp) {
800 blk_start_plug(&plug);
799 while((bio = bio_list_pop(&bio_list_on_stack))) 801 while((bio = bio_list_pop(&bio_list_on_stack)))
800 generic_make_request(bio); 802 generic_make_request(bio);
801 blk_unplug(q); 803 blk_finish_plug(&plug);
802 } 804 }
803 return nr_disp; 805 return nr_disp;
804} 806}