Changes proc mgmt kmsgs back to ROUTINE
authorBarret Rhoden <brho@cs.berkeley.edu>
Fri, 12 Oct 2012 02:17:07 +0000 (19:17 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 16 Oct 2012 21:42:20 +0000 (14:42 -0700)
commit7f88edba3ad525a138819c45875cdef17bd5169e
treed7836a53b93ba3766d5fd53f44986be94816ad9e
parentf10893344fa7b115bbc345cf8690bfba40344ad7
Changes proc mgmt kmsgs back to ROUTINE

They all still return, and all still work on cur_tf, but they don't take
effect immediately.  We used to need this since the ksched used to wait
in __map_vcore().  Now that we wait for a __preempt to finish in KMSG
handlers (e.g., __startcore), we don't need IMMEDIATE messages.

This change also makes it so that when we are in fault or trap handlers
(including syscalls), that the cur_tf hasn't been saved and possibly
restarted somewhere else *yet*.  Though there may be a message waiting
to do the __preempt.  Syscalls that try to muck with the vcore map need
to be careful, but all calls will at least know what VC they are on and
what the cur_tf was at the time of the exception.
kern/src/process.c