Fixes sys_change_vcore() return path
authorBarret Rhoden <brho@cs.berkeley.edu>
Mon, 14 Nov 2011 20:39:26 +0000 (12:39 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Thu, 15 Dec 2011 22:48:40 +0000 (14:48 -0800)
commit67e1ccee808ea0053f40fd3fc2a7bb8a85d028cb
tree46e6e50e70ee76fd2944963aa64d7bc1b4e626c0
parent901aa5cfb181f3964251be5851eeaeb2ec811eae
Fixes sys_change_vcore() return path

Once we unlock, we could have the calling vcore start up remotely before
we get a chance to finish the syscall (writing the syscall struct).  If
the vcore had notifs disabled, it'll start up where it left off and wait
on the syscall finishing, which is fine.  However, if the vcore starts
from scratch on a remote core, nothing will ever wait on the sysc, and
we now could be writing into the stack at some random future date.
kern/src/syscall.c