RFR(S) 8193318: ELF decoder should be able to use external debug info file

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Wed Mar 14 11:52:35 UTC 2018

Hi, I looked at this and I really wasn't happy with all this extra code 
going into the JVM.  And I don't know this code.  There's a large hex 
table in this file:


This seems like something that will be painful to maintain.  Can the SA 
be used for the cases where the binary is stripped?  I believe that 
Oracle ships with minimal stripping so that we have these symbols, why 
don't all suppliers?   I don't really like this change.


On 3/8/18 11:12 AM, Zhengyu Gu wrote:
> Ping! I can get formal review?
> Thanks,
> -Zhengyu
> On 02/23/2018 12:26 PM, Zhengyu Gu wrote:
>> Thanks, Aleksey.
>> On 02/23/2018 12:01 PM, Aleksey Shipilev wrote:
>>> On 02/15/2018 06:59 PM, Zhengyu Gu wrote:
>>>> This Linux only patch allows OpenJDK Linux distributions, which 
>>>> strip out debug symbols in
>>>> production bundles, to use external debuginfo bundles, if present, 
>>>> to decode stacks.
>>>> The implementation mirrors SA implementation [1][2]. It has minimal 
>>>> impact to Oracle's JDK, which
>>>> always contains symbol tables.
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8193318
>>>> Webrev: http://cr.openjdk.java.net/~zgu/8193318/webrev.00/
>>> Looks OK on my untrained eye.
>>> *) I am wondering if we can merge the existing implementation in
>>> src/jdk.hotspot.agent/linux/native/libsaproc/symtab.c and this 
>>> mirror implementation in
>>> src/hotspot/os/linux/decoder_linux.cpp? Notably, moving 
>>> gnu_debuglink_crc32 to some shared file
>>> would trim down the change.
>> Yes, but I don't know if there is a way.
>>> Andrew Haley knows this better, as he is the author of the related 
>>> change.
>> Cc'ed Andrew Haley.
>> -Zhengyu
>>> Thanks,
>>> -Aleksey

More information about the hotspot-runtime-dev mailing list