Browse Source

drbd: __drbd_make_request() is now void

The previous commit causes __drbd_make_request() to always return 0.
Change it to void.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Lars Ellenberg 13 years ago
parent
commit
5df69ece6e
3 changed files with 9 additions and 11 deletions
  1. 1 1
      drivers/block/drbd/drbd_int.h
  2. 2 3
      drivers/block/drbd/drbd_main.c
  3. 6 7
      drivers/block/drbd/drbd_req.c

+ 1 - 1
drivers/block/drbd/drbd_int.h

@@ -1403,7 +1403,7 @@ extern void conn_free_crypto(struct drbd_tconn *tconn);
 extern int proc_details;
 
 /* drbd_req */
-extern int __drbd_make_request(struct drbd_conf *, struct bio *, unsigned long);
+extern void __drbd_make_request(struct drbd_conf *, struct bio *, unsigned long);
 extern int drbd_make_request(struct request_queue *q, struct bio *bio);
 extern int drbd_read_remote(struct drbd_conf *mdev, struct drbd_request *req);
 extern int drbd_merge_bvec(struct request_queue *q, struct bvec_merge_data *bvm, struct bio_vec *bvec);

+ 2 - 3
drivers/block/drbd/drbd_main.c

@@ -2236,9 +2236,8 @@ static void do_retry(struct work_struct *ws)
 
 		/* We are not just doing generic_make_request(),
 		 * as we want to keep the start_time information. */
-		do {
-			inc_ap_bio(mdev);
-		} while(__drbd_make_request(mdev, bio, start_time));
+		inc_ap_bio(mdev);
+		__drbd_make_request(mdev, bio, start_time);
 	}
 }
 

+ 6 - 7
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;
 }