> When building hotspot on linuxx86_64/gcc with LTO enabled > (--enable-jvm-feature-link-time-opt), we get various test errors in the > serviceability/sa area. > Example serviceability/sa/CDSJMapClstats.java > > > finding class loader instances ..java.lang.InternalError: Metadata does not > appear to be polymorphic > at > jdk.hotspot.agent/sun.jvm.hotspot.types.basic.BasicTypeDataBase.findDynamicTypeForAddress(BasicTypeDataBase.java:223) > at > jdk.hotspot.agent/sun.jvm.hotspot.runtime.VirtualBaseConstructor.instantiateWrapperFor(VirtualBaseConstructor.java:104) > at > jdk.hotspot.agent/sun.jvm.hotspot.oops.Metadata.instantiateWrapperFor(Metadata.java:77) > at > jdk.hotspot.agent/sun.jvm.hotspot.memory.SystemDictionary.getClassLoaderKlass(SystemDictionary.java:102) > at > jdk.hotspot.agent/sun.jvm.hotspot.tools.ClassLoaderStats.printClassLoaderStatistics(ClassLoaderStats.java:93) > at > jdk.hotspot.agent/sun.jvm.hotspot.tools.ClassLoaderStats.run(ClassLoaderStats.java:78) > at jdk.hotspot.agent/sun.jvm.hotspot.tools.JMap.run(JMap.java:121) > at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.startInternal(Tool.java:278) > at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.start(Tool.java:241) > at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.execute(Tool.java:134) > at jdk.hotspot.agent/sun.jvm.hotspot.tools.JMap.main(JMap.java:202) > at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.runJMAP(SALauncher.java:344) > at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.main(SALauncher.java:507) > > > Seems we have to avoid elimination of the Metadata vtable ; this can be > achieved by linker flags or by modifying class Metadata. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai).
Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: use gnu::retain ------------- Changes: - all: https://git.openjdk.org/jdk/pull/30771/files - new: https://git.openjdk.org/jdk/pull/30771/files/ad43b2d4..24736643 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=30771&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=30771&range=01-02 Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/30771.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/30771/head:pull/30771 PR: https://git.openjdk.org/jdk/pull/30771
