sparc64 kernel code question..
Julian Elischer
julian at elischer.org
Sun May 9 15:44:44 PDT 2004
in vm_machdep.c the sparc64 code has
void
cpu_sched_exit(struct thread *td)
{
struct vmspace *vm;
struct pcpu *pc;
struct proc *p;
mtx_assert(&sched_lock, MA_OWNED);
p = td->td_proc;
vm = p->p_vmspace;
if (vm->vm_refcnt > 1)
return;
SLIST_FOREACH(pc, &cpuhead, pc_allcpu) {
if (pc->pc_vmspace == vm) {
vm->vm_pmap.pm_active &= ~pc->pc_cpumask;
vm->vm_pmap.pm_context[pc->pc_cpuid] = -1;
pc->pc_vmspace = NULL;
}
}
}
This is thw only architecture that has this..
What does it do? And what does it have to do with the scheduler?
thanks
Julian
More information about the freebsd-current
mailing list