diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2013-11-15 17:20:25 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2013-11-15 17:20:25 +0000 |
commit | 7c0f17db449e3cd0d98c40a065fce2766f2e363d (patch) | |
tree | 415fcd7d51408deb3732e1c1ad5a698ca638e4ef | |
parent | 78ec30368544d09a0cd1423b2eefc2496bb29632 (diff) | |
download | gcc-7c0f17db449e3cd0d98c40a065fce2766f2e363d.zip gcc-7c0f17db449e3cd0d98c40a065fce2766f2e363d.tar.gz gcc-7c0f17db449e3cd0d98c40a065fce2766f2e363d.tar.bz2 |
runtime: Use runtime_m to get m value after call to runtime_mcall.
From-SVN: r204853
-rw-r--r-- | libgo/runtime/proc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libgo/runtime/proc.c b/libgo/runtime/proc.c index 7011f14..de2a54b 100644 --- a/libgo/runtime/proc.c +++ b/libgo/runtime/proc.c @@ -1983,7 +1983,10 @@ runtime_exitsyscall(void) #endif gp->gcnext_sp = nil; runtime_memclr(&gp->gcregs, sizeof gp->gcregs); - m->p->syscalltick++; + + // Don't refer to m again, we might be running on a different + // thread after returning from runtime_mcall. + runtime_m()->p->syscalltick++; } static bool |