diff options
author | Russ Cox <rsc@golang.org> | 2014-11-06 09:37:04 -0500 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-11-06 09:37:04 -0500 |
commit | 6ad16c4a48accddee2e711b565e9214eae945da4 (patch) | |
tree | 4b4cb385d6614e2a352d9c886a60f83b8030df50 | |
parent | 1cdd9b407db0f842387dc5e4f18e6563dcd87b18 (diff) | |
download | go-6ad16c4a48accddee2e711b565e9214eae945da4.tar.gz go-6ad16c4a48accddee2e711b565e9214eae945da4.zip |
runtime: fix initial gp->sched.pc in newextram
CL 170720043 missed this one when adding +PCQuantum.
LGTM=iant
R=r, iant
CC=golang-codereviews
https://golang.org/cl/168090043
-rw-r--r-- | src/runtime/proc.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/runtime/proc.c b/src/runtime/proc.c index 4be51e1e16..91e3fe16d6 100644 --- a/src/runtime/proc.c +++ b/src/runtime/proc.c @@ -990,7 +990,7 @@ runtime·newextram(void) // the goroutine stack ends. mp = runtime·allocm(nil); gp = runtime·malg(4096); - gp->sched.pc = (uintptr)runtime·goexit; + gp->sched.pc = (uintptr)runtime·goexit + PCQuantum; gp->sched.sp = gp->stack.hi; gp->sched.sp -= 4*sizeof(uintreg); // extra space in case of reads slightly beyond frame gp->sched.lr = 0; @@ -2424,9 +2424,10 @@ static struct ProfState { int32 hz; } prof; -static void System(void) {} -static void ExternalCode(void) {} -static void GC(void) {} +static void System(void) { System(); } +static void ExternalCode(void) { ExternalCode(); } +static void GC(void) { GC(); } + extern void runtime·cpuproftick(uintptr*, int32); extern byte runtime·etext[]; |