Hotspot segfaulting on Linux SPARC
David Holmes
david.holmes at oracle.com
Mon Apr 16 23:52:42 UTC 2018
Hi Adrian,
On 16/04/2018 11:09 PM, John Paul Adrian Glaubitz wrote:
> On 04/16/2018 12:49 PM, John Paul Adrian Glaubitz wrote:
>> Ah, according to the bug report, this particular issue affects older
>> SPARC CPUs only. This explains why it happens on the UltraSPARC T1
>> but currently not on the SPARC T5.
>>
>> Will keep on digging! Thanks for the additional pointers.
>
> Ok, so the actual crash after working around JDK-8144448 now seems this
> one:
Unfortunately the bit you really need is missing:
#18 0xffff800101aec0a0 in signalHandler (sig=<optimized out>,
info=0xffff8001026d1fb0, uc=0xffff8001026d1fb0) at
/srv/openjdk/hs/src/hotspot/os/linux/os_linux.cpp:4396
#19 <signal handler called>
#20 0xffff80010fbfd0c8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
It's the original fault that needs to be uncovered. All sorts of
weirdness can happen in attempting to do error reporting if you were in
an unexpected state to start with.
David
-----
>
> (gdb) bt
> #0 0xffff8001006abb9c in __libc_signal_restore_set
> (set=0xffff8001026d0f28) at ../sysdeps/unix/sysv/linux/nptl-signals.h:80
> #1 __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:48
> #2 0xffff8001006ad144 in __GI_abort () at abort.c:79
> #3 0xffff800101aeefbc in os::abort (dump_core=<optimized out>,
> siginfo=0xffff8001026d1fb0, context=0xffff8001026d1fb0) at
> /srv/openjdk/hs/src/hotspot/os/linux/os_linux.cpp:1423
> #4 0xffff800101f0f38c in VMError::report_and_die
> (id=id at entry=-536870912, message=message at entry=0xffff80010205b260 "fatal
> error", detail_fmt=detail_fmt at entry=0xffff80010214f850 "LEAF method
> calling lock?", detail_args=detail_args at entry=0xffff8001026d1678,
> thread=thread at entry=0xffff80010401a000, pc=pc at entry=0x0,
> siginfo=0x0, context=0x0, filename=0xffff80010214eec8
> "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp", lineno=985,
> size=0) at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1504
> #5 0xffff800101f101c8 in VMError::report_and_die
> (thread=0xffff80010401a000, context=context at entry=0x0,
> filename=filename at entry=0xffff80010214eec8
> "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp",
> lineno=lineno at entry=985,
> message=0xffff80010205b260 "fatal error",
> detail_fmt=detail_fmt at entry=0xffff80010214f850 "LEAF method calling
> lock?", detail_args=<optimized out>) at
> /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1244
> #6 0xffff80010117e6c8 in report_fatal (file=0xffff80010214eec8
> "/srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp",
> line=line at entry=985, detail_fmt=0xffff80010214f850 "LEAF method calling
> lock?") at /srv/openjdk/hs/src/hotspot/share/utilities/debug.cpp:250
> #7 0xffff800101e2ae10 in Thread::check_for_valid_safepoint_state
> (this=this at entry=0xffff80010401a000,
> potential_vm_operation=potential_vm_operation at entry=false) at
> /srv/openjdk/hs/src/hotspot/share/runtime/thread.cpp:985
> #8 0xffff800101e49394 in ThreadsSMRSupport::acquire_stable_list
> (is_ThreadsListSetter=false, self=0xffff80010401a000) at
> /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.cpp:629
> #9 ThreadsListHandle::ThreadsListHandle (this=0xffff8001026d1818,
> self=0xffff80010401a000) at
> /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.cpp:471
> #10 0xffff800101ae1af0 in
> JavaThreadIteratorWithHandle::JavaThreadIteratorWithHandle
> (this=0xffff8001026d1810) at
> /srv/openjdk/hs/src/hotspot/share/runtime/threadSMR.hpp:307
> #11 os::print_location (st=st at entry=0xffff8001023e3228 <VMError::log>,
> x=416, verbose=verbose at entry=false) at
> /srv/openjdk/hs/src/hotspot/share/runtime/os.cpp:1113
> #12 0xffff800101b02b3c in os::print_register_info
> (st=st at entry=0xffff8001023e3228 <VMError::log>,
> context=0xffff8001026d1fb0) at
> /srv/openjdk/hs/src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp:253
> #13 0xffff800101f0dfac in VMError::report
> (st=st at entry=0xffff8001023e3228 <VMError::log>,
> _verbose=_verbose at entry=true) at
> /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:748
> #14 0xffff800101f0f440 in VMError::report_and_die (id=id at entry=11,
> message=message at entry=0x0,
> detail_fmt=detail_fmt at entry=0xffff80010214c870 "%s",
> detail_args=detail_args at entry=0xffff8001026d1ce0,
> thread=thread at entry=0xffff80010401a000,
> pc=pc at entry=0xffff80010fbfd0c8 "\300\\ ",
> siginfo=0xffff8001026d1fb0, context=0xffff8001026d1fb0, filename=0x0,
> lineno=0, size=0) at
> /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1405
> #15 0xffff800101f100b8 in VMError::report_and_die
> (thread=thread at entry=0xffff80010401a000, sig=sig at entry=11,
> pc=pc at entry=0xffff80010fbfd0c8 "\300\\ ",
> siginfo=siginfo at entry=0xffff8001026d1fb0,
> context=context at entry=0xffff8001026d1fb0, detail_fmt=0xffff80010214c870
> "%s")
> at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1219
> #16 0xffff800101f10104 in VMError::report_and_die
> (thread=thread at entry=0xffff80010401a000, sig=sig at entry=11,
> pc=pc at entry=0xffff80010fbfd0c8 "\300\\ ",
> siginfo=siginfo at entry=0xffff8001026d1fb0,
> context=context at entry=0xffff8001026d1fb0)
> at /srv/openjdk/hs/src/hotspot/share/utilities/vmError.cpp:1225
> #17 0xffff800101b058b4 in JVM_handle_linux_signal (sig=sig at entry=11,
> info=info at entry=0xffff8001026d1fb0,
> ucVoid=ucVoid at entry=0xffff8001026d1fb0,
> abort_if_unrecognized=abort_if_unrecognized at entry=1) at
> /srv/openjdk/hs/src/hotspot/os_cpu/linux_sparc/os_linux_sparc.cpp:646
> #18 0xffff800101aec0a0 in signalHandler (sig=<optimized out>,
> info=0xffff8001026d1fb0, uc=0xffff8001026d1fb0) at
> /srv/openjdk/hs/src/hotspot/os/linux/os_linux.cpp:4396
> #19 <signal handler called>
> #20 0xffff80010fbfd0c8 in ?? ()
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
> (gdb)
>
More information about the hotspot-dev
mailing list