mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-07-18 14:47:18 +03:00
With profiling active, xallocx may decline to grow an allocation that is not page-aligned. The profiling path can require sampled xallocx growth to use page-aligned pointers; otherwise it can return the old usable size without committing the purged tail. Observed on Darwin, where decommit/commit are real VM state changes. The shrink/purge half succeeds and records a decommit, then the profiling-limited grow skips the matching commit. This is not Darwin-specific. Linux no-overcommit should expose the same mismatch. Usual Linux overcommit behavior papers it over by making commit/decommit hooks report unsupported, so both sides of the old equality check stay false. Relax the default-path assertion only while profiling is active, and add a page-aligned case that still requires xallocx shrink and grow to succeed, preserving commit/merge coverage. Assisted-by: Codex gpt-5.5 xhigh |
||
|---|---|---|
| .. | ||
| analyze | ||
| include/test | ||
| integration | ||
| src | ||
| stress | ||
| unit | ||
| test.sh.in | ||