diff --git a/include/jemalloc/internal/extent.h b/include/jemalloc/internal/extent.h index d7db49d4..d6376d5d 100644 --- a/include/jemalloc/internal/extent.h +++ b/include/jemalloc/internal/extent.h @@ -77,6 +77,7 @@ rb_proto(, extent_tree_ad_, extent_tree_t, extent_t) arena_t *extent_arena_get(const extent_t *extent); void *extent_addr_get(const extent_t *extent); size_t extent_size_get(const extent_t *extent); +void *extent_past_get(const extent_t *extent); bool extent_active_get(const extent_t *extent); bool extent_zeroed_get(const extent_t *extent); bool extent_committed_get(const extent_t *extent); @@ -119,6 +120,13 @@ extent_size_get(const extent_t *extent) return (extent->e_size); } +JEMALLOC_INLINE void * +extent_past_get(const extent_t *extent) +{ + + return ((void *)(uintptr_t)extent->e_addr + extent->e_size); +} + JEMALLOC_INLINE bool extent_active_get(const extent_t *extent) { diff --git a/include/jemalloc/internal/private_symbols.txt b/include/jemalloc/internal/private_symbols.txt index 23c206bc..f81cecc3 100644 --- a/include/jemalloc/internal/private_symbols.txt +++ b/include/jemalloc/internal/private_symbols.txt @@ -216,6 +216,7 @@ extent_committed_set extent_dirty_insert extent_dirty_remove extent_init +extent_past_get extent_prof_tctx_get extent_prof_tctx_set extent_size_get