Hi Volker, http://cr.openjdk.java.net/~simonis/webrevs/2018/8204965/make/autoconf/hotspot.m4.udiff.html
Seems like a roundabout way to have a platform specific default value. Why not determine a default value beforehand: if test "x$OPENJDK_TARGET_OS" = "xaix"; then ENABLE_CDS_DEFAULT="false" else ENABLE_CDS_DEFAULT=true" fi AC_ARG_ENABLE([cds], [AS_HELP_STRING([--enable-cds@<:@=yes/no/auto@:>@], [enable class data sharing feature in non-minimal VM. Default is ${ENABLE_CDS_DEFAULT}.])]) and so on? See also what we did for "8202325: [aix] disable warnings-as-errors by default". -- http://cr.openjdk.java.net/~simonis/webrevs/2018/8204965/src/hotspot/share/classfile/javaClasses.cpp.udiff.html Here, do we really need to exclude this from compiling, DumpSharedSpaces = false is not enough? Best Regards, Thomas On Thu, Jun 14, 2018 at 4:26 PM, Volker Simonis <volker.simo...@gmail.com> wrote: > Hi, > > can I please have a review for the following fix: > > http://cr.openjdk.java.net/~simonis/webrevs/2018/8204965/ > https://bugs.openjdk.java.net/browse/JDK-8204965 > > CDS does currently not work on AIX because of the way how we > reserve/commit memory on AIX. The problem is that we're using a > combination of shmat/mmap depending on the page size and the size of > the memory chunk to reserve. This makes it impossible to reliably > reserve the memory for the CDS archive and later on map the various > parts of the archive into these regions. > > In order to fix this we would have to completely rework the memory > reserve/commit/uncommit logic on AIX which is currently out of our > scope because of resource limitations. > > Unfortunately, I could not simply disable CDS in the configure step > because some of the shared code apparently relies on parts of the CDS > code which gets excluded from the build when CDS is disabled. So I > also fixed the offending parts in hotspot and cleaned up the configure > logic for CDS. > > Thank you and best regards, > Volker > > PS: I did run the job through the submit forest > (mach5-one-simonis-JDK-8204965-20180613-1946-26349) but the results > weren't really useful because they mention build failures on linux-x64 > which I can't reproduce locally.