]> git.baikalelectronics.ru Git - kernel.git/commitdiff
nvme: multipath: round-robin: eliminate "fallback" variable
authorMartin Wilck <mwilck@suse.com>
Thu, 6 Aug 2020 13:19:32 +0000 (15:19 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 21 Aug 2020 23:14:27 +0000 (17:14 -0600)
If we find an optimized path, we quit the loop immediately. Thus we can use
just one variable for the next path, slighly simplifying the code.

Signed-off-by: Martin Wilck <mwilck@suse.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/multipath.c

index a64dfff0d0ceb8813abde366a3ac55cd91399292..760f625cefc8d8ed75df2fed2a00669361da12be 100644 (file)
@@ -233,7 +233,7 @@ static struct nvme_ns *nvme_next_ns(struct nvme_ns_head *head,
 static struct nvme_ns *nvme_round_robin_path(struct nvme_ns_head *head,
                int node, struct nvme_ns *old)
 {
-       struct nvme_ns *ns, *found, *fallback = NULL;
+       struct nvme_ns *ns, *found = NULL;
 
        if (list_is_singular(&head->list)) {
                if (nvme_path_is_disabled(old))
@@ -252,7 +252,7 @@ static struct nvme_ns *nvme_round_robin_path(struct nvme_ns_head *head,
                        goto out;
                }
                if (ns->ana_state == NVME_ANA_NONOPTIMIZED)
-                       fallback = ns;
+                       found = ns;
        }
 
        /*
@@ -263,12 +263,11 @@ static struct nvme_ns *nvme_round_robin_path(struct nvme_ns_head *head,
         */
        if (!nvme_path_is_disabled(old) &&
            (old->ana_state == NVME_ANA_OPTIMIZED ||
-            (!fallback && old->ana_state == NVME_ANA_NONOPTIMIZED)))
+            (!found && old->ana_state == NVME_ANA_NONOPTIMIZED)))
                return old;
 
-       if (!fallback)
+       if (!found)
                return NULL;
-       found = fallback;
 out:
        rcu_assign_pointer(head->current_path[node], found);
        return found;