RFR: 8265393: VM crashes if both -XX:+RecordDynamicDumpInfo and -XX:SharedArchiveFile options are specified

Yumin Qi minqi at openjdk.java.net
Wed Apr 21 04:44:39 UTC 2021


Hi, Please review
  1) When the two flags -XX:+RecordDynamicDumpInfo and -XX:SharedArchiveFile used,  in
     Arguments::init_shared_archive_paths() :
          if (DynamicDumpSharedSpaces) {
            if (os::same_files(SharedArchiveFile, ArchiveClassesAtExit)) {
               ...
  ArchiveClassesAtExit is NULL.
  C++ does not have a defined behavior of strcmp with strings of NULL. Posix version of os::same_files(const char* file1, const char* file2) calls strcmp without checking input args. This should be same as it is treated on Windows.
  2) JCmdTest.java is fat and possible to cause test timeout. Split JCmdTest.java into two separate Tests: JCmdTestStaticDump.java and JCmdTestDynamicDump.java.
  3) Add a test to check run with -XX:+RecordDynamicDumpInfo and -XX:SharedArchiveFile in JCmdTestDynamicDump.java
       The test does not use utility to create jvm process  since it will take testing envs into process, but the way in the test using LingeredApp does not take envs.

  Tests: tier1,tier2,tier3,tier4

Thanks
Yumin

-------------

Commit messages:
 - 8265393: VM crashes if both -XX:+RecordDynamicDumpInfo and -XX:SharedArchiveFile options are specified

Changes: https://git.openjdk.java.net/jdk/pull/3599/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3599&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8265393
  Stats: 933 lines in 5 files changed: 570 ins; 362 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3599.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3599/head:pull/3599

PR: https://git.openjdk.java.net/jdk/pull/3599


More information about the hotspot-dev mailing list