IB/{core,hw}: Add constant for node_desc
authorYuval Shaia <yuval.shaia@oracle.com>
Thu, 25 Aug 2016 17:57:07 +0000 (10:57 -0700)
committerDoug Ledford <dledford@redhat.com>
Fri, 7 Oct 2016 20:54:34 +0000 (16:54 -0400)
Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
13 files changed:
drivers/infiniband/core/sysfs.c
drivers/infiniband/hw/cxgb3/iwch_provider.c
drivers/infiniband/hw/cxgb4/provider.c
drivers/infiniband/hw/hfi1/verbs.c
drivers/infiniband/hw/mlx4/mad.c
drivers/infiniband/hw/mlx4/main.c
drivers/infiniband/hw/mlx5/mad.c
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mthca/mthca_mad.c
drivers/infiniband/hw/mthca/mthca_provider.c
drivers/infiniband/hw/ocrdma/ocrdma_main.c
drivers/infiniband/hw/qib/qib_verbs.c
include/rdma/ib_verbs.h

index 15defefecb4f7ac26c137ea9a0398d666fa9aae9..c1fb545e8d7848218a2a584647e4643eef0fc551 100644 (file)
@@ -1193,7 +1193,7 @@ static ssize_t set_node_desc(struct device *device,
        if (!dev->modify_device)
                return -EIO;
 
-       memcpy(desc.node_desc, buf, min_t(int, count, 64));
+       memcpy(desc.node_desc, buf, min_t(int, count, IB_DEVICE_NODE_DESC_MAX));
        ret = ib_modify_device(dev, IB_DEVICE_MODIFY_NODE_DESC, &desc);
        if (ret)
                return ret;
index 3edb80644b53101d76d3de07cd3b3603fb49cea1..b47be87d5a53a4d8b649aade50fe2181a33c26b4 100644 (file)
@@ -1396,6 +1396,7 @@ int iwch_register_device(struct iwch_dev *dev)
            (1ull << IB_USER_VERBS_CMD_POST_SEND) |
            (1ull << IB_USER_VERBS_CMD_POST_RECV);
        dev->ibdev.node_type = RDMA_NODE_RNIC;
+       BUILD_BUG_ON(sizeof(IWCH_NODE_DESC) > IB_DEVICE_NODE_DESC_MAX);
        memcpy(dev->ibdev.node_desc, IWCH_NODE_DESC, sizeof(IWCH_NODE_DESC));
        dev->ibdev.phys_port_cnt = dev->rdev.port_info.nports;
        dev->ibdev.num_comp_vectors = 1;
index df127ce6b6ec31772f4b6ce1f4a3e980b2800bf3..645e606a17c569483a8cf74615bb8912ffca79d2 100644 (file)
@@ -563,6 +563,7 @@ int c4iw_register_device(struct c4iw_dev *dev)
            (1ull << IB_USER_VERBS_CMD_POST_SEND) |
            (1ull << IB_USER_VERBS_CMD_POST_RECV);
        dev->ibdev.node_type = RDMA_NODE_RNIC;
+       BUILD_BUG_ON(sizeof(C4IW_NODE_DESC) > IB_DEVICE_NODE_DESC_MAX);
        memcpy(dev->ibdev.node_desc, C4IW_NODE_DESC, sizeof(C4IW_NODE_DESC));
        dev->ibdev.phys_port_cnt = dev->rdev.lldi.nports;
        dev->ibdev.num_comp_vectors =  dev->rdev.lldi.nciq;
index 2b359540901db3dd4c42cad718cc938ff7139d6a..f803f7b5ef5db1446ba4009a07945350b3e7edde 100644 (file)
@@ -1423,7 +1423,8 @@ static int modify_device(struct ib_device *device,
        }
 
        if (device_modify_mask & IB_DEVICE_MODIFY_NODE_DESC) {
-               memcpy(device->node_desc, device_modify->node_desc, 64);
+               memcpy(device->node_desc, device_modify->node_desc,
+                      IB_DEVICE_NODE_DESC_MAX);
                for (i = 0; i < dd->num_pports; i++) {
                        struct hfi1_ibport *ibp = &dd->pport[i].ibport_data;
 
index 9b4b21bd0222d653d56b1d321ae9ba18ae3d8375..d8886d051d4bc33765269f810eab95c809a1fc76 100644 (file)
@@ -345,7 +345,8 @@ static void node_desc_override(struct ib_device *dev,
            mad->mad_hdr.method == IB_MGMT_METHOD_GET_RESP &&
            mad->mad_hdr.attr_id == IB_SMP_ATTR_NODE_DESC) {
                spin_lock_irqsave(&to_mdev(dev)->sm_lock, flags);
-               memcpy(((struct ib_smp *) mad)->data, dev->node_desc, 64);
+               memcpy(((struct ib_smp *) mad)->data, dev->node_desc,
+                      IB_DEVICE_NODE_DESC_MAX);
                spin_unlock_irqrestore(&to_mdev(dev)->sm_lock, flags);
        }
 }
index f07cbf87db5216b181dfc6e28ba0a2e6f88d3a99..3ae64cefc39ef82e99d834c1c784446e8218c58f 100644 (file)
@@ -886,7 +886,7 @@ static int mlx4_ib_modify_device(struct ib_device *ibdev, int mask,
                return -EOPNOTSUPP;
 
        spin_lock_irqsave(&to_mdev(ibdev)->sm_lock, flags);
-       memcpy(ibdev->node_desc, props->node_desc, 64);
+       memcpy(ibdev->node_desc, props->node_desc, IB_DEVICE_NODE_DESC_MAX);
        spin_unlock_irqrestore(&to_mdev(ibdev)->sm_lock, flags);
 
        /*
@@ -897,7 +897,7 @@ static int mlx4_ib_modify_device(struct ib_device *ibdev, int mask,
        if (IS_ERR(mailbox))
                return 0;
 
-       memcpy(mailbox->buf, props->node_desc, 64);
+       memcpy(mailbox->buf, props->node_desc, IB_DEVICE_NODE_DESC_MAX);
        mlx4_cmd(to_mdev(ibdev)->dev, mailbox->dma, 1, 0,
                 MLX4_CMD_SET_NODE, MLX4_CMD_TIME_CLASS_A, MLX4_CMD_NATIVE);
 
@@ -2025,7 +2025,7 @@ static int init_node_data(struct mlx4_ib_dev *dev)
        if (err)
                goto out;
 
-       memcpy(dev->ib_dev.node_desc, out_mad->data, 64);
+       memcpy(dev->ib_dev.node_desc, out_mad->data, IB_DEVICE_NODE_DESC_MAX);
 
        in_mad->attr_id = IB_SMP_ATTR_NODE_INFO;
 
index 364aab9f3c9e23a1963aa22c082b864fb0125914..39e58489dcc2c22e15388a1e6dc4027a25cd0214 100644 (file)
@@ -394,7 +394,7 @@ int mlx5_query_mad_ifc_node_desc(struct mlx5_ib_dev *dev, char *node_desc)
        if (err)
                goto out;
 
-       memcpy(node_desc, out_mad->data, 64);
+       memcpy(node_desc, out_mad->data, IB_DEVICE_NODE_DESC_MAX);
 out:
        kfree(in_mad);
        kfree(out_mad);
index 24f5f48e9ddf362ff5d0dd6fa1a3e8e4ccc5d30b..29878aa716ee3ae4445083006d1b2cce7dc931a6 100644 (file)
@@ -472,7 +472,7 @@ static int mlx5_query_node_guid(struct mlx5_ib_dev *dev,
 }
 
 struct mlx5_reg_node_desc {
-       u8      desc[64];
+       u8      desc[IB_DEVICE_NODE_DESC_MAX];
 };
 
 static int mlx5_query_node_desc(struct mlx5_ib_dev *dev, char *node_desc)
@@ -920,13 +920,13 @@ static int mlx5_ib_modify_device(struct ib_device *ibdev, int mask,
         * If possible, pass node desc to FW, so it can generate
         * a 144 trap.  If cmd fails, just ignore.
         */
-       memcpy(&in, props->node_desc, 64);
+       memcpy(&in, props->node_desc, IB_DEVICE_NODE_DESC_MAX);
        err = mlx5_core_access_reg(dev->mdev, &in, sizeof(in), &out,
                                   sizeof(out), MLX5_REG_NODE_DESC, 0, 1);
        if (err)
                return err;
 
-       memcpy(ibdev->node_desc, props->node_desc, 64);
+       memcpy(ibdev->node_desc, props->node_desc, IB_DEVICE_NODE_DESC_MAX);
 
        return err;
 }
index 7c3f2fb44ba51d8f288221df7b4d316a56adab28..9139405c481000af597416b6c26c80ad6bf0d732 100644 (file)
@@ -153,7 +153,8 @@ static void node_desc_override(struct ib_device *dev,
            mad->mad_hdr.method == IB_MGMT_METHOD_GET_RESP &&
            mad->mad_hdr.attr_id == IB_SMP_ATTR_NODE_DESC) {
                mutex_lock(&to_mdev(dev)->cap_mask_mutex);
-               memcpy(((struct ib_smp *) mad)->data, dev->node_desc, 64);
+               memcpy(((struct ib_smp *) mad)->data, dev->node_desc,
+                      IB_DEVICE_NODE_DESC_MAX);
                mutex_unlock(&to_mdev(dev)->cap_mask_mutex);
        }
 }
index da2335f7f7c357b9c0266ac9c225c47e94a63994..b697a0f77231fdbe3151086b1451517eb7ab08c8 100644 (file)
@@ -193,7 +193,8 @@ static int mthca_modify_device(struct ib_device *ibdev,
        if (mask & IB_DEVICE_MODIFY_NODE_DESC) {
                if (mutex_lock_interruptible(&to_mdev(ibdev)->cap_mask_mutex))
                        return -ERESTARTSYS;
-               memcpy(ibdev->node_desc, props->node_desc, 64);
+               memcpy(ibdev->node_desc, props->node_desc,
+                      IB_DEVICE_NODE_DESC_MAX);
                mutex_unlock(&to_mdev(ibdev)->cap_mask_mutex);
        }
 
@@ -1138,7 +1139,7 @@ static int mthca_init_node_data(struct mthca_dev *dev)
        if (err)
                goto out;
 
-       memcpy(dev->ib_dev.node_desc, out_mad->data, 64);
+       memcpy(dev->ib_dev.node_desc, out_mad->data, IB_DEVICE_NODE_DESC_MAX);
 
        in_mad->attr_id = IB_SMP_ATTR_NODE_INFO;
 
index 07d0c6c5b0465755a48f71add1d98e7e61f215bc..15e35acc690dc940b5fe41f4dd8fe43d63c86e5d 100644 (file)
@@ -119,6 +119,7 @@ static int ocrdma_register_device(struct ocrdma_dev *dev)
 {
        strlcpy(dev->ibdev.name, "ocrdma%d", IB_DEVICE_NAME_MAX);
        ocrdma_get_guid(dev, (u8 *)&dev->ibdev.node_guid);
+       BUILD_BUG_ON(sizeof(OCRDMA_NODE_DESC) > IB_DEVICE_NODE_DESC_MAX);
        memcpy(dev->ibdev.node_desc, OCRDMA_NODE_DESC,
               sizeof(OCRDMA_NODE_DESC));
        dev->ibdev.owner = THIS_MODULE;
index fd1dfbce5539742cb6b5a2ed994b213c50d5672a..2d7e52619b554e89ed90da73aed07f83485eea45 100644 (file)
@@ -1370,7 +1370,8 @@ static int qib_modify_device(struct ib_device *device,
        }
 
        if (device_modify_mask & IB_DEVICE_MODIFY_NODE_DESC) {
-               memcpy(device->node_desc, device_modify->node_desc, 64);
+               memcpy(device->node_desc, device_modify->node_desc,
+                      IB_DEVICE_NODE_DESC_MAX);
                for (i = 0; i < dd->num_pports; i++) {
                        struct qib_ibport *ibp = &dd->pport[i].ibport_data;
 
index 0cec4da51eb7eab4473428625e27d77f6c4c62fa..d3fba0a56e1707ef843ce3cbd24c9c178ddaeded 100644 (file)
@@ -537,9 +537,11 @@ enum ib_device_modify_flags {
        IB_DEVICE_MODIFY_NODE_DESC      = 1 << 1
 };
 
+#define IB_DEVICE_NODE_DESC_MAX 64
+
 struct ib_device_modify {
        u64     sys_image_guid;
-       char    node_desc[64];
+       char    node_desc[IB_DEVICE_NODE_DESC_MAX];
 };
 
 enum ib_port_modify_flags {
@@ -2077,7 +2079,7 @@ struct ib_device {
        u64                          uverbs_cmd_mask;
        u64                          uverbs_ex_cmd_mask;
 
-       char                         node_desc[64];
+       char                         node_desc[IB_DEVICE_NODE_DESC_MAX];
        __be64                       node_guid;
        u32                          local_dma_lkey;
        u16                          is_switch:1;