In ZObjectAllocator, when we allocate a page we increment _used. However, we might later undo that page allocation, but we then leave _used as is. This results in a sometimes slightly incorrect value being reported by ZCollectedHeap::tlab_used(), which is fed into the TLAB heuristics. This incorrectness is not that big of a deal, but we should still fix this.
We can't safely decrement _used (because we might be executing on a different CPU now), but we can track the amount of undos we've done, and later subtract that from _used.
We can't safely decrement _used (because we might be executing on a different CPU now), but we can track the amount of undos we've done, and later subtract that from _used.