RDMA/hns: Bugfix for data type of dip_idx
authorJunxian Huang <huangjunxian4@hisilicon.com>
Wed, 25 Aug 2021 09:43:10 +0000 (17:43 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Wed, 25 Aug 2021 16:55:29 +0000 (13:55 -0300)
dip_idx is associated with qp_num whose data type is u32. However, dip_idx
is incorrectly defined as u8 data in the hns_roce_dip struct, which leads
to data truncation during value assignment.

Fixes: f91696f2f053 ("RDMA/hns: Support congestion control type selection according to the FW")
Link: https://lore.kernel.org/r/1629884592-23424-2-git-send-email-liangwenpeng@huawei.com
Signed-off-by: Junxian Huang <huangjunxian4@hisilicon.com>
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hns/hns_roce_hw_v2.h

index 54c1223..0b91a1a 100644 (file)
@@ -1441,7 +1441,7 @@ struct hns_roce_v2_priv {
 
 struct hns_roce_dip {
        u8 dgid[GID_LEN_V2];
-       u8 dip_idx;
+       u32 dip_idx;
        struct list_head node;  /* all dips are on a list */
 };