106,10 → 106,6 |
|
prio = lev->maxpriority; |
|
/* check if the task is preempteble or not */ |
if (lev->activated != NIL && lev->flag[lev->activated] & POSIXSTAR_FLAG_NOPREEMPT) return; |
|
|
for (;;) { |
p = iq_query_first(&lev->ready[prio]); |
if (p == NIL) { |
133,7 → 129,10 |
break; |
} |
} |
|
|
/* check if the task is preempteble or not */ |
if (lev->activated != NIL && lev->flag[lev->activated] & POSIXSTAR_FLAG_NOPREEMPT) return; |
|
if (p!=lev->activated) { |
if (lev->activated != NIL ) { |
level_table[ lev->scheduling_level ]-> |
281,7 → 280,7 |
|
if (proc_table[exec].task_level==l ) { |
|
if (proc_table[exec].avail_time > 0) POSIXSTAR_account_capacity(lev,exec); |
POSIXSTAR_account_capacity(lev,exec); |
|
if (lev->yielding) { |
lev->yielding = 0; |