Hotspot segfaulting on Linux SPARC
David Holmes
david.holmes at oracle.com
Tue Apr 17 00:33:23 UTC 2018
On 17/04/2018 9:52 AM, David Holmes wrote:
> 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.
Though also see:
https://bugs.openjdk.java.net/browse/JDK-8201592
which seems to be the same secondary crash - but can't comment on the
primary one.
David
> 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