RFR(XS): 8214235: assertion in collectedHeap.cpp: attempt to clean empty remainder
per.liden at oracle.com
Thu Nov 29 13:30:08 UTC 2018
On 11/29/18 12:02 PM, Boris Ulasevich wrote:
> Hi Per,
> On 28.11.2018 17:35, Per Liden wrote:
>> On 11/28/18 1:39 PM, Boris Ulasevich wrote:
>>> Hi all,
>>> Please review a simple fix: do not fill remaining tlab memory
>>> when the remainder is empty.
>> Hmm I get the feeling something else is wrong here. Like a misaligned
>> object or a misaligned object size was allocated in the TLAB.
> Actually assertion check catches the case when top() = end().
> I do not think it is something criminal. May be it is better to
> add check (top() < hard_end()) instead:
There's still something fishy here. The TLAB alignment_reserve should
make sure there's always enough space left for a filler object. Do you
have a reproducer for this on x86 or does this only happen on Arm?
>> When you crash here it would be interesting to see what the tlab
>> start/end/top/etc is and what MinObjAlignement is being used.
> TLAB: start()=0x938b0b28, end()=0x938dcdc8, top()=0x938dcdc8
> MinObjAlignment: 2
More information about the hotspot-gc-dev