RFR: 8234624: jstack mixed mode should refer DWARF

Yasumasa Suenaga suenaga at oss.nttdata.com
Thu Nov 28 12:39:27 UTC 2019


Hi,

I refactored LinuxAMD64CFrame.java . It works fine in serviceability/sa tests and
all tests on submit repo (mach5-one-ysuenaga-JDK-8234624-2-20191128-0928-7059923).
Could you review new webrev?

   http://cr.openjdk.java.net/~ysuenaga/JDK-8234624/webrev.01/

The diff from previous webrev is here:
   http://hg.openjdk.java.net/jdk/submit/rev/4bc47efbc90b


Thanks,

Yasumasa


On 2019/11/25 14:08, Yasumasa Suenaga wrote:
> Hi all,
> 
> Please review this change:
> 
>    JBS: https://bugs.openjdk.java.net/browse/JDK-8234624
>    webrev: http://cr.openjdk.java.net/~ysuenaga/JDK-8234624/webrev.00/
> 
> 
> According to 2.7 Stack Unwind Algorithm in System V Application Binary Interface AMD64
> Architecture Processor Supplement [1], we need to use DWARF in .eh_frame or .debug_frame
> for stack unwinding.
> 
> As JDK-8022183 said, omit-frame-pointer is enabled by default since GCC 4.6, so system
> library (e.g. libc) might be compiled with this feature.
> 
> However `jhsdb jstack --mixed` does not do so, it uses base pointer register (RBP).
> So it might be lack of stack frames.
> 
> I guess JDK-8219201 is caused by same issue.
> 
> 
> Thanks,
> 
> Yasumasa
> 
> 
> [1] https://software.intel.com/sites/default/files/article/402129/mpx-linux64-abi.pdf


More information about the serviceability-dev mailing list