drbd: Remove redundant check
authorAndreas Gruenbacher <agruen@linbit.com>
Fri, 28 Jan 2011 12:28:51 +0000 (13:28 +0100)
committerPhilipp Reisner <philipp.reisner@linbit.com>
Fri, 14 Oct 2011 14:47:52 +0000 (16:47 +0200)
Opening a device only succeeds on a primary node, or when explicitly
setting the allow_oos module parameter to allow opening the device
read-only on a secondary node.  There is no other way that a request can
get into drbd_make_request(), so this code cannot trigger.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
drivers/block/drbd/drbd_req.c

index aab1acd..cfa5fba 100644 (file)
@@ -997,39 +997,12 @@ fail_and_free_req:
        return ret;
 }
 
-/* helper function for drbd_make_request
- * if we can determine just by the mdev (state) that this request will fail,
- * return 1
- * otherwise return 0
- */
-static int drbd_fail_request_early(struct drbd_conf *mdev, int is_write)
-{
-       if (mdev->state.role != R_PRIMARY &&
-               (!allow_oos || is_write)) {
-               if (__ratelimit(&drbd_ratelimit_state)) {
-                       dev_err(DEV, "Process %s[%u] tried to %s; "
-                           "since we are not in Primary state, "
-                           "we cannot allow this\n",
-                           current->comm, current->pid,
-                           is_write ? "WRITE" : "READ");
-               }
-               return 1;
-       }
-
-       return 0;
-}
-
 int drbd_make_request(struct request_queue *q, struct bio *bio)
 {
        unsigned int s_enr, e_enr;
        struct drbd_conf *mdev = (struct drbd_conf *) q->queuedata;
        unsigned long start_time;
 
-       if (drbd_fail_request_early(mdev, bio_data_dir(bio) & WRITE)) {
-               bio_endio(bio, -EPERM);
-               return 0;
-       }
-
        start_time = jiffies;
 
        /*