mirror of https://github.com/golang/go.git
runtime: call symtabinit earlier
Otherwise, we won't get a stack trace in some of the early init.
Here's one example:
http://build.golang.org/log/a96d10f6aee1fa3e3ae51f41da46d414a7ab02de
After walking the stack by hand in acid, I was able to determine
that the stackalloc inside mpreinit was causing the throw.
LGTM=rsc
R=rsc, dvyukov
CC=golang-codereviews
https://golang.org/cl/72450044
This commit is contained in:
parent
b53d2f5ba7
commit
64e041652a
|
|
@ -146,6 +146,7 @@ runtime·schedinit(void)
|
|||
runtime·sched.maxmcount = 10000;
|
||||
runtime·precisestack = true; // haveexperiment("precisestack");
|
||||
|
||||
runtime·symtabinit();
|
||||
runtime·mallocinit();
|
||||
mcommoninit(m);
|
||||
|
||||
|
|
@ -159,9 +160,6 @@ runtime·schedinit(void)
|
|||
runtime·goenvs();
|
||||
runtime·parsedebugvars();
|
||||
|
||||
// Allocate internal symbol table representation now, we need it for GC anyway.
|
||||
runtime·symtabinit();
|
||||
|
||||
runtime·sched.lastpoll = runtime·nanotime();
|
||||
procs = 1;
|
||||
p = runtime·getenv("GOMAXPROCS");
|
||||
|
|
|
|||
Loading…
Reference in New Issue