summaryrefslogtreecommitdiff
path: root/include/linux/blkdev.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@suse.de>2002-05-28 18:40:17 -0700
committerJens Axboe <axboe@suse.de>2002-05-28 18:40:17 -0700
commit8b1c3857a80290efb2ccf112d3706c073e5f45db (patch)
tree74e6a2f374b66bfd898d2fa94ce9a2c3d4a77aad /include/linux/blkdev.h
parenteba5b46c3c8002cf528a0472b70356d77438ca98 (diff)
[PATCH] block plugging reworked/fixed
This implements what we discussed, basically just maintaing a plug list from the block layer as a direct parallel to the tq_disk task queue we had before. blk_run_queues() now splices the blk_plug_list to avoid holding the blk_plug_lock across all the request_fn calls.
Diffstat (limited to 'include/linux/blkdev.h')
-rw-r--r--include/linux/blkdev.h8
1 files changed, 1 insertions, 7 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index b9972fe4fc70..407b176d7dad 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -8,7 +8,6 @@
#include <linux/list.h>
#include <linux/pagemap.h>
#include <linux/backing-dev.h>
-#include <linux/interrupt.h>
#include <asm/scatterlist.h>
@@ -137,11 +136,6 @@ struct blk_queue_tag {
int max_depth;
};
-struct blk_plug {
- struct list_head list;
- struct tasklet_struct task;
-};
-
/*
* Default nr free requests per queue, ll_rw_blk will scale it down
* according to available RAM at init time
@@ -183,7 +177,7 @@ struct request_queue
unsigned long bounce_pfn;
int bounce_gfp;
- struct blk_plug plug;
+ struct list_head plug_list;
/*
* various queue flags, see QUEUE_* below