This series implements the SRQ (Shared Receive Queue) for the pvrdma device, It also includes all the needed functions and definitions for support SRQ in the backend and resource management layers.
Changes from v2->3: - Patch #1: -- Fix commit message. -- Remove initialization of backend_qp from rdma_backend_post_srq_recv(). -- Add rx_srq counter. - Patch #2: -- Add checks for srq attrs. - Patch #3: -- Move initialization of recv_cq_handle to be under is_srq. -- Rearrange destroy_qp() to avoid use after free. - Patch #4: -- Avoid use after free. -- Fix indentation. Changes from v1->v2: - Handle checkpatch.pl warnings. Kamal Heib (4): hw/rdma: Add SRQ support to backend layer hw/rdma: Add support for managing SRQ resource hw/rdma: Modify create/destroy QP to support SRQ hw/pvrdma: Add support for SRQ hw/rdma/rdma_backend.c | 125 +++++++++++++++++++++- hw/rdma/rdma_backend.h | 18 +++- hw/rdma/rdma_backend_defs.h | 5 + hw/rdma/rdma_rm.c | 117 +++++++++++++++++++- hw/rdma/rdma_rm.h | 13 ++- hw/rdma/rdma_rm_defs.h | 10 ++ hw/rdma/vmw/pvrdma_cmd.c | 206 ++++++++++++++++++++++++++++++++---- hw/rdma/vmw/pvrdma_main.c | 16 +++ hw/rdma/vmw/pvrdma_qp_ops.c | 46 +++++++- hw/rdma/vmw/pvrdma_qp_ops.h | 1 + 10 files changed, 521 insertions(+), 36 deletions(-) -- 2.20.1