@@ -79,6 +79,7 @@ static const struct verbs_context_ops hns_common_ops = {
.reg_mr = hns_roce_u_reg_mr,
.rereg_mr = hns_roce_u_rereg_mr,
.create_srq = hns_roce_u_create_srq,
+ .modify_srq = hns_roce_u_modify_srq,
};
static struct verbs_context *hns_roce_alloc_context(struct ibv_device *ibdev,
@@ -303,6 +303,8 @@ void hns_roce_u_cq_event(struct ibv_cq *cq);
struct ibv_srq *hns_roce_u_create_srq(struct ibv_pd *pd,
struct ibv_srq_init_attr *srq_init_attr);
+int hns_roce_u_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr,
+ int srq_attr_mask);
struct ibv_qp *hns_roce_u_create_qp(struct ibv_pd *pd,
struct ibv_qp_init_attr *attr);
@@ -580,6 +580,15 @@ out:
return NULL;
}
+int hns_roce_u_modify_srq(struct ibv_srq *srq, struct ibv_srq_attr *srq_attr,
+ int srq_attr_mask)
+{
+ struct ibv_modify_srq cmd;
+
+ return ibv_cmd_modify_srq(srq, srq_attr, srq_attr_mask, &cmd,
+ sizeof(cmd));
+}
+
static int hns_roce_verify_qp(struct ibv_qp_init_attr *attr,
struct hns_roce_context *context)
{
This patch mainly implement the verbs of modifing srq for hip08 userspace library. Signed-off-by: Lijun Ou <oulijun@huawei.com> --- providers/hns/hns_roce_u.c | 1 + providers/hns/hns_roce_u.h | 2 ++ providers/hns/hns_roce_u_verbs.c | 9 +++++++++ 3 files changed, 12 insertions(+)