summaryrefslogtreecommitdiffstats
path: root/block/blk.h
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2008-01-29 14:53:40 +0100
committerJens Axboe <jens.axboe@oracle.com>2008-01-29 21:55:08 +0100
commit86db1e29772372155db08ff48a9ceb76e11a2ad1 (patch)
tree312f38eb3245873c476c50f816b85610fef9615a /block/blk.h
parentblock: split tag and sysfs handling from blk-core.c (diff)
downloadlinux-86db1e29772372155db08ff48a9ceb76e11a2ad1.tar.xz
linux-86db1e29772372155db08ff48a9ceb76e11a2ad1.zip
block: continue ll_rw_blk.c splitup
Adds files for barrier handling, rq execution, io context handling, mapping data to requests, and queue settings. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to '')
-rw-r--r--block/blk.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/block/blk.h b/block/blk.h
index d88549df1b09..083394007199 100644
--- a/block/blk.h
+++ b/block/blk.h
@@ -1,11 +1,28 @@
#ifndef BLK_INTERNAL_H
#define BLK_INTERNAL_H
+/* Amount of time in which a process may batch requests */
+#define BLK_BATCH_TIME (HZ/50UL)
+
+/* Number of requests a "batching" process may submit */
+#define BLK_BATCH_REQ 32
+
extern struct kmem_cache *blk_requestq_cachep;
extern struct kobj_type blk_queue_ktype;
+void rq_init(struct request_queue *q, struct request *rq);
+void init_request_from_bio(struct request *req, struct bio *bio);
+void blk_rq_bio_prep(struct request_queue *q, struct request *rq,
+ struct bio *bio);
+int ll_back_merge_fn(struct request_queue *q, struct request *req,
+ struct bio *bio);
void __blk_queue_free_tags(struct request_queue *q);
+void blk_unplug_work(struct work_struct *work);
+void blk_unplug_timeout(unsigned long data);
+
+struct io_context *current_io_context(gfp_t gfp_flags, int node);
+
void blk_queue_congestion_threshold(struct request_queue *q);
/*