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: fatal error: evacuation not done in time on MIPS64 #19740

Closed
avishbran opened this issue Mar 28, 2017 · 5 comments

Comments

Projects
None yet
4 participants
@avishbran
Copy link

commented Mar 28, 2017

GO version: 1.7.5
OS/ARCH: Linux / MIPS64 (Linux kernel - 2.6.21)

Running the following simple program:

package main

import (
	"fmt"
)

func main() {

	fmt.Println("Hello MIPS World!!")
}

The result was the following exception:

fatal error: evacuation not done in time

goroutine 1 [running, locked to thread]:
runtime.throw(0xfb849, 0x1b)
        C:/Go/src/runtime/panic.go:566 +0xb8 fp=0xc420031c10 sp=0xc420031bf8
runtime.hashGrow(0xe2840, 0xc420010090)
        C:/Go/src/runtime/hashmap.go:821 +0x60 fp=0xc420031c40 sp=0xc420031c10
runtime.mapassign1(0xe2840, 0xc420010090, 0xc420031dd0, 0xc420031d90)
        C:/Go/src/runtime/hashmap.go:522 +0x9e8 fp=0xc420031d40 sp=0xc420031c40
syscall.copyenv()
        C:/Go/src/syscall/env_unix.go:43 +0x214 fp=0xc420031df8 sp=0xc420031d40
sync.(*Once).Do(0x170690, 0x104790)
        C:/Go/src/sync/once.go:44 +0x1ec fp=0xc420031e20 sp=0xc420031df8
syscall.Getenv(0xf8c8b, 0x8, 0x0, 0x0, 0xc420010060)
        C:/Go/src/syscall/env_unix.go:72 +0x74 fp=0xc420031e78 sp=0xc420031e20
time.init()
        C:/Go/src/time/zoneinfo.go:257 +0x2e4 fp=0xc420031ed0 sp=0xc420031e78
os.init()
        C:/Go/src/os/wait_waitid.go:41 +0xc0 fp=0xc420031f08 sp=0xc420031ed0
fmt.init()
        C:/Go/src/fmt/scan.go:1198 +0xc0 fp=0xc420031f40 sp=0xc420031f08
main.init()
        D:/Projects/Go/src/passTool/passTool.go:11 +0xb0 fp=0xc420031f48 sp=0xc420031f40
runtime.main()
        C:/Go/src/runtime/proc.go:172 +0x330 fp=0xc420031f98 sp=0xc420031f48
runtime.goexit()
        C:/Go/src/runtime/asm_mips64x.s:875 +0x4 fp=0xc420031f98 sp=0xc420031f98

@ALTree ALTree changed the title MIPS64 - fatal error: evacuation not done in time runtine: fatal error: evacuation not done in time on MIPS64 Mar 28, 2017

@ALTree ALTree changed the title runtine: fatal error: evacuation not done in time on MIPS64 runtime: fatal error: evacuation not done in time on MIPS64 Mar 28, 2017

@ALTree

This comment has been minimized.

Copy link
Member

commented Mar 28, 2017

That's an old kernel. The minimum requirements wiki page says

Kernel version 2.6.23 or later.

so I think that in theory we don't support your kernel version.

Also:

  • does this happen in go1.8?
  • is this little-endian or big-endian MIPS64? Little endian MIPS64 requires a newer kernel.
@cherrymui

This comment has been minimized.

Copy link
Contributor

commented Mar 28, 2017

is this little-endian or big-endian MIPS64? Little endian MIPS64 requires a newer kernel.

I believe both little-endian and big-endian probably need newer kernel. AFAIK there isn't much difference between little-endian and big-endian in MIPS64 kernel, nor in Go.

@ALTree

This comment has been minimized.

Copy link
Member

commented Mar 28, 2017

@cherrymui thanks.

I was reading the wiki and it says that little-endian in known to be broken on 4.1; so I asked. But if you are positive that the issue is caused by the fact that OP is running 2.6 I guess we can close the issue.

@cherrymui

This comment has been minimized.

Copy link
Contributor

commented Mar 28, 2017

if you are positive that the issue is caused by the fact that OP is running 2.6

No, I'm not. I don't know what's going on here. Let's wait for more information. But anyway, it's good to try on a newer kernel and a newer Go.

@avishbran

This comment has been minimized.

Copy link
Author

commented Mar 29, 2017

Tested on kernel versions 2.6.21 and 2.6.32 with GO 1.8.
It works fine :)
(BTW, I'm testing on a big-endian MIPS64)

@avishbran avishbran closed this Apr 3, 2017

@golang golang locked and limited conversation to collaborators Apr 3, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
You can’t perform that action at this time.