diff options
author | Ben Gamari <ben@smart-cactus.org> | 2022-12-20 14:30:03 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2022-12-20 14:30:32 -0500 |
commit | 5287266e0df91997947ddba7475a8aa7337ddda8 (patch) | |
tree | 8975889b4ca6f888e22c040e326eff8234fad76a | |
parent | 5e047effac9228f3bdddb66c9056e86621ccbec8 (diff) | |
download | haskell-wip/m32-debug.tar.gz |
rts/m32: Fix sanity checkingwip/m32-debug
Previously we would attempt to clear pages which were marked as
read-only. Fix this.
-rw-r--r-- | rts/linker/M32Alloc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/linker/M32Alloc.c b/rts/linker/M32Alloc.c index 6ad316e164..17d3d12459 100644 --- a/rts/linker/M32Alloc.c +++ b/rts/linker/M32Alloc.c @@ -286,13 +286,13 @@ m32_release_page(struct m32_page_t *page) const size_t pgsz = getPageSize(); ssize_t sz = page->filled_page.size; - IF_DEBUG(sanity, memset(page, 0xaa, sz)); // Break the page, which may be a large multi-page allocation, into // individual pages for the page pool while (sz > 0) { if (m32_free_page_pool_size < M32_MAX_FREE_PAGE_POOL_SIZE) { mprotectForLinker(page, pgsz, MEM_READ_WRITE); + IF_DEBUG(sanity, memset(page, 0xaa, pgsz)); SET_PAGE_TYPE(page, FREE_PAGE); page->free_page.next = m32_free_page_pool; m32_free_page_pool = page; |