[PATCH V2 for-next 09/19] IB/hns: Modify the init of iboe lock

From: Salil Mehta
Date: Tue Sep 20 2016 - 12:09:51 EST


From: Lijun Ou <oulijun@xxxxxxxxxx>

This lock will be used in query port interface, and will be called
while IB device was registered to OFED framework/IB Core. So, the
lock of iboe must be initiated before IB device was registered.

Signed-off-by: Lijun Ou <oulijun@xxxxxxxxxx>
Signed-off-by: Dongdong Huang(Donald) <hdd.huang@xxxxxxxxxx>
Reviewed-by: Wei Hu (Xavier) <xavier.huwei@xxxxxxxxxx>
Signed-off-by: Salil Mehta <salil.mehta@xxxxxxxxxx>
---
PATCH V2: Addressed Leon Romanovsky's comments
Link: https://lkml.org/lkml/2016/9/13/51
PATCH V1: Initial patch
---
drivers/infiniband/hw/hns/hns_roce_main.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
index 4b44998..764e35a 100644
--- a/drivers/infiniband/hw/hns/hns_roce_main.c
+++ b/drivers/infiniband/hw/hns/hns_roce_main.c
@@ -602,6 +602,7 @@ static int hns_roce_register_device(struct hns_roce_dev *hr_dev)
struct device *dev = &hr_dev->pdev->dev;

iboe = &hr_dev->iboe;
+ spin_lock_init(&iboe->lock);

ib_dev = &hr_dev->ib_dev;
strlcpy(ib_dev->name, "hisi_%d", IB_DEVICE_NAME_MAX);
@@ -686,8 +687,6 @@ static int hns_roce_register_device(struct hns_roce_dev *hr_dev)
goto error_failed_setup_mtu_gids;
}

- spin_lock_init(&iboe->lock);
-
iboe->nb.notifier_call = hns_roce_netdev_event;
ret = register_netdevice_notifier(&iboe->nb);
if (ret) {
--
1.9.1