panfrost: Use normal malloc/free instead of ralloc for surfaces
Fixes a double-free in some Qt5 WebEngine apps (e.g. ghostwriter).
Cc: mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8678>
(cherry picked from commit 1d967132f3c4aefa72224d1029aa64a34053bf6b)
diff --git a/.pick_status.json b/.pick_status.json
index a7c5900..36669d2 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -274,7 +274,7 @@
"description": "panfrost: Use normal malloc/free instead of ralloc for surfaces",
"nominated": true,
"nomination_type": 0,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": null
},
diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c
index 6697042..3d9658e 100644
--- a/src/gallium/drivers/panfrost/pan_resource.c
+++ b/src/gallium/drivers/panfrost/pan_resource.c
@@ -175,7 +175,7 @@
{
struct pipe_surface *ps = NULL;
- ps = rzalloc(pipe, struct pipe_surface);
+ ps = CALLOC_STRUCT(pipe_surface);
if (ps) {
pipe_reference_init(&ps->reference, 1);
@@ -211,7 +211,7 @@
{
assert(surf->texture);
pipe_resource_reference(&surf->texture, NULL);
- ralloc_free(surf);
+ free(surf);
}
static struct pipe_resource *