code review round 1 for Full Debug Symbols on MacOS X hotspot (7165611)

Daniel D. Daugherty daniel.daugherty at oracle.com
Fri Oct 11 13:27:29 PDT 2013


Greetings,

I'm ready for code review round 1 of the FDS on MacOS X hotspot changes.
Below is the original code review round 0 invite (slightly edited for
clarity). Working on FDS is like pulling a thread on a sweater... so
there are four additional changed files along with more changes to
many of the files from round 0.

Here is the code review round 1 JDK8/HSX-25 webrev URL:

OpenJDK: 
http://cr.openjdk.java.net/~dcubed/fds_revamp/7165611-webrev/1-jdk8/
Internal: 
http://javaweb.us.oracle.com/~ddaugher/fds_revamp/7165611-webrev/1-jdk8/

Changes from code review round 0 to round 1:

   root repo:
     - add configure support for DSYMUTIL macro

   hotspot repo:
     - drop Minimal1 config support for FDS on MacOS X
     - use DSYMUTIL macro instead of literal 'dsymutil'
     - fix FASTDEBUG_CFLAGS typo and add USE_CLANG support
     - STRIP is not used on MacOS X
     - fix $(UNIVERSAL_COPY_LIST) rule
     - refine install-dir function

   jdk repo:
     - add prep-target-dir, install-import-dir, and install-import-debuginfo
       functions
     - support importing .dSYM directories from hotspot
     - create libjsig.dSYM symlink from VM specific directory to
       the real location

Files changed from code review round 0 to round 1:

     common/autoconf/generated-configure.sh
     hotspot/make/Makefile
     hotspot/make/bsd/makefiles/defs.make
     hotspot/make/bsd/makefiles/dtrace.make
     hotspot/make/bsd/makefiles/gcc.make
     hotspot/make/bsd/makefiles/jsig.make
     hotspot/make/bsd/makefiles/saproc.make
     hotspot/make/bsd/makefiles/universal.gmk
     hotspot/make/bsd/makefiles/vm.make
     hotspot/make/defs.make

New files changed in code review round 1:

     hotspot/make/bsd/makefiles/product.make
     jdk/make/common/Defs.gmk
     jdk/make/java/redist/Makefile
     jdk/makefiles/Import.gmk

Additional bugs filed based on code review comments, testing and
just plain looking at the Makefiles:

     8026280 implement Full Debug Symbols on MacOS X jdk
     8026281 hotspot 'jdk6_or_earlier logic' for FDS needs to be removed
     8026282 the '64' subdir logic in Makefiles might be removable
     8026283 literal 'lipo' cmd uses in HotSpot makefiles
     8026284 Minimal1 references/support should be removed from BSD/MacOS X
     8026285 JPRT -buildenv ZIP_DEBUGINFO_FILES=0 no longer works

As always, comments, questions and suggestions are welcome.

Dan

 > Greetings,
 >
 > I have the initial support for Full Debug Symbols (FDS) on MacOS X done
 > and ready for review:
 >
 >     7165611 implement Full Debug Symbols on MacOS X hotspot
 >     https://bugs.openjdk.java.net/browse/JDK-7165611
 >
 > Here is the JDK8/HSX-25 webrev URL:
 >
 > OpenJDK: 
http://cr.openjdk.java.net/~dcubed/fds_revamp/7165611-webrev/0-jdk8/
 > Internal: 
http://javaweb.us.oracle.com/~ddaugher/fds_revamp/7165611-webrev/0-jdk8/
 >
 > This webrev includes changes for the follow repos:
 >
 >     jdk8
 >     jdk8/hotspot
 >     jdk8/jdk
 >
 > Once these changes are approved, I'm planning to push them to
 > RT_Baseline. From there, they can follow the normal path to
 > Main_Baseline and eventually JDK8.
 >
 > This work enables FDS on MacOS X for the 'hotspot' repo; the changes in
 > the other repos are necessary to support importing the .diz files from
 > the MacOS X 'hotspot' build into the forest build. I also fixed a few
 > FDS related errors in the magic incantations for the new build. This is
 > mostly a port from Linux -> MacOS X/BSD with the dtrace changes ported
 > from Solaris. In other words, this is Frankenstein's monster...
 >
 > Thanks to Staffan Larsen for providing an initial set of changes
 > which I morphed into what you see here.
 >
 > Testing:
 > - JPRT HSX build and test on all platforms; verification of .diz
 >   files in the MacOS X JPRT bundles
 > - JPRT JDK8 forest build and test on all platforms; verification of
 >   .diz files in the MacOS X JPRT bundles
 >   Note: In previous FDS changesets, I also did a standalone 'jdk'
 >   repo build and test, but that no longer seems to work.
 >
 > As always, comments, questions and suggestions are welcome.
 >
 > Dan


More information about the serviceability-dev mailing list