[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160912123623.GH8812@leon.nu>
Date: Mon, 12 Sep 2016 15:36:23 +0300
From: Leon Romanovsky <leon@...nel.org>
To: Salil Mehta <salil.mehta@...wei.com>
Cc: dledford@...hat.com, xavier.huwei@...wei.com, oulijun@...wei.com,
yisen.zhuang@...wei.com, mehta.salil.lnk@...il.com,
linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org,
linuxarm@...wei.com
Subject: Re: [PATCH for-next 03/10] IB/hns: Add & initialize "node_guid"
parameter for RDMA CM
On Fri, Sep 02, 2016 at 05:37:18AM +0800, Salil Mehta wrote:
> From: Lijun Ou <oulijun@...wei.com>
>
> According to the Infiniband spec, NodeGUID uniquely identifies a
> node. This must be initialized to some unique value. This patch
> adds the support to the HNS RoCE driver to fetch the NodeGUID
> value from DT or ACPI and then use this value to initialize the
> node_guid parameter of IB device. This value shall be used by
> RDMA CM.
>
> Signed-off-by: Lijun Ou <oulijun@...wei.com>
> Reviewed-by: Wei Hu <xavier.huwei@...wei.com>
> Signed-off-by: Salil Mehta <salil.mehta@...wei.com>
> ---
> drivers/infiniband/hw/hns/hns_roce_device.h | 1 +
> drivers/infiniband/hw/hns/hns_roce_main.c | 7 +++++++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/infiniband/hw/hns/hns_roce_device.h b/drivers/infiniband/hw/hns/hns_roce_device.h
> index ea73580..e943b98 100644
> --- a/drivers/infiniband/hw/hns/hns_roce_device.h
> +++ b/drivers/infiniband/hw/hns/hns_roce_device.h
> @@ -74,6 +74,7 @@
> #define MR_TYPE_DMA 0x03
>
> #define PKEY_ID 0xffff
> +#define GUID_LEN 8
> #define NODE_DESC_SIZE 64
>
> #define SERV_TYPE_RC 0
> diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
> index 4e93120..ec27f0c 100644
> --- a/drivers/infiniband/hw/hns/hns_roce_main.c
> +++ b/drivers/infiniband/hw/hns/hns_roce_main.c
> @@ -812,6 +812,13 @@ static int hns_roce_get_cfg(struct hns_roce_dev *hr_dev)
> if (IS_ERR(hr_dev->reg_base))
> return PTR_ERR(hr_dev->reg_base);
>
> + /* read the node_guid of IB device from the DT or ACPI */
> + ret = device_property_read_u8_array(dev, "node-guid",
> + (u8 *)&hr_dev->ib_dev.node_guid,
> + GUID_LEN);
> + if (ret)
> + dev_err(dev, "couldn't get node_guid from DT or ACPI!\n");
Is it error? If yes, you need to implement proper error folding. If not,
this error shouldn't be error.
> +
> /* get the RoCE associated ethernet ports or netdevices */
> for (i = 0; i < HNS_ROCE_MAX_PORTS; i++) {
> if (dev_of_node(dev)) {
> --
> 1.7.9.5
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
Download attachment "signature.asc" of type "application/pgp-signature" (820 bytes)
Powered by blists - more mailing lists