This patch series implement the SRQ(Share Receive Queue) feature for hip08. It includes the SRQ verbs and updates the poll cq verb to deal with SRQ complementions as well as add the process flow of SRQ asynchronous event. Change from V1: 1. Separate it from the original patchset("hns misc updates for 4.20") 2. Use spin lock instead of rcu lock in order to keep the same with qp event after analysis jason's review. Lijun Ou (4): RDMA/hns: Eanble SRQ capacity for hip08 RDMA/hns: Init SRQ table for hip08 RDMA/hns: Add SRQ support for hip08 kernel mode RDMA/hns: Add SRQ asynchronous event support drivers/infiniband/hw/hns/Makefile | 2 +- drivers/infiniband/hw/hns/hns_roce_alloc.c | 2 + drivers/infiniband/hw/hns/hns_roce_cmd.h | 4 + drivers/infiniband/hw/hns/hns_roce_device.h | 93 +++++- drivers/infiniband/hw/hns/hns_roce_hem.c | 41 ++- drivers/infiniband/hw/hns/hns_roce_hem.h | 2 + drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 406 ++++++++++++++++++++++-- drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 95 ++++++ drivers/infiniband/hw/hns/hns_roce_main.c | 83 +++++ drivers/infiniband/hw/hns/hns_roce_mr.c | 137 +++++++- drivers/infiniband/hw/hns/hns_roce_qp.c | 21 +- drivers/infiniband/hw/hns/hns_roce_srq.c | 463 ++++++++++++++++++++++++++++ include/uapi/rdma/hns-abi.h | 6 + 13 files changed, 1300 insertions(+), 55 deletions(-) create mode 100644 drivers/infiniband/hw/hns/hns_roce_srq.c -- 1.9.1