Mesa (staging/22.0): iris: Don't leak scratch BOs
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Apr 21 20:00:55 UTC 2022
Module: Mesa
Branch: staging/22.0
Commit: d56ea52c417e390c8b8a3819f3c8b0a97b4c9459
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d56ea52c417e390c8b8a3819f3c8b0a97b4c9459
Author: Jason Ekstrand <jason.ekstrand at collabora.com>
Date: Tue Apr 12 11:45:41 2022 -0500
iris: Don't leak scratch BOs
Fixes: 4d219b0eb3d6 ("iris: implement scratch space!")
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15897>
(cherry picked from commit 6ca328988f8bb56c8085ebb92dad6439bdced623)
---
.pick_status.json | 2 +-
src/gallium/drivers/iris/iris_context.c | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/.pick_status.json b/.pick_status.json
index 7c2e931df82..0386661a982 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -2156,7 +2156,7 @@
"description": "iris: Don't leak scratch BOs",
"nominated": true,
"nomination_type": 1,
- "resolution": 5,
+ "resolution": 1,
"because_sha": "4d219b0eb3d626abf094a53655843664974c7516"
},
{
diff --git a/src/gallium/drivers/iris/iris_context.c b/src/gallium/drivers/iris/iris_context.c
index b91f6f8ef8b..d106c34b848 100644
--- a/src/gallium/drivers/iris/iris_context.c
+++ b/src/gallium/drivers/iris/iris_context.c
@@ -232,6 +232,11 @@ iris_destroy_context(struct pipe_context *ctx)
for (unsigned i = 0; i < ARRAY_SIZE(ice->shaders.scratch_surfs); i++)
pipe_resource_reference(&ice->shaders.scratch_surfs[i].res, NULL);
+ for (unsigned i = 0; i < ARRAY_SIZE(ice->shaders.scratch_bos); i++) {
+ for (unsigned j = 0; j < ARRAY_SIZE(ice->shaders.scratch_bos[i]); j++)
+ iris_bo_unreference(ice->shaders.scratch_bos[i][j]);
+ }
+
iris_destroy_program_cache(ice);
iris_destroy_border_color_pool(ice);
if (screen->measure.config)
More information about the mesa-commit
mailing list