Vcores always start in vcore context
authorBarret Rhoden <brho@cs.berkeley.edu>
Wed, 9 Nov 2011 01:37:41 +0000 (17:37 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Thu, 15 Dec 2011 22:48:40 +0000 (14:48 -0800)
commitd66c69e111ca7902040c5cad76465af7e9d1e581
tree20436b1c4284c2ee3e3ae495b008f9ca1dfcbcab
parent1eb70cd899f8f2d5003346acf405d6c2e8965e3a
Vcores always start in vcore context

Previously, after a preemption, the vcore would start whatever was
running when it was preempted: specifically, it could start a uthread.
Now, it'll always start in vcore context.  The 2LS will likely restart
the uthread right away.

We'll need this change to be able to steal uthreads from preempted
vcores (in future patches).  While the older style seemed reasonable for
programs written directly on the kernel, the 2LS now handles everything.
kern/include/ros/event.h
kern/src/process.c
kern/src/resource.c