Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

runtime: unexpected return pc for runtime. #40401

Open
chalkwu opened this issue Jul 25, 2020 · 9 comments
Open

runtime: unexpected return pc for runtime. #40401

chalkwu opened this issue Jul 25, 2020 · 9 comments

Comments

@chalkwu
Copy link

@chalkwu chalkwu commented Jul 25, 2020

When installing minio which, I guess, is dependent on Go environment, with the command
$minio.exe server /data
it throws out the exception.
By the way, I tried to uninstall minio, and type
$minio.exe uninstall
it gives me the the exception too.
The exception is as following

Exception 0xc0000005 0x8 0x0 0x0
PC=0x0

runtime: unexpected return pc for runtime.asmstdcall called from 0x11
stack: frame={sp:0x379fd20, fp:0x379fd30} stack=[0x0,0x379ff30)
000000000379fc20: 00000000001effff 0000000000000400
000000000379fc30: 00000000001d0200 0203000000000000
000000000379fc40: 00000000001effff 0000000000000400
000000000379fc50: 0203000000000000 00000000000001e0
000000000379fc60: 0000000000000400 0000000000000400
000000000379fc70: 00000000001d0200 00000000001effff
000000000379fc80: 000000000379fcc0 0000000000418f3b <runtime.(*mcentral).grow+347>
000000000379fc90: 00000000001d0100 0203000000000000
000000000379fca0: 00000000001effff 00000000037a9090
000000000379fcb0: 01e0010000000400 0000000000000000
000000000379fcc0: 000000000379fd20 0000000000030000
000000000379fcd0: 00000000037a9090 0000000000000000
000000000379fce0: 0000000000000008 00000000001effff
000000000379fcf0: 00000000037a9008 0000000000000005
000000000379fd00: 0000000002030000 000000000379fd68
000000000379fd10: 00000000037a9090 000000000046383e <runtime.asmstdcall+94>
000000000379fd20: <000000000379fd40 !0000000000000011
000000000379fd30: >0000000002030000 0000000002030000
000000000379fd40: 0000000000000020 00000000021015a0
000000000379fd50: 00000000037a9090 0000000000000000
000000000379fd60: 000000000356de40 000000000379fd88
000000000379fd70: 00000000037a9090 000000000379fe18
000000000379fd80: 000000000040ce30 <runtime.mallocgc+832> 000000c000002000
000000000379fd90: 00000000000001e0 00000000000001e0
000000000379fda0: 000000000356e0c8 00000000004616d7 <runtime.asmcgocall+183>
000000000379fdb0: 0001fffffffffff8 00000000000001d8
000000000379fdc0: 00000000000001e0 000000c000002000
000000000379fdd0: 00000000037a0008 000000000379fdf8
000000000379fde0: 0000000000000000 00000000037a0008
000000000379fdf0: 0000000000000000 0000000000430993 <runtime.stdcall+147>
000000000379fe00: 00000000004637e0 <runtime.asmstdcall+0> 000000000356e0c8
000000000379fe10: 000000c000000000 000000000000000f
000000000379fe20: 000000000356de40 000000000379fe48
runtime.asmstdcall(0x2030000, 0x2030000, 0x20, 0x21015a0, 0x37a9090, 0x0, 0x356de40, 0x379fd88, 0x37a9090, 0x379fe18, ...)
runtime/sys_windows_amd64.s:60 +0x5e fp=0x379fd30 sp=0x379fd20 pc=0x46383e rax 0x0
rbx 0x356e0c8
rcx 0x358ff80
rdi 0x32a000
rsi 0x379fe60
rbp 0x379fe28
rsp 0x379fd18
r8 0x4
r9 0x379fea0
r10 0x8
r11 0x1d010e
r12 0x21015a0
r13 0x0
r14 0x0
r15 0x2030000
rip 0x0
rflags 0x10293
cs 0x33
fs 0x53
gs 0x2b

What's wrong with this? And if you guys know how to install minio from source (GO111MODULE=on go get ........) without internet connection instead, please help. Thank you so much.

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

go1.14.6

$ go version
go version go1.14.6 windows/amd64

Does this issue reproduce with the latest release?

Yes

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

Window version: Windows Server 2016 Datacenter
Cpu: Intel(R) Xeon(R) Bronze 3106CPU @ 1.70GHz 1.70GHz
RAM: 128 GB
architecture: 64-bit

go env Output
$ go env
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\ecust\AppData\Local\go-build
set GOENV=C:\Users\ecust\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\ecust\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=c:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ecust\AppData\Local\Temp\go-build525125030=/tmp/go-build -gno-record-gcc-switches

What did you do?

turn off anti-virus software

What did you expect to see?

Install minio successfully.

What did you see instead?

unexpected runtime return.

@ianlancetaylor
Copy link
Contributor

@ianlancetaylor ianlancetaylor commented Jul 25, 2020

Is there a way that we can reproduce the problem?

CC @aclements @mknyszek

@ianlancetaylor ianlancetaylor added this to the Go1.16 milestone Jul 25, 2020
@chalkwu
Copy link
Author

@chalkwu chalkwu commented Jul 26, 2020

Is there a way that we can reproduce the problem?

CC @aclements @mknyszek

After installation on different desktops, with/without internet connection, I guess the problem neither comes from go nor minio, it might be caused by operation system (some files are destroed). Now I try to repair the system. If you guys know how to repair without DVD, please help. The problem is killing me. Thank you.

@laboger
Copy link
Contributor

@laboger laboger commented Jul 27, 2020

Not sure if this will help but we saw the same error message on ppc64le back in go1.14 described here. #37216.

@mt-mithril
Copy link

@mt-mithril mt-mithril commented Aug 3, 2020

I have tested on an 128g ram server and I successfully reproduced the problem. I tried to compile a 32bit version and it succeed. I think the reason for this problem may related to wrong CPU settings in bios like Virtualization settings, etc. I hope this can help you!

@networkimprov
Copy link

@networkimprov networkimprov commented Aug 3, 2020

Possible dup of #21060 & #40469

@gopherbot add OS-Windows

@gopherbot gopherbot added the OS-Windows label Aug 3, 2020
@chalkwu
Copy link
Author

@chalkwu chalkwu commented Aug 4, 2020

I have tested on an 128g ram server and I successfully reproduced the problem. I tried to compile a 32bit version and it succeed. I think the reason for this problem may related to wrong CPU settings in bios like Virtualization settings, etc. I hope this can help you!

Virtualization settings, what was that? I don't know how to compile a 32bit version of minio. Would you please provide a download link for minio(32bit), I see they only give a 64bit version for windows. Many thanks.

@networkimprov
Copy link

@networkimprov networkimprov commented Aug 4, 2020

I think the minio project closed the issue you opened there too quickly. They should help find a solution, e.g. a 32-bit build.

minio/minio#10109

cc @klauspost

@klauspost
Copy link
Contributor

@klauspost klauspost commented Aug 4, 2020

@networkimprov @chalkwu

What do you mean "32 bit version"? The crash is a 64 bit binary.

Is the problem the combination of Windows 2016 with 128GB RAM?

As a sidenote MinIO will not have a 32 bit version, but that seems beside the point here.

@networkimprov
Copy link

@networkimprov networkimprov commented Aug 4, 2020

@mt-mithril reported above (and at minio) that a 32-bit build did not crash on this configuration, so minio could provide that (or instructions on how to build it) as a workaround.

It's not clear what the problem is; possibly something to do with OS or BIOS config and the Go runtime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
7 participants
You can’t perform that action at this time.