Mesa (main): virgl:Fix the leak of hw_res used as fence
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu May 27 04:40:36 UTC 2021
Module: Mesa
Branch: main
Commit: 4a3c715bb4654ae2c8b61bfb8af8dadde60d675a
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a3c715bb4654ae2c8b61bfb8af8dadde60d675a
Author: cheyang <cheyang at bytedance.com>
Date: Wed May 26 20:44:57 2021 +0800
virgl:Fix the leak of hw_res used as fence
Fence destroy hw_res not dec reference.Lead leak.
Call virgl_drm_resource_reference() to release hw_res
instead of calling virgl_hw_res_destroy() directly.
Fixes: c54fb6ef3d8 ("virgl: Don't destroy resource while it's in use.")
Signed-off-by: cheyang <cheyang at bytedance.com>
Reviewed-by: Chia-I Wu <olvaffe at gmail.com>
Reviewed-by: Lepton Wu <lepton at chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11008>
---
src/gallium/winsys/virgl/drm/virgl_drm_winsys.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
index 6ff94ced519..1dd7b001925 100644
--- a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
+++ b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
@@ -1044,8 +1044,7 @@ static void virgl_fence_reference(struct virgl_winsys *vws,
if (vws->supports_fences) {
close(dfence->fd);
} else {
- struct virgl_drm_winsys *vdws = virgl_drm_winsys(vws);
- virgl_hw_res_destroy(vdws, dfence->hw_res);
+ virgl_drm_resource_reference(vws, &dfence->hw_res, NULL);
}
FREE(dfence);
}
More information about the mesa-commit
mailing list