| 593 | } |
| 594 | |
| 595 | static void |
| 596 | extents_leak(tsdn_t *tsdn, arena_t *arena, extent_hooks_t **r_extent_hooks, |
| 597 | extents_t *extents, extent_t *extent, bool growing_retained) { |
| 598 | /* |
| 599 | * Leak extent after making sure its pages have already been purged, so |
| 600 | * that this is only a virtual memory leak. |
| 601 | */ |
| 602 | if (extents_state_get(extents) == extent_state_dirty) { |
| 603 | if (extent_purge_lazy_impl(tsdn, arena, r_extent_hooks, |
| 604 | extent, 0, extent_size_get(extent), growing_retained)) { |
| 605 | extent_purge_forced_impl(tsdn, arena, r_extent_hooks, |
| 606 | extent, 0, extent_size_get(extent), |
| 607 | growing_retained); |
| 608 | } |
| 609 | } |
| 610 | extent_dalloc(tsdn, arena, extent); |
| 611 | } |
| 612 | |
| 613 | void |
| 614 | extents_prefork(tsdn_t *tsdn, extents_t *extents) { |
no test coverage detected