/shark/trunk/ports/first/modules/edfstar.c |
---|
139,7 → 139,7 |
edfstar_printf("(E:chk)"); |
#endif |
/* check if the task is preempteble or not */ |
if (lev->flag[lev->activated] & EDFSTAR_FLAG_NOPREEMPT) return; |
if (lev->activated != NIL && lev->flag[lev->activated] & EDFSTAR_FLAG_NOPREEMPT) return; |
if ((first = iq_query_first(&lev->ready)) != lev->activated) { |
if (lev->activated != NIL) |
/shark/trunk/ports/first/modules/rmstar.c |
---|
136,7 → 136,7 |
rmstar_printf("(E:chk)"); |
#endif |
/* check if the task is preempteble or not */ |
if (lev->flag[lev->activated] & RMSTAR_FLAG_NOPREEMPT) return; |
if (lev->activated!=NIL && lev->flag[lev->activated] & RMSTAR_FLAG_NOPREEMPT) return; |
if ((first = iq_query_first(&lev->ready)) != lev->activated) { |
if (lev->activated != NIL) |
/shark/trunk/ports/first/modules/posixstar.c |
---|
46,7 → 46,7 |
#include "fsf_contract.h" |
#include "fsf_server.h" |
//#define POSIXSTAR_DEBUG |
#define POSIXSTAR_DEBUG |
/*+ Status used in the level +*/ |
#define POSIXSTAR_READY MODULE_STATUS_BASE |
104,11 → 104,12 |
int prio; |
/* check if the task is preempteble or not */ |
if (lev->flag[lev->activated] & POSIXSTAR_FLAG_NOPREEMPT) return; |
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) { |
132,7 → 133,7 |
break; |
} |
} |
if (p!=lev->activated) { |
if (lev->activated != NIL ) { |
level_table[ lev->scheduling_level ]-> |