RDMA/hns: Fix assignment to ba_pg_sz of eqe
authorWenpeng Liang <liangwenpeng@huawei.com>
Fri, 8 May 2020 09:45:53 +0000 (17:45 +0800)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 19 May 2020 23:54:57 +0000 (20:54 -0300)
When allocating eq buffer, the size of base address page should be defined
by eqe_ba_pg_sz instead of srqwqe_ba_pg_sz.

Fixes: 477a0a387072 ("RDMA/hns: Optimize 0 hop addressing for EQE buffer")
Link: https://lore.kernel.org/r/1588931159-56875-4-git-send-email-liweihang@huawei.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/hns/hns_roce_hw_v2.c

index 0e488de..96a5ff5 100644 (file)
@@ -5615,7 +5615,7 @@ static int alloc_eq_buf(struct hns_roce_dev *hr_dev, struct hns_roce_eq *eq)
        buf_attr.fixed_page = true;
 
        err = hns_roce_mtr_create(hr_dev, &eq->mtr, &buf_attr,
-                                 hr_dev->caps.srqwqe_ba_pg_sz +
+                                 hr_dev->caps.eqe_ba_pg_sz +
                                  PAGE_ADDR_SHIFT, NULL, 0);
        if (err)
                dev_err(hr_dev->dev, "Failed to alloc EQE mtr, err %d\n", err);