From 0be6b65f415f3dafe9ab91a80c913199dbf448e9 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Wed, 15 Nov 2023 10:52:37 +0100 Subject: [PATCH] iris: replace dup() with os_dupfd_cloexec() dup() will leak the new FD into any child process after fork(). Signed-off-by: Simon Ser Part-of: --- src/gallium/drivers/iris/iris_bufmgr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/iris/iris_bufmgr.c b/src/gallium/drivers/iris/iris_bufmgr.c index ed8d0848279..e5c8cce7a21 100644 --- a/src/gallium/drivers/iris/iris_bufmgr.c +++ b/src/gallium/drivers/iris/iris_bufmgr.c @@ -56,6 +56,7 @@ #include "dev/intel_device_info.h" #include "drm-uapi/dma-buf.h" #include "isl/isl.h" +#include "util/os_file.h" #include "util/os_mman.h" #include "util/u_debug.h" #include "util/macros.h" @@ -1971,7 +1972,7 @@ iris_bo_import_dmabuf(struct iris_bufmgr *bufmgr, int prime_fd, if (INTEL_DEBUG(DEBUG_CAPTURE_ALL)) bo->real.capture = true; bo->gem_handle = handle; - bo->real.prime_fd = needs_prime_fd(bufmgr) ? dup(prime_fd) : -1; + bo->real.prime_fd = needs_prime_fd(bufmgr) ? os_dupfd_cloexec(prime_fd) : -1; uint64_t alignment = 1;