OSDN Git Service
(root)
/
uclinux-h8
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
531eb45
)
RDMA/hns: Correct the value of srq_desc_size
author
Wenpeng Liang
<liangwenpeng@huawei.com>
Fri, 1 Nov 2019 02:33:30 +0000
(10:33 +0800)
committer
Jason Gunthorpe
<jgg@mellanox.com>
Wed, 6 Nov 2019 17:37:02 +0000
(13:37 -0400)
srq_desc_size should be rounded up to pow of two before used, or related
calculation may cause allocating wrong size of memory for srq buffer.
Fixes:
c7bcb13442e1
("RDMA/hns: Add SRQ support for hip08 kernel mode")
Link:
https://lore.kernel.org/r/1572575610-52530-3-git-send-email-liweihang@hisilicon.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com>
Signed-off-by: Weihang Li <liweihang@hisilicon.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/hns/hns_roce_srq.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/hw/hns/hns_roce_srq.c
b/drivers/infiniband/hw/hns/hns_roce_srq.c
index
9591457
..
43ea2c1
100644
(file)
--- a/
drivers/infiniband/hw/hns/hns_roce_srq.c
+++ b/
drivers/infiniband/hw/hns/hns_roce_srq.c
@@
-376,7
+376,7
@@
int hns_roce_create_srq(struct ib_srq *ib_srq,
srq->max = roundup_pow_of_two(srq_init_attr->attr.max_wr + 1);
srq->max_gs = srq_init_attr->attr.max_sge;
- srq_desc_size =
max(16, 16 * srq->max_gs
);
+ srq_desc_size =
roundup_pow_of_two(max(16, 16 * srq->max_gs)
);
srq->wqe_shift = ilog2(srq_desc_size);