[Bug go/61498] New: [4.10 regression] Many 64-bit Go tests SEGV in scanblock
ro at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jun 13 13:42:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61498
Bug ID: 61498
Summary: [4.10 regression] Many 64-bit Go tests SEGV in
scanblock
Product: gcc
Version: 4.10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: go
Assignee: ian at airs dot com
Reporter: ro at gcc dot gnu.org
CC: cmang at google dot com
Host: sparc-sun-solaris2.11
Target: sparc-sun-solaris2.9
Build: sparc-sun-solaris2.11
Between 20140606 (r211315) and 20140612 (r211522), many 64-bit Go tests started
to FAIL on 64-bit Solaris 11/SPARC:
FAIL: go.go-torture/execute/array-2.go execution, -O0
unexpected fault address 0xc208213b0c
fatal error: fault
[signal 0xa code=0x1 addr=0xc208213b0c]
runtime stack:
runtime_dopanic
/vol/gcc/src/hg/trunk/local/libgo/runtime/panic.c:133
runtime_throw
/vol/gcc/src/hg/trunk/local/libgo/runtime/panic.c:167
sig_panic_info_handler
/vol/gcc/src/hg/trunk/local/libgo/runtime/go-signal.c:294
:0
scanblock
/vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1048
markroot
/vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1405
runtime.parfordo
/vol/gcc/src/hg/trunk/local/libgo/runtime/parfor.c:112
gc
/vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:2282
mgc
/vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:2225
runtime_mstart
/vol/gcc/src/hg/trunk/local/libgo/runtime/proc.c:1026
main
/vol/gcc/src/hg/trunk/local/libgo/runtime/go-main.c:43
:0
goroutine 16 [garbage collection]:
created by main
/vol/gcc/src/hg/trunk/local/libgo/runtime/go-main.c:42
goroutine 17 [runnable]:created by runtime_main
/vol/gcc/src/hg/trunk/local/libgo/runtime/proc.c:561
Running it under gdb reveals
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1 (LWP 1)]
scanblock (wbuf=<optimized out>, keepworking=keepworking@entry=0 '\000')
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1048
1048 obj = *(byte**)stack_top.b;
1: x/i $pc
=> 0xfffffffb998a230c <scanblock+348>: ldx [ %i5 ], %g1
(gdb) where
#0 scanblock (wbuf=<optimized out>, keepworking=keepworking@entry=0 '\000')
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1048
#1 0xfffffffb998a2cf4 in markroot (desc=<optimized out>, i=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:1405
#2 0xfffffffb998a7d98 in runtime.parfordo (desc=0xc208428000)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/parfor.c:112
#3 0xfffffffb998a4a68 in gc (args=<optimized out>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:2282
#4 mgc (gp=0xc208002800)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/mgc0.c:2225
#5 0xfffffffb998ac120 in runtime_mstart (mp=0xfffffffb9a007290 <runtime_m0>)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/proc.c:1026
#6 0x0000000100001784 in main (argc=<optimized out>, argv=0xffffffff7ffff2f8)
at /vol/gcc/src/hg/trunk/local/libgo/runtime/go-main.c:43
#7 0x000000010000121c in _start ()
and truss shows that it's an address alignment error:
/1: Incurred fault #5, FLTACCESS %pc = 0xFFFFFFFB998A230C
/1: siginfo: SIGBUS BUS_ADRALN addr=0xC208213B0C
/1: Received signal #10, SIGBUS [caught]
/1: siginfo: SIGBUS BUS_ADRALN addr=0xC208213B0C
Rainer
More information about the Gcc-bugs
mailing list