summaryrefslogtreecommitdiffstats
path: root/include/linux/blkdev.h
diff options
context:
space:
mode:
authorJens Axboe <jaxboe@fusionio.com>2011-03-02 11:08:00 -0500
committerJens Axboe <jaxboe@fusionio.com>2011-03-10 08:45:54 +0100
commit3cca6dc1c81e2407928dc4c6105252146fd3924f (patch)
treeb78b0d93e7c02abdc37e1d5a6204ab6b94d56fd4 /include/linux/blkdev.h
parent53f22956effe1c9e7961b8c6e4362ecca5e460b7 (diff)
downloadlinux-3cca6dc1c81e2407928dc4c6105252146fd3924f.tar.gz
linux-3cca6dc1c81e2407928dc4c6105252146fd3924f.tar.bz2
linux-3cca6dc1c81e2407928dc4c6105252146fd3924f.zip
block: add API for delaying work/request_fn a little bit
Currently we use plugging for that, but as plugging is going away, we need an alternative mechanism. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'include/linux/blkdev.h')
-rw-r--r--include/linux/blkdev.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index e3ee74fc5903..f55b2a8b6610 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -300,6 +300,11 @@ struct request_queue
unsigned long unplug_delay; /* After this many jiffies */
struct work_struct unplug_work;
+ /*
+ * Delayed queue handling
+ */
+ struct delayed_work delay_work;
+
struct backing_dev_info backing_dev_info;
/*
@@ -677,6 +682,7 @@ extern int blk_insert_cloned_request(struct request_queue *q,
extern void blk_plug_device(struct request_queue *);
extern void blk_plug_device_unlocked(struct request_queue *);
extern int blk_remove_plug(struct request_queue *);
+extern void blk_delay_queue(struct request_queue *, unsigned long);
extern void blk_recount_segments(struct request_queue *, struct bio *);
extern int scsi_cmd_ioctl(struct request_queue *, struct gendisk *, fmode_t,
unsigned int, void __user *);