[8u] RFR (XS) 8252084: Minimal VM fails to bootcycle: undefined symbol: AgeTableTracer::is_tenuring_distribution_event_enabled

Aleksey Shipilev shade at redhat.com
Thu Aug 20 07:30:23 UTC 2020


Hi,

This is 8u-specific bug that only manifests with Minimal VM x86_32:

$ CXX=i686-linux-gnu-g++ CC=i686-linux-gnu-gcc sh ./configure --with-debug-level=fastdebug 
--with-jtreg=/home/shade/Install/jtreg --disable-precompiled-headers 
--with-native-debug-symbols=internal --openjdk-target=i386-linux-gnu --with-extra-cflags=-Wno-error 
--with-toolchain-path=/chroots/i386/ --with-jvm-variants=minimal1

$ CONF=linux-x86-normal-minimal1-fastdebug make bootcycle-images
...
Error: dl failure on line 893
Error: failed 
/home/shade/trunks/jdk8u-dev/build/linux-x86-normal-minimal1-fastdebug/images/j2sdk-image/jre/lib/i386/minimal/libjvm.so, 
because 
/home/shade/trunks/jdk8u-dev/build/linux-x86-normal-minimal1-fastdebug/images/j2sdk-image/jre/lib/i386/minimal/libjvm.so: 
undefined symbol: _ZN14AgeTableTracer38is_tenuring_distribution_event_enabledEv

I believe this is caused by JFR integration, and the fix looks simple: build ageTableTracer.cpp even 
when most GCs are disabled by Minimal VM:

hotspot $ diff -r eb30962d9b6d make/excludeSrc.make
--- a/make/excludeSrc.make      Fri Feb 08 20:51:55 2019 -0500
+++ b/make/excludeSrc.make      Thu Aug 20 09:28:53 2020 +0200
@@ -95,6 +95,7 @@
        gc_shared_keep :=                                                        \
         adaptiveSizePolicy.cpp                                          \
         ageTable.cpp                                                    \
+       ageTableTracer.cpp                                              \
         collectorCounters.cpp                                           \
         cSpaceCounters.cpp                                              \
         gcId.cpp                                                        \

Testing: x86_32 minimal bootcycle build

-- 
Thanks,
-Aleksey



More information about the jdk8u-dev mailing list