go: runtime: go 1.8 + ARM + 64k pages not working

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

go version devel +0ef4815 Wed Dec 21 12:27:41 2016 +0000 linux/amd64

What operating system and processor architecture are you using (go env)?

Compile host

GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/ncw/go"
GORACE=""
GOROOT="/opt/go/go1.8"
GOTOOLDIR="/opt/go/go1.8/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build680021883=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

Target machine

# getconf PAGESIZE
65536
# uname -a
Linux WDMyCloud 3.2.26 #1 SMP Thu Jul 9 11:14:15 PDT 2015 wd-2.4-rel
armv7l GNU/Linux
# cat /proc/cpuinfo
Processor	: ARMv7 Processor rev 1 (v7l)
processor	: 0
BogoMIPS	: 1299.25

processor	: 1
BogoMIPS	: 1292.69

Features	: swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x2
CPU part	: 0xc09
CPU revision	: 1

Hardware	: Comcerto 2000 EVM
Revision	: 0001
Serial		: 0000000000000000

What did you do?

Compile this program and run it: https://play.golang.org/p/sqjFommznr

What did you expect to see?

Hello, World!

What did you see instead?

# ./hello
unexpected fault address 0x88868
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x2 addr=0x88868 pc=0x88868]

goroutine 1 [running, locked to thread]:
runtime.throw(0xa454f, 0x5)
	/opt/go/go1.8/src/runtime/panic.go:596 +0x70 fp=0x10433f94 sp=0x10433f88
runtime.sigpanic()
	/opt/go/go1.8/src/runtime/signal_unix.go:297 +0x20c fp=0x10433fb8
sp=0x10433f94
main.init()
	/home/ncw/go/src/github.com/ncw/rclone/rclone-v1.34-75-gcbfec0d-arm-go-tip/hello.go:8 fp=0x10433fbc sp=0x10433fbc
runtime.main()
	/opt/go/go1.8/src/runtime/proc.go:173 +0x198 fp=0x10433fe4 sp=0x10433fbc
runtime.goexit()
	/opt/go/go1.8/src/runtime/asm_arm.s:1017 +0x4 fp=0x10433fe4 sp=0x10433fe4

This issue was discovered as part of https://github.com/ncw/rclone/issues/426. @DTrace001 is the one with the hardware, I’m just reporting the problem.

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 23 (17 by maintainers)

Most upvoted comments

@ncw @aclements Jackpot !!!

WDMyCloud:~# ulimit -c unlimited
WDMyCloud:~# GOTRACEBACK=crash ./hello
Hello, World!