A busy controller shouldn't be game-over for all controllers,
so keep trying on hitting -EBUSY.

This change brings the actual behavior of the routine in line
with what the descriptions says.

Fixes: 982388eaa991 ("nvme: Add NVM Express driver support")
Reviewed-by: Simon Glass <s...@chromium.org>
Signed-off-by: Moritz Fischer <mori...@google.com>
---
Changes from V1:
- Added Simon's Reviewed-by
---

 drivers/nvme/nvme.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c
index ec45f831a3..59a139baa0 100644
--- a/drivers/nvme/nvme.c
+++ b/drivers/nvme/nvme.c
@@ -695,7 +695,9 @@ int nvme_scan_namespace(void)
                if (ret) {
                        log_err("Failed to probe '%s': err=%dE\n", dev->name,
                                ret);
-                       return ret;
+                       /* Bail if we ran out of memory, else keep trying */
+                       if (ret != -EBUSY)
+                               return ret;
                }
        }
 
-- 
2.43.0.472.g3155946c3a-goog

Reply via email to