summaryrefslogtreecommitdiffstats
path: root/src/base.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/base.c')
-rw-r--r--src/base.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/base.c b/src/base.c
index 409c7bb..22f3613 100644
--- a/src/base.c
+++ b/src/base.c
@@ -16,6 +16,8 @@ static void *base_next_addr;
static void *base_past_addr; /* Addr immediately past base_pages. */
static extent_node_t *base_nodes;
+static size_t base_allocated;
+
/******************************************************************************/
static bool
@@ -54,6 +56,8 @@ base_alloc(size_t size)
/* Allocate. */
ret = base_next_addr;
base_next_addr = (void *)((uintptr_t)base_next_addr + csize);
+ if (config_stats)
+ base_allocated += csize;
malloc_mutex_unlock(&base_mtx);
JEMALLOC_VALGRIND_MAKE_MEM_UNDEFINED(ret, csize);
@@ -102,6 +106,17 @@ base_node_dalloc(extent_node_t *node)
malloc_mutex_unlock(&base_mtx);
}
+size_t
+base_allocated_get(void)
+{
+ size_t ret;
+
+ malloc_mutex_lock(&base_mtx);
+ ret = base_allocated;
+ malloc_mutex_unlock(&base_mtx);
+ return (ret);
+}
+
bool
base_boot(void)
{