- /* OPTIMIZED INLINE EXPANSION OF setrun(p) */
- p->p_stat = SRUN;
- if (p->p_flag & SLOAD) {
-#ifndef FASTVAX
- p->p_link = runq;
- runq = p->p_link;
-#else
- setrq(p);
-#endif
- }
- if(p->p_pri < curpri)
- runrun++;
- if(runout != 0 && (p->p_flag&SLOAD) == 0) {
- runout = 0;
- wakeup((caddr_t)&runout);
+ if (p->p_stat == SSLEEP) {
+ /* OPTIMIZED INLINE EXPANSION OF setrun(p) */
+ p->p_stat = SRUN;
+ if (p->p_flag & SLOAD)
+ setrq(p);
+ if(p->p_pri < curpri) {
+ runrun++;
+ aston();
+ }
+ if(runout != 0 && (p->p_flag&SLOAD) == 0) {
+ runout = 0;
+ wakeup((caddr_t)&runout);
+ }
+ /* END INLINE EXPANSION */
+ goto restart;