diff options
author | Kenneth Graunke <[email protected]> | 2017-02-24 02:05:16 +0000 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2017-02-27 15:46:12 -0800 |
commit | 63d1ebca3a6e1ec51f7f31ab9b77af0fb7e7f857 (patch) | |
tree | e75a7952f0f028484f342dc40b8dd5b222db573e /src | |
parent | aa8bb9fc157367a12aa83a44b627ddeed02e2711 (diff) |
ralloc: Delete autofree handling.
There was exactly one user of this, and I just removed it.
It also accessed an implicit global context, with no locking. This
meant that it was only safe if all callers of ralloc_autofree_context()
held the same lock...which is a pretty terrible thing for a utility
library to impose.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Reviewed-by: Lionel Landwerlin <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/util/ralloc.c | 18 | ||||
-rw-r--r-- | src/util/ralloc.h | 9 |
2 files changed, 0 insertions, 27 deletions
diff --git a/src/util/ralloc.c b/src/util/ralloc.c index 980e4e4f138..d5cc16766b1 100644 --- a/src/util/ralloc.c +++ b/src/util/ralloc.c @@ -323,24 +323,6 @@ ralloc_parent(const void *ptr) return info->parent ? PTR_FROM_HEADER(info->parent) : NULL; } -static void *autofree_context = NULL; - -static void -autofree(void) -{ - ralloc_free(autofree_context); -} - -void * -ralloc_autofree_context(void) -{ - if (unlikely(autofree_context == NULL)) { - autofree_context = ralloc_context(NULL); - atexit(autofree); - } - return autofree_context; -} - void ralloc_set_destructor(const void *ptr, void(*destructor)(void *)) { diff --git a/src/util/ralloc.h b/src/util/ralloc.h index 3e2d342b45e..7d906519661 100644 --- a/src/util/ralloc.h +++ b/src/util/ralloc.h @@ -247,15 +247,6 @@ void ralloc_adopt(const void *new_ctx, void *old_ctx); void *ralloc_parent(const void *ptr); /** - * Return a context whose memory will be automatically freed at program exit. - * - * The first call to this function creates a context and registers a handler - * to free it using \c atexit. This may cause trouble if used in a library - * loaded with \c dlopen. - */ -void *ralloc_autofree_context(void); - -/** * Set a callback to occur just before an object is freed. */ void ralloc_set_destructor(const void *ptr, void(*destructor)(void *)); |