Assertion failure on PPC64 after 8200545: Improve filter for enqueued deferred cards

Doerr, Martin martin.doerr at sap.com
Fri May 24 15:03:59 UTC 2019


Hi Thomas,

> The SPARC workaround has another background: SPARC does not like
> (small) structs.
> 
> See
> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2019-
> May/025790.html
>  referring to
> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2014-
> December/011557.html

Thanks for the pointers.


> I can prepare some change for you to test, making the fields accessed
> "atomically" (via  e.g. our Atomic::load/store methods, or making them
> word sized) but I can't really test if it fixes the problem as we've
> never reproduced this case afaict in our CI. Would that help you?

I could add a change for our nightly tests and run it for several weeks.
I don't have a good feeling about how often this problems occurs.
Maybe we should run the test in a loop for a long time.


> Next week I intend to dedicate some time to think through the code
> again. It seems worth thinking through the code with memory ordering
> problems in mind again.

That would be great. Thanks. Yeah, it may be a memory ordering issue.


> We could go backout this change, but this will make JDK-8213108 out for
> review a bit more complicated at least. But if it is a memory
> visibility problem, I fear that as explained in an earlier email, this
> would just make the assert go away but not fix the issue...

I agree.

Best regards,
Martin



More information about the hotspot-gc-dev mailing list