VMM: Use VM contexts [2/2]
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 2 Feb 2016 17:02:24 +0000 (12:02 -0500)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 2 Feb 2016 22:43:52 +0000 (17:43 -0500)
commitb3040e7c0f21b327d8d6ac8bddb6cec8dbf83564
tree9e9533a3baea7c8779ac23e01373723ca41a2518
parent86fc3a0ec90d1d55290f5b3872a7466fe863631a
VMM: Use VM contexts [2/2]

The bulk of this commit changes vmrunkernel to use VM contexts, but without
changing the overall structure of the program.  We now use two uthreads:
one for the VM and one for the controller (i.e. int main()).  They pass
control back and forth with a mutex (the ball).

The other changes are to actually use the vmexit_handler in the kernel
(HOST_RIP) and to just assume we are notifying GPC 0 (which is what we've
been doing).  IPI injection needs a little work.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
kern/arch/x86/vmm/intel/vmx.c
tests/vmm/vmrunkernel.c