go crashes with SIGILL: illegal instruction

Bug #1367165 reported by Klenov V
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
golang (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I've installed go to my old computer (Pintium III) with 'sudo apt-get install golang'.
It crashes every time with the following error message:

$go version
SIGILL: illegal instruction
PC=0x81a65b9

math.init·1()
   /usr/lib/go/src/pkg/math/pow10.go:34 +0x19 fp=0xb7444f34
math.init()
   /usr/lib/go/src/pkg/math/unsafe.go:21 +0x3e fp=0xb7444f38
strconv.init()
   /usr/lib/go/src/pkg/strconv/quote.go:442 +0x44 fp=0xb7444f4c
go/parser.init()
   /usr/lib/go/src/pkg/go/parser/parser.go:2441 +0x49 fp=0xb7444f58
main.init()
   /usr/lib/go/src/cmd/go/zdefaultcc.go:6 +0x44 fp=0xb7444f98
runtime.main()
   /usr/lib/go/src/pkg/runtime/proc.c:213 +0xd6 fp=0xb7444fcc
runtime.goexit()
   /usr/lib/go/src/pkg/runtime/proc.c:1394 fp=0xb7444fd0

eax 0x0
ebx 0x1891c080
ecx 0x189010a0
edx 0x1891c080
edi 0x1891c080
esi 0x20
ebp 0x0
esp 0xb7444f30
eip 0x81a65b9
eflags 0x10206
cs 0x73
fs 0x0
gs 0x33

$lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty

$cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 3
microcode : 0x10
cpu MHz : 702.663
cache size : 256 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pse36 mmx fxsr sse
bogomips : 1405.32
clflush size : 32
cache_alignment : 32
address sizes : 36 bits physical, 32 bits virtual
power management:

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in golang (Ubuntu):
status: New → Confirmed
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

I think this problem may be fixed in Go git tip by https://go-review.googlesource.com/#/c/15999/ -- is it possible for someone who experiences this bug to try building from Go git? Instructions here: https://golang.org/doc/install/source

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Closing on the assumption that this is fixed in 1.6. Make noise if not.

Changed in golang (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
enneagramor (enneagramor) wrote :

:~/gowork$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 8
model name : AMD Athlon(tm) Processor
stepping : 1
cpu MHz : 666.680
cache size : 256 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fdiv_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mp mmxext 3dnowext 3dnow 3dnowprefetch vmmcall
bugs : fxsave_leak sysret_ss_attrs
bogomips : 1333.36
clflush size : 32
cache_alignment : 32
address sizes : 34 bits physical, 32 bits virtual
power management: ts fid vid

:~/gowork$ go build main.go
SIGILL: illegal instruction
PC=0x81a65b9

math.init·1()
    /usr/lib/go/src/pkg/math/pow10.go:34 +0x19 fp=0xb74ccf34
math.init()
    /usr/lib/go/src/pkg/math/unsafe.go:21 +0x3e fp=0xb74ccf38
strconv.init()
    /usr/lib/go/src/pkg/strconv/quote.go:442 +0x44 fp=0xb74ccf4c
go/parser.init()
    /usr/lib/go/src/pkg/go/parser/parser.go:2441 +0x49 fp=0xb74ccf58
main.init()
    /usr/lib/go/src/cmd/go/zdefaultcc.go:6 +0x44 fp=0xb74ccf98
runtime.main()
    /usr/lib/go/src/pkg/runtime/proc.c:213 +0xd6 fp=0xb74ccfcc
runtime.goexit()
    /usr/lib/go/src/pkg/runtime/proc.c:1394 fp=0xb74ccfd0

eax 0x0
ebx 0x1890a0a0
ecx 0x189010a0
edx 0x1890a0a0
edi 0x1890a0a0
esi 0x20
ebp 0x0
esp 0xb74ccf30
eip 0x81a65b9
eflags 0x10206
cs 0x73
fs 0x0
gs 0x33

Revision history for this message
Jack Ostroff (ostroffjh) wrote :

Is there any chance this is because that CPU lacks sse2? More and more things are being compiled with the assumption that it is available, so any such code will crash on an older processor without it.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.