xv6

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit b6cac0a53b45a8f35e348dc3235243c066aab747
parent e7a5b3c5ee2d440892ab7e9bb98ad82efb25219f
Author: rsc <rsc>
Date:   Thu,  7 Sep 2006 16:54:00 +0000

check preconditions in sched

Diffstat:
Mproc.c | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/proc.c b/proc.c @@ -207,6 +207,11 @@ sched(void) { struct proc *p = curproc[cpu()]; + if(!holding(&proc_table_lock)) + panic("sched"); + if(cpus[cpu()].nlock != 1) + panic("sched locks"); + if(setjmp(&p->jmpbuf) == 0) longjmp(&cpus[cpu()].jmpbuf); }