Thread (27 messages) 27 messages, 5 authors, 2021-02-02

Re: [PATCH v2] nvme-multipath: Early exit if no path is available

From: Chao Leng <hidden>
Date: 2021-01-28 01:33:53
Also in: lkml


On 2021/1/27 18:30, Daniel Wagner wrote:
quoted hunk ↗ jump to hunk
nvme_round_robin_path() should test if the return ns pointer is
valid. nvme_next_ns() will return a NULL pointer if there is no path
left.

Fixes: 75c10e732724 ("nvme-multipath: round-robin I/O policy")
Cc: Hannes Reinecke <hare@suse.de>
Signed-off-by: Daniel Wagner <redacted>
---
v2:
   - moved NULL test into the if conditional statement
   - added Fixes tag

  drivers/nvme/host/multipath.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/nvme/host/multipath.c b/drivers/nvme/host/multipath.c
index 9ac762b28811..282b7a4ea9a9 100644
--- a/drivers/nvme/host/multipath.c
+++ b/drivers/nvme/host/multipath.c
@@ -221,7 +221,7 @@ static struct nvme_ns *nvme_round_robin_path(struct nvme_ns_head *head,
  	}
  
  	for (ns = nvme_next_ns(head, old);
-	     ns != old;
+	     ns && ns != old;
nvme_round_robin_path just be called when !"old".
nvme_next_ns should not return NULL when !"old".
It seems unnecessary to add checking "ns".
Is there a bug that "old" in not in "head" list?
If yes, we should fix it.
  	     ns = nvme_next_ns(head, ns)) {
  		if (nvme_path_is_disabled(ns))
  			continue;
_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help