On Mon, 12 Oct 2020 17:50:31 GMT, Aleksey Shipilev <sh...@openjdk.org> wrote:

> This looks reasonable to me, but after testing it on x86_32, I wonder if
> https://bugs.openjdk.java.net/browse/JDK-8254606 is the problem with this 
> patch, or a different issue.

[JDK-8254606](https://bugs.openjdk.java.net/browse/JDK-8254606) is also caused 
by
[JDK-8224509](https://bugs.openjdk.java.net/browse/JDK-8224509), which has 
missed some cases where `align_up(xxx,
SharedSpaceObjectAlignment)` is necessary.

Since the cppVtables assertion fix cannot be easily validated by itself, I've 
decided to also include the `align_up`
fixes in this PR.

I have tested the fix on linux-x86 (32-bit) but the latest repo seems a bit 
flaky. Even if I disable CDS, sometime I
get failures in (non-CDS) test cases like `There cannot be a 
NullPointerException at bci 14 of method byte
java.lang.String.coder()`.

I was able to run all 200+ CDS tests cases, and I would get about 5 failures 
due with the above error message. If I ran
the failed tests again, they passed. So I **think** I have fixed the 32-bit 
issues with CDS, but there are probably
other problems with the 32-bit build.

Note that Oracle no longer supports the 32-bit x86 VMs. So my fix is intended 
to ensure that the CDS code is using
SharedSpaceObjectAlignment properly, and I can only test thoroughly on our 
supported platforms.

-------------

PR: https://git.openjdk.java.net/jdk/pull/591

Reply via email to