From e9f40e42de6b47e036d603296ecb5facb384eb0c Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Thu, 11 Aug 2022 01:47:09 -0700 Subject: [PATCH] iris: Drop extra file-descriptor dup in iris_drm_screen_create() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In a99e85db9eb, we added a dup into iris_screen_create(). Apparently some android code paths must be hitting iris_screen_create() without calling iris_drm_screen_create(). After a99e85db9eb, the code paths that do hit iris_drm_screen_create() will now dup the fd twice, but iris_screen_destroy() will only close 1 of these fds. Fixes: a99e85db9eb ("iris:Duplicate DRM fd internally instead of reuse.") Signed-off-by: Jordan Justen Reviewed-by: Kenneth Graunke Tested-by: Tapani Pälli Reviewed-by: José Roberto de Souza Part-of: --- src/gallium/winsys/iris/drm/iris_drm_winsys.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/gallium/winsys/iris/drm/iris_drm_winsys.c b/src/gallium/winsys/iris/drm/iris_drm_winsys.c index a7a70283ef9..15095e2d3fa 100644 --- a/src/gallium/winsys/iris/drm/iris_drm_winsys.c +++ b/src/gallium/winsys/iris/drm/iris_drm_winsys.c @@ -32,8 +32,5 @@ extern struct pipe_screen *iris_screen_create(int fd, const struct pipe_screen_c struct pipe_screen * iris_drm_screen_create(int fd, const struct pipe_screen_config *config) { - int newfd = os_dupfd_cloexec(fd); - if (newfd < 0) - return NULL; - return iris_screen_create(newfd, config); + return iris_screen_create(fd, config); }