From 4bf257a18fdad05d359c60464076a4fb78b2c79a Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 26 Aug 2024 13:23:07 +1000 Subject: [PATCH] llvmpipe: make sure to duplicate the fd handle before giving out This handle is given to the user to close, so make sure to dup it first. Fixes: d74ea2c117fe ("llvmpipe: Implement dmabuf handling") Reviewed-by: Mike Blumenkrantz Reviewed-by: Lucas Fryzek Part-of: --- src/gallium/drivers/llvmpipe/lp_texture.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c index eb553d93b2b..043bacdaa75 100644 --- a/src/gallium/drivers/llvmpipe/lp_texture.c +++ b/src/gallium/drivers/llvmpipe/lp_texture.c @@ -822,8 +822,9 @@ llvmpipe_resource_get_handle(struct pipe_screen *_screen, lpr->data = lpr->dmabuf_alloc->cpu_addr; /* reuse lavapipe codepath to handle destruction */ lpr->backable = true; + } else { + whandle->handle = os_dupfd_cloexec(lpr->dmabuf_alloc->dmabuf_fd); } - whandle->handle = lpr->dmabuf_alloc->dmabuf_fd; whandle->modifier = DRM_FORMAT_MOD_LINEAR; whandle->stride = lpr->row_stride[0]; return true;