Mesa (master): ralloc: Delete autofree handling.

Kenneth Graunke kwg at kemper.freedesktop.org
Mon Feb 27 23:46:23 UTC 2017


Module: Mesa
Branch: master
Commit: 63d1ebca3a6e1ec51f7f31ab9b77af0fb7e7f857
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=63d1ebca3a6e1ec51f7f31ab9b77af0fb7e7f857

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Feb 24 02:05:16 2017 +0000

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 <kenneth at whitecape.org>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>

---

 src/util/ralloc.c | 18 ------------------
 src/util/ralloc.h |  9 ---------
 2 files changed, 27 deletions(-)

diff --git a/src/util/ralloc.c b/src/util/ralloc.c
index 980e4e4..d5cc167 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 3e2d342..7d90651 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 *));




More information about the mesa-commit mailing list