diff options
author | Jordan Justen <jordan.l.justen@intel.com> | 2022-08-11 01:47:09 -0700 |
---|---|---|
committer | Jordan Justen <jordan.l.justen@intel.com> | 2022-08-23 13:47:00 -0700 |
commit | 224614eecd3767f577c4effd56ed2a7751b84d34 (patch) | |
tree | df7b3bc78f4297573c06447a9ffa65876df980ad | |
parent | 61a77c9ce2a10d0463ce700a156c2648db4e5ea5 (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.c | 5 |
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); } |