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

Thomas Stuefe stuefe at openjdk.org
Thu Feb 9 06:32:44 UTC 2023


On Wed, 8 Feb 2023 12:53:11 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)
>
> Varada M has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Updated the segfault address for AIX

Okay, thanks.

> > Test fix still missing... see
> > https://github.com/openjdk/jdk/blob/bf17936d1a3aa86e4b581605ed1a15c8e66c1c3b/test/hotspot/jtreg/runtime/ErrorHandling/TestSigInfoInHsErrFile.java#L71
> 
> Yes I have made those changes and checked but /test/hotspot/jtreg/runtime/ErrorHandling/TestSigInfoInHsErrFile.java is failing before checking VMError::_segfault_address. TestSigInfoInHsErrFile.java is failing with a RuntimeException: hs-err file incomplete (first missing pattern: # ._VMError::controlled_crash._).
> 
> Thanks

That is a different issue; probably related to `VMError::controlled_crash()` being inlined by xlc, so it does not show up in the callstack. There have been fixes for this around, I think.

Okay, I approve this now, but if you fix the VMError::controlled_crash() problem in TestSigInfoInHsErrFile.java, you will run right into the problem that "0x0*1400" does not match. Then you have to change this to (I guess) 0xFFFFFFFFFFFFFFFF (your -1 you pass as invalid address).

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

Marked as reviewed by stuefe (Reviewer).

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


More information about the hotspot-runtime-dev mailing list