Mesa (master): freedreno: Fix leak of shader binary on disk cache hits.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Nov 16 22:33:02 UTC 2020
Module: Mesa
Branch: master
Commit: 433841d9eb7cd9dd5e00b2f47cd998e0e986ef02
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=433841d9eb7cd9dd5e00b2f47cd998e0e986ef02
Author: Eric Anholt <eric at anholt.net>
Date: Mon Aug 3 19:23:34 2020 -0700
freedreno: Fix leak of shader binary on disk cache hits.
It's supposed to be ralloced -- there's not even a shader variant destroy
function for freeing, just ralloc_free() on the ir3_shader_variant or the
parent ir3_shader when you're done!
Fixes: f97acb4bb4b1 ("freedreno/ir3: disk-cache support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5810>
---
src/freedreno/ir3/ir3_disk_cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/freedreno/ir3/ir3_disk_cache.c b/src/freedreno/ir3/ir3_disk_cache.c
index a2249f25de3..78726710758 100644
--- a/src/freedreno/ir3/ir3_disk_cache.c
+++ b/src/freedreno/ir3/ir3_disk_cache.c
@@ -126,7 +126,7 @@ retrieve_variant(struct blob_reader *blob, struct ir3_shader_variant *v)
* pointers need special handling:
*/
- v->bin = malloc(4 * v->info.sizedwords);
+ v->bin = rzalloc_size(v, 4 * v->info.sizedwords);
blob_copy_bytes(blob, v->bin, 4 * v->info.sizedwords);
if (!v->binning_pass) {
More information about the mesa-commit
mailing list