Re: [PATCH rdma-core 0/8] verbs: Enable asynchronous event FD per object

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/6/2020 12:41 PM, Yishai Hadas wrote:
This series enables applicable events objects (i.e. QP, SRQ, CQ, WQ) to be
created with their own asynchronous event FD from KABI point of view.

Before this series any affiliated event on an object was reported on the first
asynchronous event FD that was created on the context without the ability to
create and use a dedicated FD for it.

With this series we enable granularity and control for the usage per object.

For example, a secondary process that uses the same command FD as of the primary
one, can create its own objects with its dedicated event FD to be able to get
the events for them once occurred, this couldn't be done before this series.

Further series on top of this one may expose some option to an application to
ask for a dedicated FD for its usage instead of using the default one, this may
enable achieving the above use case.

To achieve the above, any 'create' method for the applicable objects was
extended to get from rdma-core its optional event FD. If wasn't supplied, the
default one from the context will be used as part of kernel side.

As we prefer to not extend the 'write' mode KABIs anymore and fully move to the
'ioct' mode, QP, SRQ and WQ create/destroy commands were introduced over
'ioctl', the CQ KABI was extended over its existing 'ioctl' create command.

As part of moving to 'ioctl' for the above objects few bugs were found and
fixed.

The matching kernel part was sent into rdma-next.
PR:
https://github.com/linux-rdma/rdma-core/pull/753


Jason Gunthorpe (1):
   mlx4: Delete comp_mask from verbs_srq

Yishai Hadas (7):
   Update kernel headers
   verbs: Extend CQ KABI to get an async FD
   verbs: Fix ibv_get_srq_num() man page
   verbs: Move SRQ create and destroy to ioctl
   verbs: Fix ibv_create_wq() to set wq_context
   verbs: Move WQ create and destroy to ioctl
   verbs: Move QP create and destroy commands to ioctl

  kernel-headers/rdma/ib_user_ioctl_cmds.h  |  81 +++++
  kernel-headers/rdma/ib_user_ioctl_verbs.h |  43 +++
  libibverbs/CMakeLists.txt                 |   3 +
  libibverbs/cmd.c                          | 481 ------------------------------
  libibverbs/cmd_cq.c                       |   7 +-
  libibverbs/cmd_fallback.c                 |   2 +-
  libibverbs/cmd_qp.c                       | 476 +++++++++++++++++++++++++++++
  libibverbs/cmd_srq.c                      | 279 +++++++++++++++++
  libibverbs/cmd_wq.c                       | 173 +++++++++++
  libibverbs/driver.h                       |  25 +-
  libibverbs/kern-abi.h                     |  11 +
  libibverbs/man/ibv_get_srq_num.3.md       |   2 +-
  libibverbs/verbs.c                        |  14 -
  libibverbs/verbs.h                        |   1 +
  providers/efa/verbs.c                     |   2 +-
  providers/mlx4/mlx4.c                     |   2 +-
  providers/mlx4/mlx4.h                     |   1 +
  providers/mlx4/srq.c                      |   1 -
  providers/mlx4/verbs.c                    |  17 +-
  providers/mlx5/verbs.c                    |  16 +-
  20 files changed, 1104 insertions(+), 533 deletions(-)
  create mode 100644 libibverbs/cmd_qp.c
  create mode 100644 libibverbs/cmd_srq.c
  create mode 100644 libibverbs/cmd_wq.c


The PR was merged.

Yishai



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux