"random" segment faults in expect running GCC regression test on LoongArch
Xi Ruoyao
xry111@xry111.site
Wed Nov 9 07:43:02 GMT 2022
Hi,
This is a "help wanted" message. When I run GCC regression test on
loongarch64-linux-gnu, expect occasionally crashes with a segment fault.
The stack backtrace is like:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007ffff0a35910 in TclpAlloc () from /usr/lib/libtcl8.6.so
[Current thread is 1 (Thread 0x7ffff05d8420 (LWP 9228))]
(gdb) bt
#0 0x00007ffff0a35910 in TclpAlloc () from /usr/lib/libtcl8.6.so
#1 0x00007ffff08b0ed4 in sortins () from /usr/lib/libtcl8.6.so
#2 0x00007ffff08b18d0 in mergeins () from /usr/lib/libtcl8.6.so
#3 0x00007ffff08b3654 in fixempties () from /usr/lib/libtcl8.6.so
#4 0x00007ffff08b2564 in optimize () from /usr/lib/libtcl8.6.so
#5 0x00007ffff08aa9a0 in nfanode () from /usr/lib/libtcl8.6.so
#6 0x00007ffff08aa8a4 in nfatree () from /usr/lib/libtcl8.6.so
#7 0x00007ffff08aa894 in nfatree () from /usr/lib/libtcl8.6.so
#8 0x00007ffff08aa894 in nfatree () from /usr/lib/libtcl8.6.so
#9 0x00007ffff08aa894 in nfatree () from /usr/lib/libtcl8.6.so
#10 0x00007ffff08a6c00 in TclReComp () from /usr/lib/libtcl8.6.so
#11 0x00007ffff0a2155c in CompileRegexp () from /usr/lib/libtcl8.6.so
#12 0x00007ffff0a20e74 in Tcl_GetRegExpFromObj () from /usr/lib/libtcl8.6.so
#13 0x00007ffff08ebe48 in Tcl_RegsubObjCmd () from /usr/lib/libtcl8.6.so
#14 0x00007ffff08c6e64 in Dispatch () from /usr/lib/libtcl8.6.so
#15 0x00007ffff08c6f10 in TclNRRunCallbacks () from /usr/lib/libtcl8.6.so
#16 0x00007ffff08c6650 in Tcl_EvalObjv () from /usr/lib/libtcl8.6.so
#17 0x00007ffff08c8f7c in TclEvalEx () from /usr/lib/libtcl8.6.so
#18 0x00007ffff09f1270 in Tcl_FSEvalFileEx () from /usr/lib/libtcl8.6.so
#19 0x00007ffff09f0f00 in Tcl_FSEvalFile () from /usr/lib/libtcl8.6.so
#20 0x00007ffff09ef26c in Tcl_EvalFile () from /usr/lib/libtcl8.6.so
#21 0x00007ffff0afc658 in exp_interpret_cmdfilename ()
from /usr/lib/libexpect5.45.4.so
#22 0x0000000120000c80 in main ()
The crashes happen on both my own LoongArch board and
gcc401.fsffrance.org. So I don't think it was an "only me" problem.
The segment fault is not deterministic. A Expect command like
cd /path/to/gcc/build/gcc
expect -- /usr/share/dejagnu/runtest.exp --tool gfortran dg.exp=bind-c-contiguous-1.f90
sometimes succeeds, sometimes immediately segfaults, sometimes prints
several lines of strange error message and then exits abnormally.
Usually I don't like to send "help wanted" messages, but this time I
have no idea how to fix (or even triage) the problem. I don't even know
which component (Tcl? Expect? GCC? Glibc? Kernel?) I should blame. So
it seems I really need some help now...
--
Xi Ruoyao <xry111@xry111.site>
School of Aerospace Science and Technology, Xidian University
More information about the Gcc
mailing list