panfrost: Cleanup leak todos
Many of these are now patched; one of them we patch here. Regardless, this is one less thing to worry about in the code, I suppose. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
This commit is contained in:
@@ -1669,15 +1669,6 @@ panfrost_bind_vertex_elements_state(
|
||||
ctx->dirty |= PAN_DIRTY_VERTEX;
|
||||
}
|
||||
|
||||
static void
|
||||
panfrost_delete_vertex_elements_state(struct pipe_context *pctx, void *hwcso)
|
||||
{
|
||||
struct panfrost_vertex_state *so = (struct panfrost_vertex_state *) hwcso;
|
||||
unsigned bytes = sizeof(struct mali_attr_meta) * so->num_elements;
|
||||
DBG("Vertex elements delete leaks descriptor (%d bytes)\n", bytes);
|
||||
free(hwcso);
|
||||
}
|
||||
|
||||
static void *
|
||||
panfrost_create_shader_state(
|
||||
struct pipe_context *pctx,
|
||||
@@ -1705,9 +1696,6 @@ panfrost_delete_shader_state(
|
||||
DBG("Deleting TGSI shader leaks duplicated tokens\n");
|
||||
}
|
||||
|
||||
unsigned leak = cso->variant_count * sizeof(struct mali_shader_meta);
|
||||
DBG("Deleting shader state leaks descriptors (%d bytes), and shader bytecode\n", leak);
|
||||
|
||||
free(so);
|
||||
}
|
||||
|
||||
@@ -2567,7 +2555,7 @@ panfrost_create_context(struct pipe_screen *screen, void *priv, unsigned flags)
|
||||
|
||||
gallium->create_vertex_elements_state = panfrost_create_vertex_elements_state;
|
||||
gallium->bind_vertex_elements_state = panfrost_bind_vertex_elements_state;
|
||||
gallium->delete_vertex_elements_state = panfrost_delete_vertex_elements_state;
|
||||
gallium->delete_vertex_elements_state = panfrost_generic_cso_delete;
|
||||
|
||||
gallium->create_fs_state = panfrost_create_shader_state;
|
||||
gallium->delete_fs_state = panfrost_delete_shader_state;
|
||||
|
@@ -30,7 +30,6 @@
|
||||
struct panfrost_job *
|
||||
panfrost_create_job(struct panfrost_context *ctx)
|
||||
{
|
||||
/* TODO: Don't leak */
|
||||
struct panfrost_job *job = rzalloc(NULL, struct panfrost_job);
|
||||
|
||||
job->ctx = ctx;
|
||||
|
@@ -353,8 +353,14 @@ panfrost_destroy_bo(struct panfrost_screen *screen, struct panfrost_bo *pbo)
|
||||
}
|
||||
|
||||
if (bo->has_checksum) {
|
||||
/* TODO */
|
||||
DBG("--leaking checksum (%zd bytes)--\n", bo->checksum_slab.size);
|
||||
struct panfrost_memory mem = {
|
||||
.cpu = bo->checksum_slab.cpu,
|
||||
.gpu = bo->checksum_slab.gpu,
|
||||
.size = bo->checksum_slab.size,
|
||||
.gem_handle = bo->checksum_slab.gem_handle,
|
||||
};
|
||||
|
||||
screen->driver->free_slab(screen, &mem);
|
||||
}
|
||||
|
||||
if (bo->imported) {
|
||||
|
Reference in New Issue
Block a user