diff options
| author | Jens Axboe <axboe@suse.de> | 2005-06-20 08:05:27 -0400 |
|---|---|---|
| committer | Jens Axboe <axboe@suse.de> | 2005-06-20 08:05:27 -0400 |
| commit | b823825e8e09aac6dc1ca362cd5639a87329d636 (patch) | |
| tree | f825aa09e088c160d50f2b9e878a287ebf2cb304 | |
| parent | df46b9a44ceb5af2ea2351ce8e28ae7bd840b00f (diff) | |
[PATCH] Keep the bio end_io parts inside of bio.c for blk_rq_map_kern()
Signed-off-by: Jens Axboe <axboe@suse.de>
| -rw-r--r-- | drivers/block/ll_rw_blk.c | 11 | ||||
| -rw-r--r-- | fs/bio.c | 11 |
2 files changed, 11 insertions, 11 deletions
diff --git a/drivers/block/ll_rw_blk.c b/drivers/block/ll_rw_blk.c index e30a3c93b70c..1471aca6fa18 100644 --- a/drivers/block/ll_rw_blk.c +++ b/drivers/block/ll_rw_blk.c | |||
| @@ -2177,16 +2177,6 @@ int blk_rq_unmap_user(struct request *rq, struct bio *bio, unsigned int ulen) | |||
| 2177 | 2177 | ||
| 2178 | EXPORT_SYMBOL(blk_rq_unmap_user); | 2178 | EXPORT_SYMBOL(blk_rq_unmap_user); |
| 2179 | 2179 | ||
| 2180 | static int blk_rq_map_kern_endio(struct bio *bio, unsigned int bytes_done, | ||
| 2181 | int error) | ||
| 2182 | { | ||
| 2183 | if (bio->bi_size) | ||
| 2184 | return 1; | ||
| 2185 | |||
| 2186 | bio_put(bio); | ||
| 2187 | return 0; | ||
| 2188 | } | ||
| 2189 | |||
| 2190 | /** | 2180 | /** |
| 2191 | * blk_rq_map_kern - map kernel data to a request, for REQ_BLOCK_PC usage | 2181 | * blk_rq_map_kern - map kernel data to a request, for REQ_BLOCK_PC usage |
| 2192 | * @q: request queue where request should be inserted | 2182 | * @q: request queue where request should be inserted |
| @@ -2213,7 +2203,6 @@ struct request *blk_rq_map_kern(request_queue_t *q, int rw, void *kbuf, | |||
| 2213 | if (!IS_ERR(bio)) { | 2203 | if (!IS_ERR(bio)) { |
| 2214 | if (rw) | 2204 | if (rw) |
| 2215 | bio->bi_rw |= (1 << BIO_RW); | 2205 | bio->bi_rw |= (1 << BIO_RW); |
| 2216 | bio->bi_end_io = blk_rq_map_kern_endio; | ||
| 2217 | 2206 | ||
| 2218 | rq->bio = rq->biotail = bio; | 2207 | rq->bio = rq->biotail = bio; |
| 2219 | blk_rq_bio_prep(q, rq, bio); | 2208 | blk_rq_bio_prep(q, rq, bio); |
| @@ -701,6 +701,16 @@ void bio_unmap_user(struct bio *bio) | |||
| 701 | bio_put(bio); | 701 | bio_put(bio); |
| 702 | } | 702 | } |
| 703 | 703 | ||
| 704 | static int bio_map_kern_endio(struct bio *bio, unsigned int bytes_done, int err) | ||
| 705 | { | ||
| 706 | if (bio->bi_size) | ||
| 707 | return 1; | ||
| 708 | |||
| 709 | bio_put(bio); | ||
| 710 | return 0; | ||
| 711 | } | ||
| 712 | |||
| 713 | |||
| 704 | static struct bio *__bio_map_kern(request_queue_t *q, void *data, | 714 | static struct bio *__bio_map_kern(request_queue_t *q, void *data, |
| 705 | unsigned int len, unsigned int gfp_mask) | 715 | unsigned int len, unsigned int gfp_mask) |
| 706 | { | 716 | { |
| @@ -734,6 +744,7 @@ static struct bio *__bio_map_kern(request_queue_t *q, void *data, | |||
| 734 | offset = 0; | 744 | offset = 0; |
| 735 | } | 745 | } |
| 736 | 746 | ||
| 747 | bio->bi_end_io = bio_map_kern_endio; | ||
| 737 | return bio; | 748 | return bio; |
| 738 | } | 749 | } |
| 739 | 750 | ||
