aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/hns/hns_roce_main.c
diff options
context:
space:
mode:
authorYangyang Li <liyangyang20@huawei.com>2021-01-07 16:36:29 +0800
committerJason Gunthorpe <jgg@nvidia.com>2021-01-18 16:10:32 -0400
commit1bbd4380744f637a759e0a7bb7d8d1c38282e0c3 (patch)
tree48be6b48ff4864d82ca721df400978177b11b5dd /drivers/infiniband/hw/hns/hns_roce_main.c
parentRDMA/nldev: Return an error message on failure to turn auto mode (diff)
downloadlinux-dev-1bbd4380744f637a759e0a7bb7d8d1c38282e0c3.tar.xz
linux-dev-1bbd4380744f637a759e0a7bb7d8d1c38282e0c3.zip
RDMA/hns: Create CQ with selected CQN for bank load balance
In order to improve performance by balancing the load between different banks of cache, the CQC cache is desigend to choose one of 4 banks according to lower 2 bits of CQN. The hns driver needs to count the number of CQ on each bank and then assigns the CQ being created to the bank with the minimum load first. Link: https://lore.kernel.org/r/1610008589-35770-1-git-send-email-liweihang@huawei.com Signed-off-by: Yangyang Li <liyangyang20@huawei.com> Signed-off-by: Weihang Li <liweihang@huawei.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to '')
-rw-r--r--drivers/infiniband/hw/hns/hns_roce_main.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
index d9179bae4989..2b78b1ff63d3 100644
--- a/drivers/infiniband/hw/hns/hns_roce_main.c
+++ b/drivers/infiniband/hw/hns/hns_roce_main.c
@@ -748,11 +748,7 @@ static int hns_roce_setup_hca(struct hns_roce_dev *hr_dev)
goto err_pd_table_free;
}
- ret = hns_roce_init_cq_table(hr_dev);
- if (ret) {
- dev_err(dev, "Failed to init completion queue table.\n");
- goto err_mr_table_free;
- }
+ hns_roce_init_cq_table(hr_dev);
ret = hns_roce_init_qp_table(hr_dev);
if (ret) {
@@ -777,8 +773,6 @@ err_qp_table_free:
err_cq_table_free:
hns_roce_cleanup_cq_table(hr_dev);
-
-err_mr_table_free:
hns_roce_cleanup_mr_table(hr_dev);
err_pd_table_free: