From ea8c9af0b4a91ef927bbeee9afdfa7d1cea6369f Mon Sep 17 00:00:00 2001 From: Niels de Vos Date: Tue, 29 Aug 2017 00:16:22 +0200 Subject: mem-pool: track glusterfs_ctx_t in struct mem_pool In order to generate statedumps per glusterfs_ctx_t, it is needed to place all the memory pools in a structure that the context can reach. The 'struct mem_pool' has been extended with a 'list_head owner' that is linked with the glusterfs_ctx_t->mempool_list. All callers of mem_pool_new() have been updated to pass the current glusterfs_ctx_t along. This context is needed to add the new memory pool to the list and for grabbing the ctx->lock while updating the glusterfs_ctx_t->mempool_list. Updates: #307 Change-Id: Ia9384424d8d1630ef3efc9d5d523bf739c356c6e Signed-off-by: Niels de Vos Reviewed-on: https://review.gluster.org/18075 Smoke: Gluster Build System CentOS-regression: Gluster Build System Reviewed-by: Jeff Darcy --- libglusterfs/src/rbthash.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'libglusterfs/src/rbthash.c') diff --git a/libglusterfs/src/rbthash.c b/libglusterfs/src/rbthash.c index 52d8a15fd2c..06fc7ee35c8 100644 --- a/libglusterfs/src/rbthash.c +++ b/libglusterfs/src/rbthash.c @@ -83,7 +83,7 @@ err: */ rbthash_table_t * -rbthash_table_init (int buckets, rbt_hasher_t hfunc, +rbthash_table_init (glusterfs_ctx_t *ctx, int buckets, rbt_hasher_t hfunc, rbt_data_destroyer_t dfunc, unsigned long expected_entries, struct mem_pool *entrypool) @@ -123,7 +123,8 @@ rbthash_table_init (int buckets, rbt_hasher_t hfunc, if (expected_entries) { newtab->entrypool = - mem_pool_new (rbthash_entry_t, expected_entries); + mem_pool_new_ctx (ctx, rbthash_entry_t, + expected_entries); if (!newtab->entrypool) { goto free_buckets; } -- cgit