RFR: JDK-8302043: [ AIX ] Safefetch fails for bad_addressN and bad_address32

Thomas Stuefe stuefe at openjdk.org
Wed Feb 8 09:55:42 UTC 2023


On Wed, 8 Feb 2023 07:30:15 GMT, Varada M <duke at openjdk.org> wrote:

> On AIX, reading from lower range addresses like 5120(5K) does not cause a segmentation fault, though writing to them does. Hence the safefetch tests don't run as expected on AIX. This is solved by setting bad_addressN and bad_address32 to -1 for AIX. 
> These tests under NMTGtests.java also passes :
> gtest/NMTGtests.java#nmt-detail
> gtest/NMTGtests.java#nmt-summary
> gtest/NMTGtests.java#nmt-off
> 
> Reported issue: [JDK-8302043](https://bugs.openjdk.org/browse/JDK-8302043)

Hi @varada1110,

thank you. But could you please adjust VMError::segfault_address instead? It already adjusts for AIX, but apparently that's not enough:


static constexpr intptr_t segfault_address = (1 * K) AIX_ONLY(+ (4 * K));


Note that this address is checked in java (see test/hotspot/jtreg/runtime/ErrorHandling/TestSigInfoInHsErrFile.java), which you should adjust too.

This begs the question, if VMError::segfault_address is wrong today for AIX, TestSigInfoInHsErrFile.java must have failed, too, right?

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

Changes requested by stuefe (Reviewer).

PR: https://git.openjdk.org/jdk/pull/12468


More information about the hotspot-runtime-dev mailing list