mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-07-23 17:17:19 +03:00
Add extent_dirty_[gs]et().
This commit is contained in:
parent
47613afc34
commit
760bf11b23
6 changed files with 34 additions and 10 deletions
|
|
@ -1644,7 +1644,7 @@ arena_purge_to_limit(tsdn_t *tsdn, arena_t *arena, size_t ndirty_limit)
|
|||
arena->lg_dirty_mult) < arena->ndirty || ndirty_limit == 0);
|
||||
|
||||
qr_new(&purge_runs_sentinel, rd_link);
|
||||
extent_init(&purge_chunks_sentinel, arena, NULL, 0, false, false,
|
||||
extent_init(&purge_chunks_sentinel, arena, NULL, 0, false, false, false,
|
||||
false, false);
|
||||
|
||||
npurge = arena_stash_dirty(tsdn, arena, &chunk_hooks, ndirty_limit,
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ base_chunk_alloc(tsdn_t *tsdn, size_t minsize)
|
|||
base_resident += PAGE_CEILING(nsize);
|
||||
}
|
||||
}
|
||||
extent_init(extent, NULL, addr, csize, true, true, true, false);
|
||||
extent_init(extent, NULL, addr, csize, true, false, true, true, false);
|
||||
return (extent);
|
||||
}
|
||||
|
||||
|
|
|
|||
11
src/chunk.c
11
src/chunk.c
|
|
@ -553,7 +553,7 @@ chunk_alloc_wrapper_hard(tsdn_t *tsdn, arena_t *arena,
|
|||
arena->ind);
|
||||
if (addr == NULL)
|
||||
return (NULL);
|
||||
extent_init(extent, arena, addr, size, true, zero, commit, slab);
|
||||
extent_init(extent, arena, addr, size, true, false, zero, commit, slab);
|
||||
if (chunk_register(tsdn, extent)) {
|
||||
chunk_leak(tsdn, arena, chunk_hooks, false, extent);
|
||||
return (NULL);
|
||||
|
|
@ -828,8 +828,9 @@ chunk_split_wrapper(tsdn_t *tsdn, arena_t *arena, chunk_hooks_t *chunk_hooks,
|
|||
extent_t lead;
|
||||
|
||||
extent_init(&lead, arena, extent_addr_get(extent), size_a,
|
||||
extent_active_get(extent), extent_zeroed_get(extent),
|
||||
extent_committed_get(extent), extent_slab_get(extent));
|
||||
extent_active_get(extent), extent_dirty_get(extent),
|
||||
extent_zeroed_get(extent), extent_committed_get(extent),
|
||||
extent_slab_get(extent));
|
||||
|
||||
if (extent_rtree_acquire(tsdn, &lead, false, true, &lead_elm_a,
|
||||
&lead_elm_b))
|
||||
|
|
@ -838,8 +839,8 @@ chunk_split_wrapper(tsdn_t *tsdn, arena_t *arena, chunk_hooks_t *chunk_hooks,
|
|||
|
||||
extent_init(trail, arena, (void *)((uintptr_t)extent_addr_get(extent) +
|
||||
size_a), CHUNK_CEILING(size_b), extent_active_get(extent),
|
||||
extent_zeroed_get(extent), extent_committed_get(extent),
|
||||
extent_slab_get(extent));
|
||||
extent_dirty_get(extent), extent_zeroed_get(extent),
|
||||
extent_committed_get(extent), extent_slab_get(extent));
|
||||
if (extent_rtree_acquire(tsdn, trail, false, true, &trail_elm_a,
|
||||
&trail_elm_b))
|
||||
goto label_error_c;
|
||||
|
|
|
|||
|
|
@ -126,7 +126,7 @@ chunk_alloc_dss(tsdn_t *tsdn, arena_t *arena, void *new_addr, size_t size,
|
|||
return (NULL);
|
||||
}
|
||||
extent_init(cpad, arena, cpad_addr, cpad_size,
|
||||
false, false, true, false);
|
||||
false, true, false, true, false);
|
||||
}
|
||||
dss_next = (void *)((uintptr_t)ret + size);
|
||||
if ((uintptr_t)ret < (uintptr_t)dss_max ||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue