RFR: 8365487: [asan] some oops (mode) related tests fail
Kim Barrett
kbarrett at openjdk.org
Thu Aug 14 06:57:18 UTC 2025
On Wed, 13 Aug 2025 13:23:45 GMT, Matthias Baesken <mbaesken at openjdk.org> wrote:
> When running with asan - enabled binaries, some oops related tests fail.
> This seems to be related to (small) changes in memory layout caused by asan.
> examples :
> runtime/CompressedOops/UseCompressedOops.java
>
>
> java.lang.RuntimeException: 'Zero based' missing from stdout/stderr
> at jdk.test.lib.process.OutputAnalyzer.shouldContain(OutputAnalyzer.java:253)
> at UseCompressedOops.testCompressedOopsModes(UseCompressedOops.java:98)
> at UseCompressedOops.testCompressedOopsModesGCs(UseCompressedOops.java:59)
> at UseCompressedOops.main(UseCompressedOops.java:48)
> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:565)
> at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
> at java.base/java.lang.Thread.run(Thread.java:1474)
>
>
>
>
> jdk/jfr/event/gc/configuration/TestGCHeapConfigurationEventWith32BitOops.java
>
>
> Error: Value not equal to 32-bit, field='compressedOopsMode', value='Non-zero based' expected: Non-zero based but was: 32-bit
> Failed event:
> jdk.GCHeapConfiguration {
> startTime = 13:13:02.886 (2025-08-09)
> minSize = 100.0 MB
> maxSize = 100.0 MB
> initialSize = 100.0 MB
> usesCompressedOops = true
> compressedOopsMode = "Non-zero based"
> objectAlignment = 8 bytes
> heapAddressBits = 32
> }
>
> ----------System.err:(20/1718)----------
> java.lang.RuntimeException: Value not equal to 32-bit, field='compressedOopsMode', value='Non-zero based' expected: Non-zero based but was: 32-bit
> at jdk.test.lib.Asserts.fail(Asserts.java:715)
> at jdk.test.lib.Asserts.assertEquals(Asserts.java:208)
> at jdk.test.lib.jfr.EventField.lambda$equal$0(EventField.java:50)
> at jdk.test.lib.jfr.EventField.doAssert(EventField.java:114)
> at jdk.test.lib.jfr.EventField.equal(EventField.java:50)
> at jdk.test.lib.jfr.EventVerifier.verifyEquals(EventVerifier.java:35)
> at jdk.jfr.event.gc.configuration.GCHeapConfigurationEventVerifier.verifyCompressedOopModeIs(GCHeapConfigurationEventVerifier.java:59)
> at jdk.jfr.event.gc.configuration.ThirtyTwoBitsVerifier.verify(TestGCHeapConfigurationEventWith32BitOops.java:74)
> at jdk.jfr.event.gc.configuration.GCHeapConfigurationEventTester.run(GCHeapConfigurationEventTester.java:46)
> ...
Other than the comment consistency suggestion, this looks good.
test/hotspot/jtreg/runtime/CompressedOops/UseCompressedOops.java line 33:
> 31: * java.management
> 32: * @build jdk.test.whitebox.WhiteBox
> 33: * @comment Do not run with asan enabled, because it changes memory layout and we get a different coops mode
Consider making this comment consistent with the others in this change?
-------------
Marked as reviewed by kbarrett (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/26760#pullrequestreview-3119239876
PR Review Comment: https://git.openjdk.org/jdk/pull/26760#discussion_r2275652323
More information about the hotspot-dev
mailing list