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

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


Staffan,

Closing the loop on this comment from code review round 0.

I did this:

     $ sh ./configure --with-debug-level=slowdebug --disable-zip-debug-info
     $ make

with the latest version that I'm about to send out for code review
round 1. And I see this:

$ find build -name '*.dSYM' -print
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjsig.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjvm.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libsaproc.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/libjsig.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/libsaproc.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/server/libjvm.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/jdk/lib/libjsig.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/jdk/lib/libsaproc.dylib.dSYM
build/macosx-x86_64-normal-server-slowdebug/jdk/lib/server/libjvm.dylib.dSYM

$ find 
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjvm.dylib.dSYM 
-type f -print
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjvm.dylib.dSYM/Contents/Info.plist
build/macosx-x86_64-normal-server-slowdebug/hotspot/bsd_amd64_compiler2/debug/libjvm.dylib.dSYM/Contents/Resources/DWARF/libjvm.dylib

$ find 
build/macosx-x86_64-normal-server-slowdebug/jdk/lib/server/libjvm.dylib.dSYM 
-type f -print
build/macosx-x86_64-normal-server-slowdebug/jdk/lib/server/libjvm.dylib.dSYM/Contents/Resources/DWARF/libjvm.dylib

so the "flattening" problem is fixed.

Dan




On 9/30/13 7:13 AM, Staffan Larsen wrote:
> First: thanks for doing this work - it will make debugging on os x so much easier! I'm not done with the review, but here are a couple of comments so far.
>
> I tried running with:
>
> $ sh ./configure --with-debug-level=slowdebug --disable-zip-debug-info
> $ make
>
> which results in:
>
> ## Starting hotspot
> ...
> make[5]: *** No rule to make target `/Users/staffan/mercurial/hotspot-rt-jdk/build/macosx-x86_64-normal-server-slowdebug/hotspot/dist/jre/lib/amd64/libjsig.dylib.dSYM', needed by `generic_export'.  Stop.
> make[4]: *** [export_debug] Error 2
> make[3]: *** [all_debug_universal] Error 2
> make[2]: *** [universal_debug] Error 2
> ...
>
>
> Another comment: There are some makefile logic for BSD, non-darwin platforms. Have you had a chance to test this logic? (hotspot/make/bsd/makefiles/vm.make)
>
>
> Nit: hotspot/make/bsd/makefiles/vm.make: L345, L356: wrong indentation.
>
>
> /Staffan
>
>
>
> On 21 sep 2013, at 05:36, Daniel D. Daugherty <daniel.daugherty at oracle.com> wrote:
>
>> 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
>>     jdk8/jdk/make/closed
>>
>> 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