This series adds support for CQ notifications through the verbs api (ibv_req_notify_cq/ibv_get_cq_event). In order to achieve that, a new event queue (EQ) object is introduced, which is in charge of reporting completion events to the driver. In addition, a new CQ doorbell is introduced that is mmapped to the userspace provider in order to arm the CQ when requested by the user. PR was sent: https://github.com/linux-rdma/rdma-core/pull/1044 Thanks, Gal Gal Pressman (4): RDMA/efa: Free IRQ vectors on error flow RDMA/efa: Remove unused cpu field from irq struct RDMA/efa: Rename vector field in efa_irq struct to irqn RDMA/efa: CQ notifications drivers/infiniband/hw/efa/efa.h | 19 +- .../infiniband/hw/efa/efa_admin_cmds_defs.h | 100 ++++++++- drivers/infiniband/hw/efa/efa_admin_defs.h | 41 ++++ drivers/infiniband/hw/efa/efa_com.c | 171 +++++++++++++++ drivers/infiniband/hw/efa/efa_com.h | 38 +++- drivers/infiniband/hw/efa/efa_com_cmd.c | 35 +++- drivers/infiniband/hw/efa/efa_com_cmd.h | 10 +- drivers/infiniband/hw/efa/efa_main.c | 196 +++++++++++++++--- drivers/infiniband/hw/efa/efa_regs_defs.h | 7 +- drivers/infiniband/hw/efa/efa_verbs.c | 60 +++++- include/uapi/rdma/efa-abi.h | 18 +- 11 files changed, 631 insertions(+), 64 deletions(-) -- 2.32.0