--- sched/kernel/sched.c.~1~ Sun Jan 30 15:43:39 2000 +++ sched/kernel/sched.c Fri Feb 4 18:07:54 2000 @@ -141,7 +141,7 @@ #endif /* .. and a slight advantage to the current MM */ - if (p->mm == this_mm) + if (p->mm == this_mm || !p->mm) weight += 1; weight += p->priority; @@ -173,7 +173,7 @@ */ static inline int preemption_goodness(struct task_struct * prev, struct task_struct * p, int cpu) { - return goodness(p, cpu, prev->mm) - goodness(prev, cpu, prev->mm); + return goodness(p, cpu, prev->active_mm) - goodness(prev, cpu, prev->active_mm); } /*