summaryrefslogtreecommitdiffstats
path: root/src/chunk.c
diff options
context:
space:
mode:
authorJason Evans <jasone@canonware.com>2016-05-23 22:10:25 (GMT)
committerJason Evans <jasone@canonware.com>2016-06-03 19:27:41 (GMT)
commit5c6be2bdd33d1eb9d544f46f128ba93d05a01492 (patch)
tree57de9839e4bc22b0e4d53fba68952999d53e62bd /src/chunk.c
parent0eb6f08959700428f3ae0df1d8ab1cd7bd4c82bc (diff)
downloadjemalloc-5c6be2bdd33d1eb9d544f46f128ba93d05a01492.zip
jemalloc-5c6be2bdd33d1eb9d544f46f128ba93d05a01492.tar.gz
jemalloc-5c6be2bdd33d1eb9d544f46f128ba93d05a01492.tar.bz2
Refactor chunk_purge_wrapper() to take extent argument.
Diffstat (limited to 'src/chunk.c')
-rw-r--r--src/chunk.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/chunk.c b/src/chunk.c
index 363ce8f..d20c2df 100644
--- a/src/chunk.c
+++ b/src/chunk.c
@@ -281,8 +281,7 @@ chunk_leak(tsdn_t *tsdn, arena_t *arena, chunk_hooks_t *chunk_hooks, bool cache,
* that this is only a virtual memory leak.
*/
if (cache) {
- chunk_purge_wrapper(tsdn, arena, chunk_hooks,
- extent_addr_get(extent), extent_size_get(extent), 0,
+ chunk_purge_wrapper(tsdn, arena, chunk_hooks, extent, 0,
extent_size_get(extent));
}
extent_dalloc(tsdn, arena, extent);
@@ -739,11 +738,13 @@ chunk_purge_default(void *chunk, size_t size, size_t offset, size_t length,
bool
chunk_purge_wrapper(tsdn_t *tsdn, arena_t *arena, chunk_hooks_t *chunk_hooks,
- void *chunk, size_t size, size_t offset, size_t length)
+ extent_t *extent, size_t offset, size_t length)
{
chunk_hooks_assure_initialized(tsdn, arena, chunk_hooks);
- return (chunk_hooks->purge(chunk, size, offset, length, arena->ind));
+ return (chunk_hooks->purge(extent_addr_get(extent),
+ CHUNK_CEILING(extent_size_get(extent)), offset, length,
+ arena->ind));
}
static bool