i965: replace all dup() with os_dupfd_cloexec()
authorEric Engestrom <eric@engestrom.ch>
Fri, 5 Jun 2020 08:55:03 +0000 (10:55 +0200)
committerMarge Bot <eric+marge@anholt.net>
Thu, 18 Jun 2020 02:09:56 +0000 (02:09 +0000)
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

src/mesa/drivers/dri/i965/brw_bufmgr.c
src/mesa/drivers/dri/i965/brw_sync.c

index ea505176aae62bb8de1d7c2dc3ed75a21d11def9..f0d69379f5fcc684b74b5d95b0f8d5442f2a5d56 100644 (file)
@@ -1855,7 +1855,7 @@ brw_bufmgr_create(struct gen_device_info *devinfo, int fd, bool bo_reuse)
     * Don't do this! Ensure that each library/bufmgr has its own device
     * fd so that its namespace does not clash with another.
     */
-   bufmgr->fd = dup(fd);
+   bufmgr->fd = os_dupfd_cloexec(fd);
    if (bufmgr->fd < 0) {
       free(bufmgr);
       return NULL;
index f44c4e08ccb8237e116cd2bad399cd05c379dadf..78b18443be61c858eb243205c1fdc4ffab046264 100644 (file)
@@ -40,6 +40,8 @@
 
 #include <libsync.h> /* Requires Android or libdrm-2.4.72 */
 
+#include "util/os_file.h"
+
 #include "brw_context.h"
 #include "intel_batchbuffer.h"
 
@@ -501,7 +503,7 @@ brw_dri_create_fence_fd(__DRIcontext *dri_ctx, int fd)
          goto fail;
    } else {
       /* Import the sync fd as an in-fence. */
-      fence->sync_fd = dup(fd);
+      fence->sync_fd = os_dupfd_cloexec(fd);
    }
 
    assert(fence->sync_fd != -1);
@@ -518,7 +520,7 @@ static int
 brw_dri_get_fence_fd_locked(struct brw_fence *fence)
 {
    assert(fence->type == BRW_FENCE_TYPE_SYNC_FD);
-   return dup(fence->sync_fd);
+   return os_dupfd_cloexec(fence->sync_fd);
 }
 
 static int