Change what moz_dispose_arena does
Categories
(Core :: Memory Allocator, task)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox74 | --- | fixed |
People
(Reporter: glandium, Assigned: glandium)
References
(Blocks 1 open bug)
Details
Attachments
(2 files)
Currently, it's expected to "lazily" dispose of the arena. That is, if the arena still has allocations, the arena is kept around. Using it for new allocations is an error, but otherwise, it's possible to free allocations from there. Once it's empty, the arena is freed too. Well, that's the idea, but that last part is not actually implemented, cf. bug 1364359.
While that is still an (optionally) desirable disposal mode, other modes would be useful as well. So this bug is here to switch the current mode to something that can more easily be used for e.g. bug 1377999.
The idea is to make moz_dispose_arena() free the arena immediately, and MOZ_CRASH if it's not already empty.
| Assignee | ||
Comment 1•6 years ago
|
||
The base_node_alloc and base_node_dealloc are wrappers for the base
allocator that allow to free memory (the base allocator doesn't support
freeing memory), using a free list. They are dedicated to extent_node_t
objects (the only ones we currently ever need to free).
We're going to need to free other types of objects, so make this more
generic.
| Assignee | ||
Comment 2•6 years ago
|
||
Currently, it's expected to "lazily" dispose of the arena. That is, if
the arena still has allocations, the arena is kept around. Using it for
new allocations is an error, but otherwise, it's possible to free
allocations from there. Once it's empty, the arena is freed too. Well,
that's the idea, but that last part is not actually implemented, cf.
bug 1364359.
While that is still an (optionally) desirable disposal mode, other modes
would be useful as well. So this bug is here to switch the current mode
to something that can more easily be used for e.g. bug 1377999.
The idea is to make moz_dispose_arena() free the arena immediately, and
MOZ_CRASH if it's not already empty (on a besst effort basis).
Comment 4•6 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/f127766b5901
https://hg.mozilla.org/mozilla-central/rev/ad6570e7d414
Description
•