summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan Justen <jordan.l.justen@intel.com>2022-08-11 01:47:09 -0700
committerJordan Justen <jordan.l.justen@intel.com>2022-08-23 13:47:00 -0700
commit224614eecd3767f577c4effd56ed2a7751b84d34 (patch)
treedf7b3bc78f4297573c06447a9ffa65876df980ad
parent61a77c9ce2a10d0463ce700a156c2648db4e5ea5 (diff)
iris: Drop extra file-descriptor dup in iris_drm_screen_create()iris-remove-winsys-fd-dup
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 <jordan.l.justen@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Tested-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18020>
-rw-r--r--src/gallium/winsys/iris/drm/iris_drm_winsys.c5
1 files changed, 1 insertions, 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);
}