Utilize partially used TLABs
Currently, once a mutator tries to allocate an object bigger than the
TLAB size, it attempts to acquire another TLAB. The previous TLAB is not
utilized again. This leads to blocking GCs when mutators get created and
killed very frequently, as could happen in the case of Zygote.
In this change, we maintain a separate list of partially used TLABs
which can be reused whenever any mutator attempts to allocate a new TLAB
from region space.
Test: forrest hermatic test
Bug: 146706834
Change-Id: I8076663628e49fc10e33f30de937833f6812fdca
7 files changed