RFR(S): 8239915: Zero VM crashes when handling dynamic constant
David Holmes
david.holmes at oracle.com
Wed Feb 26 05:58:34 UTC 2020
Hi Felix,
On 26/02/2020 12:18 pm, Yangfei (Felix) wrote:
> Hi,
>
> Please help review this patch fixing a zero vm crash issue.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8239915
> Webrev: http://cr.openjdk.java.net/~fyang/8239915/webrev.00/
>
> The dynamic constant is not resolved at [1] and this leads to the crash.
> Patch fixes the issue by always resolving the dynamic constant at the site.
> This aligns with the template interpreter (TemplateTable::condy_helper).
Not familiar with this code but I don't understand the failure mode. If
we haven't cached the resolution result we will get NULL and re-resolve
it. If we have cached it then it should be correct. Either way no crash,
and I certainly don't see how we end up at:
2406 default: ShouldNotReachHere();
??
> Tier1 tested with x86-64 zero release build.
> Newly added test case fails without this fix and passes with this fix.
Note that for the tests the source directory structure does not
generally indicate a package structure, so no need to put the test
classes into a package unless it is actually required for the test to
pass. (And even then no need for the package used to map to the test
directory structure.)
Thanks,
David
> [1] http://hg.openjdk.java.net/jdk/jdk/file/ff1f4b5e0c9a/src/hotspot/share/interpreter/bytecodeInterpreter.cpp#2394
>
More information about the hotspot-runtime-dev
mailing list