RFR(XS) 8239005: [TESTBUG] test/hotspot/jtreg/runtime/StackGuardPages/TestStackGuardPages.java: exeinvoke.c: must initialize static state before calling do_overflow()
Reingruber, Richard
richard.reingruber at sap.com
Thu Feb 13 16:45:47 UTC 2020
Hi,
please review this small test fix
Webrev: http://cr.openjdk.java.net/~rrich/webrevs/8239005/webrev.0/
Bug: https://bugs.openjdk.java.net/browse/JDK-8239005
On one of our linuxppc64le boxes the test was failing due to the missing reset of the static
variable _rec_count before the first call to do_overflow() [1] in run_native_overflow() [2].
Consequently the recursion limit set at [3] is too high. On our linuxppc64le box we then get a
SIGSEGV with SEGV_ACCERR which is reported as test failure.
On my linuxx86_64 box I get an SIGSEGV with SEGV_MAPERR which is not reported as error.
With the fix we don't get a second SIGSEGV. Maybe a second SIGSEGV should be reported as failure...?
I tested on linuxx86_64 and linuxppc64le
Many more details to be found in the bug.
Thanks, Richard.
[1] definition of do_overflow()
http://hg.openjdk.java.net/jdk/jdk/file/c27f595b4dd0/test/hotspot/jtreg/runtime/StackGuardPages/exeinvoke.c#l128
[2] _rec_count is not reset to 0 before call to do_overflow()
http://hg.openjdk.java.net/jdk/jdk/file/c27f595b4dd0/test/hotspot/jtreg/runtime/StackGuardPages/exeinvoke.c#l168
[3] recursion limit is set too high
http://hg.openjdk.java.net/jdk/jdk/file/c27f595b4dd0/test/hotspot/jtreg/runtime/StackGuardPages/exeinvoke.c#l191
More information about the hotspot-runtime-dev
mailing list