Re: [PATCH rdma-next 7/7] RDMA/core: Create clean QP creations interface for uverbs

From: Christoph Hellwig
Date: Wed Jul 21 2021 - 03:27:30 EST


On Wed, Jul 21, 2021 at 08:12:35AM +0100, Christoph Hellwig wrote:
> On Wed, Jul 21, 2021 at 10:06:06AM +0300, Leon Romanovsky wrote:
> > You will need to add some sort of "if qp tpye" for ib_create_qp_uverbs() callers,
> > because they always provide udata != NULL.
> >
> > After this series, the callers look like this:
> >
> > 1438 qp = ib_create_qp_uverbs(device, pd, &attr, &attrs->driver_udata, obj);
> > ^^^^^^^^^ not NULL
> >
> > So instead of bothering callers, I implemented it here with one "if".
>
> Sorry if my mail was confusing. I don't want it in the callers, I
> want it as deep down in the stack as possible instead of having the
> strange wrapper.

In fact ib_create_qp_user already sets udata to NULL for IB_QPT_XRC_TGT,
and _ib_create_qp/create_qp ignores the caller if the udata is NULL.
So I think you can just remove the wrapper and we're already fine.