diff options
Diffstat (limited to 'drivers/block/drbd/drbd_req.c')
-rw-r--r-- | drivers/block/drbd/drbd_req.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c index d2d61af034ec..6bac415358d7 100644 --- a/drivers/block/drbd/drbd_req.c +++ b/drivers/block/drbd/drbd_req.c @@ -945,7 +945,7 @@ drbd_submit_req_private_bio(struct drbd_request *req) bio_endio(bio, -EIO); } -int __drbd_make_request(struct drbd_conf *mdev, struct bio *bio, unsigned long start_time) +void __drbd_make_request(struct drbd_conf *mdev, struct bio *bio, unsigned long start_time) { const int rw = bio_rw(bio); struct bio_and_error m = { NULL, }; @@ -960,7 +960,7 @@ int __drbd_make_request(struct drbd_conf *mdev, struct bio *bio, unsigned long s * if user cannot handle io errors, that's not our business. */ dev_err(DEV, "could not kmalloc() req\n"); bio_endio(bio, -ENOMEM); - return 0; + return; } req->start_time = start_time; @@ -1039,7 +1039,7 @@ int __drbd_make_request(struct drbd_conf *mdev, struct bio *bio, unsigned long s drbd_submit_req_private_bio(req); /* once we have submitted, we must no longer look at req, * it may already be destroyed. */ - return 0; + return; } else if (no_remote) { nodata: if (__ratelimit(&drbd_ratelimit_state)) @@ -1054,7 +1054,7 @@ out: if (m.bio) complete_master_bio(mdev, &m); - return 0; + return; } int drbd_make_request(struct request_queue *q, struct bio *bio) @@ -1070,9 +1070,8 @@ int drbd_make_request(struct request_queue *q, struct bio *bio) D_ASSERT(bio->bi_size > 0); D_ASSERT(IS_ALIGNED(bio->bi_size, 512)); - do { - inc_ap_bio(mdev); - } while (__drbd_make_request(mdev, bio, start_time)); + inc_ap_bio(mdev); + __drbd_make_request(mdev, bio, start_time); return 0; } |