On Wed, 18 Feb 2026 06:50:55 GMT, Yasumasa Suenaga <[email protected]> wrote:
> This PR is extracted from #29731 . > > We saw following mixed jstack in TestJhsdbJstackMixedCore.java and then it > failed due to unsatisfied condition. > > > ----------------- 3258804 ----------------- > "main" #3 prio=5 tid=0x00007f497802e450 nid=3258804 runnable > [0x00007f4982c74000] > java.lang.Thread.State: RUNNABLE > JavaThread state: _thread_in_native > 0x00007f49826dc5ef __GI_raise + 0x10f > 0x00007f49826afe65 __GI_abort + 0x127 > 0x00007f497fdec90f os::abort(bool, void const*, void const*) [clone .cold] + > 0x4 > 0x00007f498175d582 VMError::report_and_die(int, char const*, char const*, > __va_list_tag*, Thread*, unsigned char*, void const*, void const*, char > const*, int, unsigned long) + 0x6f2 > 0x00007f498072e3c0 report_vm_error(char const*, int, char const*, char > const*, ...) + 0x100 > 0x00007f497fe5bb5f CompressedKlassPointers::decode_not_null(unsigned int) + > 0x22f > 0x00007f4982c72010 ???????? > > > "????????" was shown because `DW_CFA_restore` is not supported in > `DwarfParser`. > This PR implements `DW_CFA_restore`, and also implements > `DW_CFA_restore_state` and `DW_CFA_restore` correctly using `stack`. src/jdk.hotspot.agent/linux/native/libsaproc/dwarf.cpp line 206: > 204: case 0x0a: // DW_CFA_remember_state > 205: remember_state.push(_state); > 206: init_state(_state); Is doing an `init_state()` correct here? It's not clear from the spec that DW_CFA_remember_state invalidates the current state. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/29779#discussion_r2823701490
