aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2005-11-11 06:30:24 -0500
committerJames Bottomley <jejb@mulgrave.(none)>2005-12-14 22:00:50 -0500
commit6e39b69e7ea9205c5f80aeac3ef999ab8fb1a4cc (patch)
treeabf6bf248970a249cc15e0c3df75ae42833be084
parent9e1fe9314cb5649b2dc73690f2cd8d0068e633d9 (diff)
[SCSI] export blk layer functions needed for blk_execute_rq_nowait
To send async requests we need these two functions exported. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-rw-r--r--block/ll_rw_blk.c6
-rw-r--r--include/linux/blkdev.h5
2 files changed, 10 insertions, 1 deletions
diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c
index 99c9ca6d5992..c525b5a2b598 100644
--- a/block/ll_rw_blk.c
+++ b/block/ll_rw_blk.c
@@ -2306,6 +2306,8 @@ void blk_execute_rq_nowait(request_queue_t *q, struct gendisk *bd_disk,
2306 generic_unplug_device(q); 2306 generic_unplug_device(q);
2307} 2307}
2308 2308
2309EXPORT_SYMBOL_GPL(blk_execute_rq_nowait);
2310
2309/** 2311/**
2310 * blk_execute_rq - insert a request into queue for execution 2312 * blk_execute_rq - insert a request into queue for execution
2311 * @q: queue to insert the request in 2313 * @q: queue to insert the request in
@@ -2444,7 +2446,7 @@ void disk_round_stats(struct gendisk *disk)
2444/* 2446/*
2445 * queue lock must be held 2447 * queue lock must be held
2446 */ 2448 */
2447static void __blk_put_request(request_queue_t *q, struct request *req) 2449void __blk_put_request(request_queue_t *q, struct request *req)
2448{ 2450{
2449 struct request_list *rl = req->rl; 2451 struct request_list *rl = req->rl;
2450 2452
@@ -2473,6 +2475,8 @@ static void __blk_put_request(request_queue_t *q, struct request *req)
2473 } 2475 }
2474} 2476}
2475 2477
2478EXPORT_SYMBOL_GPL(__blk_put_request);
2479
2476void blk_put_request(struct request *req) 2480void blk_put_request(struct request *req)
2477{ 2481{
2478 unsigned long flags; 2482 unsigned long flags;
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index a33a31e71bbc..9a68716dcf75 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -558,6 +558,7 @@ extern void blk_unregister_queue(struct gendisk *disk);
558extern void register_disk(struct gendisk *dev); 558extern void register_disk(struct gendisk *dev);
559extern void generic_make_request(struct bio *bio); 559extern void generic_make_request(struct bio *bio);
560extern void blk_put_request(struct request *); 560extern void blk_put_request(struct request *);
561extern void __blk_put_request(request_queue_t *, struct request *);
561extern void blk_end_sync_rq(struct request *rq); 562extern void blk_end_sync_rq(struct request *rq);
562extern void blk_attempt_remerge(request_queue_t *, struct request *); 563extern void blk_attempt_remerge(request_queue_t *, struct request *);
563extern struct request *blk_get_request(request_queue_t *, int, gfp_t); 564extern struct request *blk_get_request(request_queue_t *, int, gfp_t);
@@ -579,6 +580,10 @@ extern int blk_rq_map_kern(request_queue_t *, struct request *, void *, unsigned
579extern int blk_rq_map_user_iov(request_queue_t *, struct request *, struct sg_iovec *, int); 580extern int blk_rq_map_user_iov(request_queue_t *, struct request *, struct sg_iovec *, int);
580extern int blk_execute_rq(request_queue_t *, struct gendisk *, 581extern int blk_execute_rq(request_queue_t *, struct gendisk *,
581 struct request *, int); 582 struct request *, int);
583extern void blk_execute_rq_nowait(request_queue_t *, struct gendisk *,
584 struct request *, int,
585 void (*done)(struct request *));
586
582static inline request_queue_t *bdev_get_queue(struct block_device *bdev) 587static inline request_queue_t *bdev_get_queue(struct block_device *bdev)
583{ 588{
584 return bdev->bd_disk->queue; 589 return bdev->bd_disk->queue;