summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libglusterfs/src/mem-pool.c13
-rw-r--r--libglusterfs/src/mem-pool.h3
2 files changed, 16 insertions, 0 deletions
diff --git a/libglusterfs/src/mem-pool.c b/libglusterfs/src/mem-pool.c
index 56a4a1dc29f..cdc275e1c4f 100644
--- a/libglusterfs/src/mem-pool.c
+++ b/libglusterfs/src/mem-pool.c
@@ -197,3 +197,16 @@ mem_put (struct mem_pool *pool, void *ptr)
}
UNLOCK (&pool->lock);
}
+
+void
+mem_pool_destroy (struct mem_pool *pool)
+{
+ if (!pool)
+ return;
+
+ LOCK_DESTROY (&pool->lock);
+ FREE (pool->pool);
+ FREE (pool);
+
+ return;
+}
diff --git a/libglusterfs/src/mem-pool.h b/libglusterfs/src/mem-pool.h
index 627945e1fe6..1b03d495454 100644
--- a/libglusterfs/src/mem-pool.h
+++ b/libglusterfs/src/mem-pool.h
@@ -51,5 +51,8 @@ mem_pool_new_fn (unsigned long sizeof_type, unsigned long count);
void mem_put (struct mem_pool *pool, void *ptr);
void *mem_get (struct mem_pool *pool);
+void
+mem_pool_destroy (struct mem_pool *pool);
+
#endif /* _MEM_POOL_H */