From: Yuval Shaia <yuval.shaia@oracle.com>
Date: Mon, 25 Sep 2017 05:18:00 -0700
Subject: IB/ipoib: Remove device when one port fails to init
Patch-mainline: v4.15-rc1
Git-commit: e4b2d06892c7f700f3d62dfef603add35269612e
References: bsc#1103992 FATE#326009
Call ipoib_remove_one when one of the IPoIB ports fails to initialize in
order not to leave the module in unstable state.
Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
drivers/infiniband/ulp/ipoib/ipoib_main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/drivers/infiniband/ulp/ipoib/ipoib_main.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c
@@ -2313,7 +2313,8 @@ static void ipoib_add_one(struct ib_devi
}
if (!count) {
- kfree(dev_list);
+ pr_err("Failed to init port, removing it\n");
+ ipoib_remove_one(device, dev_list);
return;
}