Skip to content

runtime: nosplit stack overflow after gofmt #12680

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

Closed
Kugelschieber opened this issue Sep 18, 2015 · 4 comments
Closed

runtime: nosplit stack overflow after gofmt #12680

Kugelschieber opened this issue Sep 18, 2015 · 4 comments
Milestone

Comments

@Kugelschieber
Copy link

Version: 1.5.1
OS: Ubuntu 14.04
Arch: AMD x64

I installed Go 1.5.1 to /usr/local/go, set up a project in eclipse and worked on it for a few day. I decided to format the code using gofmt (call was: gofmt ./... inside my project folder, after setting up environment variables). After I have done that, outside of eclipse using the terminal (I use eclipse to build and run), I got the following error:

command-line-arguments

runtime.cgocallbackg: nosplit stack overflow
504 assumed on entry to runtime.cgocallbackg (nosplit)
416 after runtime.cgocallbackg (nosplit) uses 88
408 on entry to runtime.exitsyscall (nosplit)
288 after runtime.exitsyscall (nosplit) uses 120
280 on entry to runtime.exitsyscallfast (nosplit)
120 after runtime.exitsyscallfast (nosplit) uses 160
112 on entry to runtime.writebarrierptr (nosplit)
64 after runtime.writebarrierptr (nosplit) uses 48
56 on entry to runtime.writebarrierptr_nostore1 (nosplit)
0 after runtime.writebarrierptr_nostore1 (nosplit) uses 56
-8 on entry to runtime.acquirem (nosplit)
reflect.typelinks: nosplit stack overflow
504 assumed on entry to reflect.typelinks (nosplit)
352 after reflect.typelinks (nosplit) uses 152
344 on entry to runtime.typedmemmove (nosplit)
320 after runtime.typedmemmove (nosplit) uses 24
312 on entry to runtime.heapBitsBulkBarrier (nosplit)
192 after runtime.heapBitsBulkBarrier (nosplit) uses 120
184 on entry to runtime.throw (nosplit)
160 after runtime.throw (nosplit) uses 24
152 on entry to runtime.dopanic (nosplit)
72 after runtime.dopanic (nosplit) uses 80
64 on entry to runtime.getcallerpc (nosplit)
56 after runtime.getcallerpc (nosplit) uses 8
48 on entry to runtime.nextBarrierPC (nosplit)
8 after runtime.nextBarrierPC (nosplit) uses 40
0 on entry to runtime.panicindex
-8 on entry to runtime.morestack (nosplit)
runtime.cgocallback_gofunc: nosplit stack overflow
504 assumed on entry to runtime.cgocallback_gofunc (nosplit)
496 after runtime.cgocallback_gofunc (nosplit) uses 8
488 on entry to runtime.cgocallbackg (nosplit)
400 after runtime.cgocallbackg (nosplit) uses 88
392 on entry to runtime.exitsyscall (nosplit)
272 after runtime.exitsyscall (nosplit) uses 120
264 on entry to runtime.exitsyscallfast (nosplit)
104 after runtime.exitsyscallfast (nosplit) uses 160
96 on entry to runtime.writebarrierptr (nosplit)
48 after runtime.writebarrierptr (nosplit) uses 48
40 on entry to runtime.writebarrierptr_nostore1 (nosplit)
-16 after runtime.writebarrierptr_nostore1 (nosplit) uses 56

Now this error appears every time I try to compile some go program. Even a hello world program throws this. I also tried to reinstall/copy and use a version in a different location (like on my desktop, running from inside that folder).

@Kugelschieber
Copy link
Author

That's interesting: the error now occurs on my laptop too. I haven't changed anything here and it stopped working. Maybe it's related to an ubuntu update?

I also get this error using version 1.4.2.

@ianlancetaylor ianlancetaylor changed the title nosplit stack overflow after gofmt runtime: nosplit stack overflow after gofmt Sep 19, 2015
@ianlancetaylor
Copy link
Member

That stack trace doesn't make any sense. Something is badly wrong but I have no idea what. Make sure you are running the version of go that you think you are running.

@ianlancetaylor ianlancetaylor added this to the Go1.6 milestone Sep 19, 2015
@Kugelschieber
Copy link
Author

go version go1.5.1 linux/amd64

I type:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=/home/marvin/Schreibtisch/
go run helloworld.go

And get this error.

@Kugelschieber
Copy link
Author

I fixed it somehow. I purged everything related to Go. Updated/upgraded and it worked again. I don't know exactly why it broke, but I think it was releated to an update.

@golang golang locked and limited conversation to collaborators Sep 22, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants