diff --git a/sys/kern/kern_synch.c b/sys/kern/kern_synch.c index 22046a645dba..c88695b66e78 100644 --- a/sys/kern/kern_synch.c +++ b/sys/kern/kern_synch.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_synch.c 8.9 (Berkeley) 5/19/95 - * $Id: kern_synch.c,v 1.62 1998/08/26 05:27:42 dillon Exp $ + * $Id: kern_synch.c,v 1.63 1998/10/25 17:44:51 phk Exp $ */ #include "opt_ktrace.h" @@ -138,6 +138,9 @@ static void roundrobin(arg) void *arg; { +#ifndef SMP + struct proc *p = curproc; /* XXX */ +#endif #ifdef SMP need_resched(); @@ -290,7 +293,7 @@ schedcpu(arg) #define PPQ (128 / NQS) /* priorities per queue */ if ((p != curproc) && #ifdef SMP - (u_char)p->p_oncpu == 0xff && /* idle */ + p->p_oncpu == 0xff && /* idle */ #endif p->p_stat == SRUN && (p->p_flag & P_INMEM) && @@ -632,7 +635,7 @@ mi_switch() #ifdef SIMPLELOCK_DEBUG if (p->p_simple_locks) - printf("sleep: holding simple lock\n"); + Debugger("sleep: holding simple lock\n"); #endif /* * Compute the amount of time during which the current @@ -648,9 +651,9 @@ mi_switch() */ if (p->p_stat != SZOMB && p->p_runtime > p->p_limit->p_cpulimit) { rlim = &p->p_rlimit[RLIMIT_CPU]; - if (p->p_runtime / (rlim_t)1000000 >= rlim->rlim_max) { + if (p->p_runtime / 1000000 >= rlim->rlim_max) killproc(p, "exceeded maximum CPU limit"); - } else { + else { psignal(p, SIGXCPU); if (rlim->rlim_cur < rlim->rlim_max) { /* XXX: we should make a private copy */