arena_chunk_dirty_node_init() --> extent_node_dirty_linkage_init()

This commit is contained in:
Jason Evans 2015-02-17 22:23:10 -08:00
parent eafebfdfbe
commit 47701b22ee
3 changed files with 13 additions and 11 deletions

View File

@ -77,6 +77,7 @@ void extent_node_achunk_set(extent_node_t *node, bool achunk);
void extent_node_prof_tctx_set(extent_node_t *node, prof_tctx_t *tctx); void extent_node_prof_tctx_set(extent_node_t *node, prof_tctx_t *tctx);
void extent_node_init(extent_node_t *node, arena_t *arena, void *addr, void extent_node_init(extent_node_t *node, arena_t *arena, void *addr,
size_t size, bool zeroed); size_t size, bool zeroed);
void extent_node_dirty_linkage_init(extent_node_t *node);
#endif #endif
#if (defined(JEMALLOC_ENABLE_INLINE) || defined(JEMALLOC_EXTENT_C_)) #if (defined(JEMALLOC_ENABLE_INLINE) || defined(JEMALLOC_EXTENT_C_))
@ -177,6 +178,14 @@ extent_node_init(extent_node_t *node, arena_t *arena, void *addr, size_t size,
if (config_prof) if (config_prof)
extent_node_prof_tctx_set(node, NULL); extent_node_prof_tctx_set(node, NULL);
} }
JEMALLOC_INLINE void
extent_node_dirty_linkage_init(extent_node_t *node)
{
qr_new(node, cd_link);
qr_new(&node->runs_dirty, rd_link);
}
#endif #endif
#endif /* JEMALLOC_H_INLINES */ #endif /* JEMALLOC_H_INLINES */

View File

@ -182,6 +182,7 @@ extent_node_addr_get
extent_node_addr_set extent_node_addr_set
extent_node_arena_get extent_node_arena_get
extent_node_arena_set extent_node_arena_set
extent_node_dirty_linkage_init
extent_node_init extent_node_init
extent_node_prof_tctx_get extent_node_prof_tctx_get
extent_node_prof_tctx_set extent_node_prof_tctx_set

View File

@ -152,14 +152,6 @@ arena_chunk_dirty_npages(const extent_node_t *node)
return (extent_node_size_get(node) >> LG_PAGE); return (extent_node_size_get(node) >> LG_PAGE);
} }
static void
arena_chunk_dirty_node_init(extent_node_t *node)
{
qr_new(node, cd_link);
qr_new(&node->runs_dirty, rd_link);
}
static void static void
arena_chunk_dirty_insert(arena_chunk_map_misc_t *runs_dirty, arena_chunk_dirty_insert(arena_chunk_map_misc_t *runs_dirty,
extent_node_t *chunks_dirty, extent_node_t *node) extent_node_t *chunks_dirty, extent_node_t *node)
@ -181,8 +173,8 @@ void
arena_chunk_dirty_maybe_insert(arena_t *arena, extent_node_t *node, bool dirty) arena_chunk_dirty_maybe_insert(arena_t *arena, extent_node_t *node, bool dirty)
{ {
arena_chunk_dirty_node_init(node);
if (dirty) { if (dirty) {
extent_node_dirty_linkage_init(node);
arena_chunk_dirty_insert(&arena->runs_dirty, arena_chunk_dirty_insert(&arena->runs_dirty,
&arena->chunks_dirty, node); &arena->chunks_dirty, node);
arena->ndirty += arena_chunk_dirty_npages(node); arena->ndirty += arena_chunk_dirty_npages(node);
@ -1054,7 +1046,7 @@ arena_stash_dirty(arena_t *arena, bool all, size_t npurge,
*/ */
assert(tnode != NULL); assert(tnode != NULL);
extent_node_init(tnode, arena, addr, size, zeroed); extent_node_init(tnode, arena, addr, size, zeroed);
arena_chunk_dirty_node_init(tnode); extent_node_dirty_linkage_init(tnode);
/* Stash. */ /* Stash. */
arena_chunk_dirty_insert(purge_runs_sentinel, arena_chunk_dirty_insert(purge_runs_sentinel,
purge_chunks_sentinel, tnode); purge_chunks_sentinel, tnode);
@ -1223,7 +1215,7 @@ arena_purge(arena_t *arena, bool all)
npurge = arena_compute_npurge(arena, all); npurge = arena_compute_npurge(arena, all);
qr_new(&purge_runs_sentinel, rd_link); qr_new(&purge_runs_sentinel, rd_link);
arena_chunk_dirty_node_init(&purge_chunks_sentinel); extent_node_dirty_linkage_init(&purge_chunks_sentinel);
npurgeable = arena_stash_dirty(arena, all, npurge, &purge_runs_sentinel, npurgeable = arena_stash_dirty(arena, all, npurge, &purge_runs_sentinel,
&purge_chunks_sentinel); &purge_chunks_sentinel);