RFR(M): 8204965: Fix '--disable-cds' and disable CDS on AIX by default
Jiangli Zhou
jiangli.zhou at Oracle.COM
Thu Jun 14 16:42:00 UTC 2018
Hi Volker,
The changes look good to me overall. I’ll refer to the JVMTI experts for jvmtiEnv.cpp change. I have a question for the change in vmStructs.cpp. Any reason why only _current_info needs CDS_ONLY?
/********************************************/ \
/* FileMapInfo fields (CDS archive related) */ \
/********************************************/ \
\
nonstatic_field(FileMapInfo, _header, FileMapInfo::FileMapHeader*) \
- static_field(FileMapInfo, _current_info, FileMapInfo*) \
+ CDS_ONLY(static_field(FileMapInfo, _current_info, FileMapInfo*)) \
nonstatic_field(FileMapInfo::FileMapHeader, _space[0], FileMapInfo::FileMapHeader::space_info)\
nonstatic_field(FileMapInfo::FileMapHeader::space_info, _addr._base, char*) \
nonstatic_field(FileMapInfo::FileMapHeader::space_info, _used, size_t) \
\
Thanks,
Jiangli
> On Jun 14, 2018, at 7:26 AM, Volker Simonis <volker.simonis at 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.
More information about the build-dev
mailing list