提交 dc071b99 编写于 作者: Z Zhao Weibo 提交者: Yang Yingliang

RDMA/hns: avoid potential overflow of

driver inclusion
category: cleanup
bugzilla: NA
CVE: NA

-------------------------------

add brackets to avoid overflow while doing the
calculation.
Reviewed-by: NHu Chunzhi <huchunzhi@huawei.com>
Signed-off-by: NZhao Weibo <zhaoweibo3@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 c4feb719
...@@ -6472,7 +6472,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev, ...@@ -6472,7 +6472,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev,
*(eq->bt_l0 + i) = eq->l1_dma[i]; *(eq->bt_l0 + i) = eq->l1_dma[i];
for (j = 0; j < bt_chk_sz / BA_BYTE_LEN; j++) { for (j = 0; j < bt_chk_sz / BA_BYTE_LEN; j++) {
idx = i * bt_chk_sz / BA_BYTE_LEN + j; idx = i * (bt_chk_sz / BA_BYTE_LEN) + j;
if (eq_buf_cnt + 1 < ba_num) { if (eq_buf_cnt + 1 < ba_num) {
size = buf_chk_sz; size = buf_chk_sz;
} else { } else {
...@@ -6520,7 +6520,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev, ...@@ -6520,7 +6520,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev,
eq->l1_dma[i]); eq->l1_dma[i]);
for (j = 0; j < bt_chk_sz / BA_BYTE_LEN; j++) { for (j = 0; j < bt_chk_sz / BA_BYTE_LEN; j++) {
idx = i * bt_chk_sz / BA_BYTE_LEN + j; idx = i * (bt_chk_sz / BA_BYTE_LEN) + j;
dma_free_coherent(dev, buf_chk_sz, eq->buf[idx], dma_free_coherent(dev, buf_chk_sz, eq->buf[idx],
eq->buf_dma[idx]); eq->buf_dma[idx]);
} }
...@@ -6547,7 +6547,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev, ...@@ -6547,7 +6547,7 @@ static int hns_roce_mhop_alloc_eq(struct hns_roce_dev *hr_dev,
if (i == record_i && j >= record_j) if (i == record_i && j >= record_j)
break; break;
idx = i * bt_chk_sz / BA_BYTE_LEN + j; idx = i * (bt_chk_sz / BA_BYTE_LEN) + j;
dma_free_coherent(dev, buf_chk_sz, dma_free_coherent(dev, buf_chk_sz,
eq->buf[idx], eq->buf[idx],
eq->buf_dma[idx]); eq->buf_dma[idx]);
......
...@@ -324,7 +324,7 @@ static void hns_roce_loop_free(struct hns_roce_dev *hr_dev, ...@@ -324,7 +324,7 @@ static void hns_roce_loop_free(struct hns_roce_dev *hr_dev,
if (i == loop_i && j >= loop_j) if (i == loop_i && j >= loop_j)
break; break;
bt_idx = i * pbl_bt_sz / BA_BYTE_LEN + j; bt_idx = i * (pbl_bt_sz / BA_BYTE_LEN) + j;
dma_free_coherent(dev, pbl_bt_sz, dma_free_coherent(dev, pbl_bt_sz,
mr->pbl_bt_l2[bt_idx], mr->pbl_bt_l2[bt_idx],
mr->pbl_l2_dma_addr[bt_idx]); mr->pbl_l2_dma_addr[bt_idx]);
...@@ -336,7 +336,7 @@ static void hns_roce_loop_free(struct hns_roce_dev *hr_dev, ...@@ -336,7 +336,7 @@ static void hns_roce_loop_free(struct hns_roce_dev *hr_dev,
mr->pbl_l1_dma_addr[i]); mr->pbl_l1_dma_addr[i]);
for (j = 0; j < pbl_bt_sz / BA_BYTE_LEN; j++) { for (j = 0; j < pbl_bt_sz / BA_BYTE_LEN; j++) {
bt_idx = i * pbl_bt_sz / BA_BYTE_LEN + j; bt_idx = i * (pbl_bt_sz / BA_BYTE_LEN) + j;
dma_free_coherent(dev, pbl_bt_sz, dma_free_coherent(dev, pbl_bt_sz,
mr->pbl_bt_l2[bt_idx], mr->pbl_bt_l2[bt_idx],
mr->pbl_l2_dma_addr[bt_idx]); mr->pbl_l2_dma_addr[bt_idx]);
...@@ -461,7 +461,7 @@ static int pbl_3hop_alloc(struct hns_roce_dev *hr_dev, int npages, ...@@ -461,7 +461,7 @@ static int pbl_3hop_alloc(struct hns_roce_dev *hr_dev, int npages,
*(mr->pbl_bt_l0 + i) = mr->pbl_l1_dma_addr[i]; *(mr->pbl_bt_l0 + i) = mr->pbl_l1_dma_addr[i];
for (j = 0; j < pbl_bt_sz / BA_BYTE_LEN; j++) { for (j = 0; j < pbl_bt_sz / BA_BYTE_LEN; j++) {
bt_idx = i * pbl_bt_sz / BA_BYTE_LEN + j; bt_idx = i * (pbl_bt_sz / BA_BYTE_LEN) + j;
if (pbl_bt_cnt + 1 < pbl_last_bt_num) { if (pbl_bt_cnt + 1 < pbl_last_bt_num) {
size = pbl_bt_sz; size = pbl_bt_sz;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册