summaryrefslogtreecommitdiff
path: root/mem-pool.h
diff options
context:
space:
mode:
authorJameson Miller <jamill@microsoft.com>2018-07-02 19:49:39 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-07-03 17:58:27 (GMT)
commit8616a2d0cb57865540f1c00ac2e5385a6cc5d84e (patch)
treeaa15c9800bf6305fd1dd5491b3abb2a591b1d089 /mem-pool.h
parent8e72d67529ba0adfb6f7d24a21e909c2a1e1d069 (diff)
downloadgit-8616a2d0cb57865540f1c00ac2e5385a6cc5d84e.zip
git-8616a2d0cb57865540f1c00ac2e5385a6cc5d84e.tar.gz
git-8616a2d0cb57865540f1c00ac2e5385a6cc5d84e.tar.bz2
block alloc: add validations around cache_entry lifecyle
Add an option (controlled by an environment variable) perform extra validations on mem_pool allocated cache entries. When set: 1) Invalidate cache_entry memory when discarding cache_entry. 2) When discarding index_state struct, verify that all cache_entries were allocated from expected mem_pool. 3) When discarding mem_pools, invalidate mem_pool memory. This should provide extra checks that mem_pools and their allocated cache_entries are being used as expected. Signed-off-by: Jameson Miller <jamill@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'mem-pool.h')
-rw-r--r--mem-pool.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/mem-pool.h b/mem-pool.h
index adeefdc..999d3c3 100644
--- a/mem-pool.h
+++ b/mem-pool.h
@@ -29,7 +29,7 @@ void mem_pool_init(struct mem_pool **mem_pool, size_t initial_size);
/*
* Discard a memory pool and free all the memory it is responsible for.
*/
-void mem_pool_discard(struct mem_pool *mem_pool);
+void mem_pool_discard(struct mem_pool *mem_pool, int invalidate_memory);
/*
* Alloc memory from the mem_pool.