RFR: 8377946: Use DWARF in mixed jstack on Linux AArch64 [v2]

Chris Plummer cjplummer at openjdk.org
Sat Feb 28 01:08:29 UTC 2026


On Fri, 27 Feb 2026 23:55:08 GMT, Yasumasa Suenaga <ysuenaga at openjdk.org> wrote:

>> src/jdk.hotspot.agent/linux/native/libsaproc/LinuxDebuggerLocal.cpp line 295:
>> 
>>> 293: #ifdef __aarch64__
>>> 294:   if (pac_enabled(ph)) {
>>> 295:     printf("WARNING: PAC is enabled. Output might not be enough and/or incorrect.\n");
>> 
>> I'm not sure what is meant by "Output might not be enough...". What output are you referring to?
>
> For example, if the user run `jhsdb jstack --mixed`, call stacks might not be enough because SA cannot decode PAC.

Ok. Maybe then say something like "Stack traces might be incomplete".

>> src/jdk.hotspot.agent/linux/native/libsaproc/libproc_impl.h line 119:
>> 
>>> 117:    struct core_data*  core;      // data only used for core dumps, NULL for process
>>> 118: #ifdef __aarch64__
>>> 119:    bool               pac_enabled; // true if PAC (PACA) is enabled
>> 
>> What is "PACA"? Also this might be a good place to indicate that PAC is "Pointer Authentication Code"
>
> According to [Kernel document](https://docs.kernel.org/arch/arm64/pointer-authentication.html#basic-support), there are 2 kinds of PAC: 
> 
>> Presence of address authentication functionality is advertised via HWCAP_PACA, and generic authentication functionality via HWCAP_PACG.
> 
> Should we add `HWCAP_PACA` here? or remove `PACA`?

Ok. So we support HWCAP_PACA. I would just say that instead of just PACA. Maybe the full comment could be.

`// true if the HWCAP_PACA variant of Pointer Authentication Code (PAC) is enabled.`

Maybe it should be on its own line.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/29731#discussion_r2866802234
PR Review Comment: https://git.openjdk.org/jdk/pull/29731#discussion_r2866811855


More information about the serviceability-dev mailing list