https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91992
Bug ID: 91992 Summary: gcc/testsuite/go/index0-out.x SEGV and spinlock during testsuite run Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: go Assignee: ian at airs dot com Reporter: msebor at gcc dot gnu.org CC: cmang at google dot com Target Milestone: --- As discussed in https://gcc.gnu.org/ml/gcc/2019-09/msg00152.html, gcc/testsuite/go/index0-out.x spins indefinitely during the testsuite run on x86_64-linux running Fedora 30, preventing it from completing. One set of backtraces was reported here: https://gcc.gnu.org/ml/gcc/2019-09/msg00185.html The two stack traces I have seen are in my recent build are: Thread 1 "index0-out.x" received signal SIGSEGV, Segmentation fault. merge_dynamic_blocks (b=0x1680600, a=0x80) at /ssd/test/src/gcc/91977/libgcc/generic-morestack.c:420 420 for (pp = &a->next; *pp != NULL; pp = &(*pp)->next) (gdb) bt #0 merge_dynamic_blocks (b=0x1680600, a=0x80) at /ssd/test/src/gcc/91977/libgcc/generic-morestack.c:420 #1 __morestack_release_segments (free_dynamic=<optimized out>, pp=<optimized out>) at /ssd/test/src/gcc/91977/libgcc/generic-morestack.c:455 #2 __generic_morestack (pframe_size=0x7ffff2d485a0, old_stack=0x7ffff2d485c0, param_size=0) at /ssd/test/src/gcc/91977/libgcc/generic-morestack.c:546 #3 0x00007ffff77934d8 in __morestack () at /ssd/test/src/gcc/91977/libgcc/config/i386/morestack.S:512 #4 0x00007ffff72023b0 in __go_get_backtrace_state () at /ssd/test/src/gcc/91977/libgo/runtime/go-caller.c:107 #5 0x00007ffff7202b9e in runtime_callers (skip=skip@entry=2, locbuf=locbuf@entry=0xc000046948, m=m@entry=32, keep_thunks=keep_thunks@entry=false) at /ssd/test/src/gcc/91977/libgo/runtime/go-callers.c:208 #6 0x00007ffff767fcee in runtime.callers (locbuf=..., locbuf=..., skip=1) at /ssd/test/src/gcc/91977/libgo/go/runtime/traceback_gccgo.go:60 #7 runtime.mcommoninit (mp=mp@entry=0xc000046800) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:614 #8 0x00007ffff7689eaa in runtime.allocm (_p_=_p_@entry=0xc00001c500, fn=<optimized out>, allocatestack=allocatestack@entry=false) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1511 #9 0x00007ffff768a348 in runtime.newm ( fn=fn@entry=0x7ffff7b58fb8 <runtime.mspinning..f>, _p_=_p_@entry=0xc00001c500) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1818 #10 0x00007ffff768a684 in runtime.startm (_p_=0xc00001c500, _p_@entry=0x0, spinning=spinning@entry=true) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1967 #11 0x00007ffff768b67c in runtime.wakep () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:2048 #12 0x00007ffff768df88 in __go_go (fn=fn@entry=140737344200784, arg=arg@entry=0x0) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:3232 #13 0x00007ffff764f148 in runtime.runtime..init3 () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:275 #14 0x00007ffff769b955 in runtime..import () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:273 #15 0x000000000055c10a in main.init () at ./index0-out.go:5 #16 0x000000000055c7fc in __morestack () at /ssd/test/src/gcc/91977/libgcc/config/i386/morestack.S:546 #17 0x00007ffff768e2df in runtime.main (p.0=<optimized out>) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:218 #18 0x00007ffff7688ee8 in runtime.kickoff () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1213 #19 0x0000000000000000 in ?? () and Thread 1 "index0-out.x" received signal SIGSEGV, Segmentation fault. 0x00007ffff7fdbfa2 in do_lookup_x () from /lib64/ld-linux-x86-64.so.2 (gdb) bt #0 0x00007ffff7fdbfa2 in do_lookup_x () from /lib64/ld-linux-x86-64.so.2 #1 0x00007ffff7fdcbcf in _dl_lookup_symbol_x () from /lib64/ld-linux-x86-64.so.2 #2 0x00007ffff7fe1544 in _dl_fixup () from /lib64/ld-linux-x86-64.so.2 #3 0x00007ffff7fe829e in _dl_runtime_resolve_xsavec () from /lib64/ld-linux-x86-64.so.2 #4 0x00007ffff72023b0 in __go_get_backtrace_state () at /ssd/test/src/gcc/91977/libgo/runtime/go-caller.c:107 #5 0x00007ffff7202b9e in runtime_callers (skip=skip@entry=2, locbuf=locbuf@entry=0xc000046948, m=m@entry=32, keep_thunks=keep_thunks@entry=false) at /ssd/test/src/gcc/91977/libgo/runtime/go-callers.c:208 #6 0x00007ffff767fcee in runtime.callers (locbuf=..., locbuf=..., skip=1) at /ssd/test/src/gcc/91977/libgo/go/runtime/traceback_gccgo.go:60 #7 runtime.mcommoninit (mp=mp@entry=0xc000046800) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:614 #8 0x00007ffff7689eaa in runtime.allocm (_p_=_p_@entry=0xc00001c500, fn=<optimized out>, allocatestack=allocatestack@entry=false) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1511 #9 0x00007ffff768a348 in runtime.newm ( fn=fn@entry=0x7ffff7b58fb8 <runtime.mspinning..f>, _p_=_p_@entry=0xc00001c500) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1818 #10 0x00007ffff768a684 in runtime.startm (_p_=0xc00001c500, _p_@entry=0x0, spinning=spinning@entry=true) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1967 #11 0x00007ffff768b67c in runtime.wakep () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:2048 #12 0x00007ffff768df88 in __go_go (fn=fn@entry=140737344200784, arg=arg@entry=0x0) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:3232 #13 0x00007ffff764f148 in runtime.runtime..init3 () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:275 #14 0x00007ffff769b955 in runtime..import () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:273 #15 0x000000000055c10a in main.init () at ./index0-out.go:5 #16 0x000000000055c7fc in __morestack () at /ssd/test/src/gcc/91977/libgcc/config/i386/morestack.S:546 #17 0x00007ffff768e2df in runtime.main (p.0=<optimized out>) at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:218 #18 0x00007ffff7688ee8 in runtime.kickoff () at /ssd/test/src/gcc/91977/libgo/go/runtime/proc.go:1213 #19 0x0000000000000000 in ?? ()