projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
34fbf48
)
RDMA/vmw_pvrdma: Fix double free on pvrdma_alloc_ucontext() error path
author
Jason Gunthorpe
<jgg@nvidia.com>
Tue, 28 Apr 2026 16:17:43 +0000
(13:17 -0300)
committer
Jason Gunthorpe
<jgg@nvidia.com>
Sat, 2 May 2026 18:30:48 +0000
(15:30 -0300)
Sashiko points out that pvrdma_uar_free() is already called within
pvrdma_dealloc_ucontext(), so calling it before triggers a double free.
Cc: stable@vger.kernel.org
Fixes:
29c8d9eba550
("IB: Add vmw_pvrdma driver")
Link:
https://sashiko.dev/#/patchset/0-v1-e911b76a94d1%2B65d95-rdma_udata_rep_jgg%40nvidia.com?part=4
Link:
https://patch.msgid.link/r/10-v1-41f3135e5565+9d2-rdma_ai_fixes1_jgg@nvidia.com
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
b/drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
index
bcd43dc
..
c7c2b41
100644
(file)
--- a/
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
+++ b/
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c
@@
-322,7
+322,7
@@
int pvrdma_alloc_ucontext(struct ib_ucontext *uctx, struct ib_udata *udata)
uresp.qp_tab_size = vdev->dsr->caps.max_qp;
ret = ib_copy_to_udata(udata, &uresp, sizeof(uresp));
if (ret) {
- pvrdma_uar_free(vdev, &context->uar);
+ /* pvrdma_dealloc_ucontext() also frees the UAR */
pvrdma_dealloc_ucontext(&context->ibucontext);
return -EFAULT;
}