]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
RDMA/ocrdma: Don't NULL deref uctx on errors in ocrdma_copy_pd_uresp()
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 28 Apr 2026 16:17:42 +0000 (13:17 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 14 May 2026 13:31:16 +0000 (15:31 +0200)
commit 34fbf48cf3b410d2a6e8c586fa952a36331ca5ba upstream.

Sashiko points out that pd->uctx isn't initialized until late in the
function so all these error flow references are NULL and will crash. Use
the uctx that isn't NULL.

Cc: stable@vger.kernel.org
Fixes: fe2caefcdf58 ("RDMA/ocrdma: Add driver for Emulex OneConnect IBoE RDMA adapter")
Link: https://sashiko.dev/#/patchset/0-v1-e911b76a94d1%2B65d95-rdma_udata_rep_jgg%40nvidia.com?part=4
Link: https://patch.msgid.link/r/9-v1-41f3135e5565+9d2-rdma_ai_fixes1_jgg@nvidia.com
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c

index e89be2fbd5eb2708b3d94e58dfa39e98562b1950..ea04b8cace99a3f5c46817e83b0e2de27bf527a8 100644 (file)
@@ -620,9 +620,9 @@ static int ocrdma_copy_pd_uresp(struct ocrdma_dev *dev, struct ocrdma_pd *pd,
 
 ucopy_err:
        if (pd->dpp_enabled)
-               ocrdma_del_mmap(pd->uctx, dpp_page_addr, PAGE_SIZE);
+               ocrdma_del_mmap(uctx, dpp_page_addr, PAGE_SIZE);
 dpp_map_err:
-       ocrdma_del_mmap(pd->uctx, db_page_addr, db_page_size);
+       ocrdma_del_mmap(uctx, db_page_addr, db_page_size);
        return status;
 }