>> Looks like I spoke too soon. It's hanging/spinning again. Do you
>> have any suggestion for how I can help debug it?
>
> Send the spinning process a SIGQUIT. It should crash with a stack
> backtrace showing what it is doing at that point.
I see a segfault in seemingly a random place, even with ulimit -s
unlimited, mostly in:
Program received signal SIGSEGV, Segmentation fault.
__generic_morestack (pframe_size=0x2efd9cc0,
old_stack=0x2efd9ce0, param_size=0) at
../../../git/gcc/libgcc/generic-morestack.c:558
558 current->old_stack = old_stack;
(gdb) bt
#0 __generic_morestack (pframe_size=0x2efd9cc0,
old_stack=0x2efd9ce0, param_size=0) at
../../../git/gcc/libgcc/generic-morestack.c:558
#1 0x2bae4fb8 in __morestack () at
../../../git/gcc/libgcc/config/i386/morestack.S:512
#2 0x2badd1f8 in backtrace_get_view
(state=state@entry=0x2fb7e000, descriptor=descriptor@entry=2,
offset=offset@entry=1760592,
size=585728, error_callback=error_callback@entry=0x2b557450
, data=data@entry=0x2efda6a0, view=0x2efd9fc0)
at ../../../git/gcc/libbacktrace/mmapio.c:79
#3 0x2badc660 in elf_add (state=state@entry=0x2fb7e000,
filename=filename@entry=0x7fffd8fc
"/home/uros/gcc-build/gcc/testsuite/go/index0-out.x",
descriptor=descriptor@entry=5,
base_address=base_address@entry=0,
error_callback=error_callback@entry=0x2b557450 ,
data=data@entry=0x2efda6a0,
fileline_fn=0x2efda238, found_sym=0x2efda230,
found_dwarf=0x2efda234, fileline_entry=0x0, exe=1, debuginfo=0,
with_buildid_data=0x0, with_buildid_size=0) at
../../../git/gcc/libbacktrace/elf.c:3158
#4 0x2badd041 in backtrace_initialize
(state=state@entry=0x2fb7e000,
filename=filename@entry=0x7fffd8fc
"/home/uros/gcc-build/gcc/testsuite/go/index0-out.x", descriptor=5,
error_callback=error_callback@entry=0x2b557450
, data=data@entry=0x2efda6a0,
fileline_fn=fileline_fn@entry=0x2efda2d8) at
../../../git/gcc/libbacktrace/elf.c:3390
but sometimes in:
Program received signal SIGSEGV, Segmentation fault.
merge_dynamic_blocks (b=0x2, a=0x24) at
../../../git/gcc/libgcc/generic-morestack.c:420
420 for (pp = &a->next; *pp != NULL; pp = &(*pp)->next)
(gdb) bt
#0 merge_dynamic_blocks (b=0x2, a=0x24) at
../../../git/gcc/libgcc/generic-morestack.c:420
#1 __morestack_release_segments (free_dynamic=,
pp=) at ../../../git/gcc/libgcc/generic-morestack.c:455
#2 __generic_morestack (pframe_size=0x2efda150,
old_stack=0x2efda170, param_size=0) at
../../../git/gcc/libgcc/generic-morestack.c:546
#3 0x2bae4fb8 in __morestack () at
../../../git/gcc/libgcc/config/i386/morestack.S:512
#4 0x2bad75c1 in dwarf_lookup_pc
(state=state@entry=0x2fb7e000, ddata=ddata@entry=0x2aaab18e5a18,
pc=,
pc@entry=46912507311387, callback=callback@entry=0x2b5570c0 ,
error_callback=error_callback@entry=0x2b557450
, data=data@entry=0x2efda6a0, found=)
at ../../../git/gcc/libbacktrace/dwarf.c:3021
Uros.