Commit 7cac633a authored by Penglei Jiang's avatar Penglei Jiang Committed by Jens Axboe
Browse files

io_uring: fix resource leak in io_import_dmabuf()



Replace the return statement with setting ret = -EINVAL and jumping to
the err label to ensure resources are released via io_release_dmabuf.

Fixes: a5c98e94 ("io_uring/zcrx: dmabuf backed zerocopy receive")
Signed-off-by: default avatarPenglei Jiang <superman.xpt@gmail.com>
Link: https://lore.kernel.org/r/20250625102703.68336-1-superman.xpt@gmail.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent e1d7727b
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -106,8 +106,10 @@ static int io_import_dmabuf(struct io_zcrx_ifq *ifq,
	for_each_sgtable_dma_sg(mem->sgt, sg, i)
		total_size += sg_dma_len(sg);

	if (total_size < off + len)
		return -EINVAL;
	if (total_size < off + len) {
		ret = -EINVAL;
		goto err;
	}

	mem->dmabuf_offset = off;
	mem->size = len;