clean up proc.c; use procsaved() to avoid tedious comments. Reference: /n/atom/patch/applied/procclean Date: Fri May 23 22:23:51 CES 2014 Signed-off-by: quanstro@quanstro.net --- /sys/src/nix/port/proc.c Fri May 23 22:23:30 2014 +++ /sys/src/nix/port/proc.c Fri May 23 22:23:30 2014 @@ -449,10 +449,7 @@ l = p; } - /* - * p->mach == nil only when process state is saved - */ - if(p == nil || p->mach != nil){ + if(p == nil || !procsaved(p)){ unlock(sch); return nil; } @@ -642,7 +639,7 @@ start = perfticks(); sch = m->sch; /* cooperative scheduling until the clock ticks */ - if((p=m->readied) && p->mach==0 && p->state==Ready + if((p=m->readied) != nil && procsaved(p) && p->state==Ready && sch->runq[Nrq-1].head == nil && sch->runq[Nrq-2].head == nil && (p->wired == nil || p->wired->machno == m->machno)){ sch->skipscheds++; @@ -714,8 +711,7 @@ pl = splhi(); sch = procsched(p); lock(sch); - /* Only reliable way to see if we are Running */ - if(p->mach == nil) { + if(procsaved(p)){ p->newtlb = 1; ok = 1; } @@ -736,16 +732,16 @@ p->state = Scheding; p->psstate = "New"; - p->mach = 0; - p->qnext = 0; + p->mach = nil; + p->qnext = nil; p->nchild = 0; p->nwait = 0; - p->waitq = 0; - p->parent = 0; - p->pgrp = 0; - p->egrp = 0; - p->fgrp = 0; - p->rgrp = 0; + p->waitq = nil; + p->parent = nil; + p->pgrp = nil; + p->egrp = nil; + p->fgrp = nil; + p->rgrp = nil; p->pdbg = 0; p->kp = 0; if(up != nil && up->procctl == Proc_tracesyscall) @@ -755,7 +751,7 @@ p->syscalltrace = nil; p->notepending = 0; p->nnote = 0; - p->ureg = 0; + p->ureg = nil; p->privatemem = 0; p->noswap = 0; p->errstr = p->errbuf0; --- /sys/src/nix/port/portfns.h Fri May 23 22:23:30 2014 +++ /sys/src/nix/port/portfns.h Fri May 23 22:23:30 2014 @@ -252,6 +252,7 @@ void procpriority(Proc*, int, int); void procrestore(Proc*); void procsave(Proc*); +#define procsaved(p) ((p)->mach == nil) void (*proctrace)(Proc*, int, vlong); void proctracepid(Proc*); void procwired(Proc*, int);