The change for https://bugs.webkit.org/show_bug.cgi?id=224706 causes more calls to madvise. The way that the bmalloc scavenger calls madvise(..., MADV_FREE_REUSABLE) to decommit ranges is conservative, in that it merges free pages with adjacent free pages. When we decommit via madvise(), we decommit the whole free range, including pages that have already been decomitted. Rolling out r276266 to do some automated testing. At the same time, we'll work on changing the madvise() decommitting to be more precise. Note that the committing of pages by calling madvise(..., MADV_FREE_REUSE), making them available for bmalloc to use, is precise. We only call it when are going to use the pages in the range.
<rdar://78188389>
Committed r277898 (238032@main): <https://commits.webkit.org/238032@main>