106,6 → 106,10 |
|
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) { |
130,9 → 134,6 |
} |
} |
|
/* 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 ]-> |
280,7 → 281,7 |
|
if (proc_table[exec].task_level==l ) { |
|
POSIXSTAR_account_capacity(lev,exec); |
if (proc_table[exec].avail_time > 0) POSIXSTAR_account_capacity(lev,exec); |
|
if (lev->yielding) { |
lev->yielding = 0; |