On Sun, 25 Jan 2026 03:55:13 GMT, Yasumasa Suenaga <[email protected]> wrote:

> Some functions / signal trampoline would be provided by vDSO in Linux. 
> However SA cannot find symbols in it because it is not a regular ELF, it is 
> on the memory only.
> For example, mixed jstack could not decode the symbol in the coredump crashed 
> in gettimeofday(2) as following:
> 
> 
> 0x00007faae3dd0818      VMError::report_and_die(Thread*, unsigned int, 
> unsigned char*, void const*, void const*) + 0x58
> 0x00007faae3aff1ba      JVM_handle_linux_signal + 0x42a
> 0x00007faae4ad9290      <signal handler called>
> 0x00007faae4cd8e69              ????????
> 0x00007faaca78ffa1      <nep_invoker_blob>
> 0x00007faaca73fd48      * 
> java.lang.invoke.LambdaForm$MH+0x0000000028156c00.invoke(java.lang.Object, 
> long, long, long) bci:12 (Interpreted frame)
> 
> 
> It should be:
> 
> 
> 0x00007fb5841d0818      VMError::report_and_die(Thread*, unsigned int, 
> unsigned char*, void const*, void const*) + 0x58
> 0x00007fb583eff1ba      JVM_handle_linux_signal + 0x42a
> 0x00007fb584fd9290      <signal handler called>
> 0x00007fb5851d8e69      __cvdso_gettimeofday_data.constprop.0 + 0x99
> 0x00007fb56a78f321      <nep_invoker_blob>
> 0x00007fb56a73fd48      * 
> java.lang.invoke.LambdaForm$MH+0x000000000e156c00.invoke(java.lang.Object, 
> long, long, long) bci:12 (Interpreted frame)
> 
> 
> Some platforms (Ubuntu 24.04 and Fedora 43 at least) provide vDSO binary in 
> `/lib/modules/<kernel version>/vdso`. This patch attempts to load it if we 
> can refer it because we want to use debuginfo of vDSO if possible. Otherwise 
> load vDSO memory.

This pull request has now been integrated.

Changeset: 77e680b1
Author:    Yasumasa Suenaga <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/77e680b11efea0eb707b72f4f3bb9e3422e170fd
Stats:     225 lines in 5 files changed: 217 ins; 0 del; 8 mod

8376269: Mixed jstack cannot find function in vDSO

Reviewed-by: kevinw, cjplummer

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

PR: https://git.openjdk.org/jdk/pull/29400

Reply via email to