aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/runtime.h
diff options
context:
space:
mode:
authorKen Thompson <ken@golang.org>2008-07-16 13:50:23 -0700
committerKen Thompson <ken@golang.org>2008-07-16 13:50:23 -0700
commite7d549fbd73cac17e80a5d85b48444f0142bc781 (patch)
tree1612404a1ab856e82df2c5d72ab72d7d6c7e4432 /src/runtime/runtime.h
parent44b8934d35878dd28907b01a4b3b9723fcc52356 (diff)
downloadgo-e7d549fbd73cac17e80a5d85b48444f0142bc781.tar.xz
new (more fifo) schedulint algorithm
newproc will reuse dead procs SVN=127565
Diffstat (limited to 'src/runtime/runtime.h')
-rw-r--r--src/runtime/runtime.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/runtime/runtime.h b/src/runtime/runtime.h
index dec63eaa76..b1e8b69b25 100644
--- a/src/runtime/runtime.h
+++ b/src/runtime/runtime.h
@@ -105,11 +105,11 @@ struct G
{
byte* stackguard; // must not move
byte* stackbase; // must not move
+ byte* stack0; // first stack segment
Gobuf sched;
G* alllink; // on allq
G* qlink; // on wait q
int32 status;
- int32 pri;
int32 goid;
byte elem[8]; // transfer element for chan
};
@@ -117,8 +117,9 @@ struct M
{
G* g0; // g0 w interrupt stack - must not move
uint64 morearg; // arg to morestack - must not move
- uint64 cret; // return value from C - must not move
+ uint64 cret; // return value from C - must not move
G* curg; // current running goroutine
+ G* lastg; // last running goroutine - to emulate fifo
Gobuf sched;
Gobuf morestack;
byte* moresp;