RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in ib_uverbs_get_context
authorShamir Rabinovitch <shamir.rabinovitch@oracle.com>
Tue, 30 Apr 2019 14:23:21 +0000 (17:23 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Fri, 3 May 2019 13:09:25 +0000 (10:09 -0300)
ib_uverbs_get_context does not have a uobject so it does not call the
rdma_lookup_get_uobject which is used to set up the uverbs_attr_bundle
ucontext. For ib_uverbs_get_context we need to set up this manually before
we send the uverbs_attr_bundle down to the driver layer.

This completes the change that was done in commit 70f06b26f07e ("IB:
ucontext should be set properly for all cmd & ioctl paths")

Signed-off-by: Shamir Rabinovitch <shamir.rabinovitch@oracle.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/core/uverbs_cmd.c

index 04d0813..76ac113 100644 (file)
@@ -230,6 +230,8 @@ static int ib_uverbs_get_context(struct uverbs_attr_bundle *attrs)
                goto err_alloc;
        }
 
+       attrs->context = ucontext;
+
        ucontext->res.type = RDMA_RESTRACK_CTX;
        ucontext->device = ib_dev;
        ucontext->cg_obj = cg_obj;