From bb2c8704b3b56095b1dcac867c018589b477ae10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Corentin=20No=C3=ABl?= Date: Fri, 12 Sep 2025 23:58:08 +0200 Subject: [PATCH] virgl: Skip resource destruction only when there are actually needed references Suggested by Jan Alexander Steffens in https://gitlab.freedesktop.org/mesa/mesa/-/issues/13844#note_3087461 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13844 Fixes: 6c1c116a0fb66f2d74976260775ec73025c4a697 cc: mesa-stable Part-of: (cherry picked from commit 63cd410c29f1a052672fda0316810c613ae76571) --- .pick_status.json | 2 +- src/gallium/winsys/virgl/drm/virgl_drm_winsys.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 51fbfccf205..6748a520c12 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -5184,7 +5184,7 @@ "description": "virgl: Skip resource destruction only when there are actually needed references", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "6c1c116a0fb66f2d74976260775ec73025c4a697", "notes": null diff --git a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c index 33f5cf7a1a1..6e025236666 100644 --- a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c +++ b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c @@ -82,7 +82,7 @@ static void virgl_hw_res_destroy(struct virgl_drm_winsys *qdws, return; } - if (!--res->needed_references) { + if (--res->needed_references > 0) { mtx_unlock(&qdws->bo_handles_mutex); return; }