Re: [PATCH rdma-next v2 0/7] Enable asynchronous event FD per object

From: Jason Gunthorpe
Date: Thu May 21 2020 - 19:50:49 EST


On Tue, May 19, 2020 at 10:27:04AM +0300, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@xxxxxxxxxxxx>
>
> Changelog:
> v2:
> * Added READ_ONCE to all default_async_file calls
> * Rebased on latest rdma/wip/jgg-for-next
> * Removed uninitalized_var?()
> * Simplified uverbs_free_srq()
> * Put uverbs_finalize_uobj_create() after object is finalized
> v1: https://lore.kernel.org/lkml/20200506082444.14502-1-leon@xxxxxxxxxx
> * Forgot to add patch "IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI"
> v0: https://lore.kernel.org/lkml/20200506074049.8347-1-leon@xxxxxxxxxx
>
> >From Yishai:
>
> This series enables applicable events objects (i.e. QP, SRQ, CQ, WQ) to
> be created with their own asynchronous event FD.
>
> 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, according to the application's usage.
>
> For example, a secondary process that uses the same command FD as of the
> master 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.
>
> 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 we prefer to not extend the 'write' mode KABIs anymore and fully
> move to the 'ioct' mode, as part of this extension 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 the frame work was
> improved to abort a fully created uobject upon some later error, some
> flows were consolidated with the 'write' mode and few bugs were found
> and fixed.
>
> Yishai
>
> Jason Gunthorpe (1):
> RDMA/core: Allow the ioctl layer to abort a fully created uobject
>
> Yishai Hadas (6):
> IB/uverbs: Refactor related objects to use their own asynchronous
> event FD
> IB/uverbs: Extend CQ to get its own asynchronous event FD
> IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI
> IB/uverbs: Introduce create/destroy SRQ commands over ioctl
> IB/uverbs: Introduce create/destroy WQ commands over ioctl
> IB/uverbs: Introduce create/destroy QP commands over ioctl

Applied to for-next

Thanks,
Jason