82,7 → 82,6 |
#define RMSTAR_IDLE MODULE_STATUS_BASE+4 /* to wait the deadline */ |
|
/* flags */ |
#define RMSTAR_FLAG_NOPREEMPT 4 |
#define RMSTAR_FLAG_NORAISEEXC 2 |
#define RMSTAR_FLAG_SPORADIC 1 |
|
135,8 → 134,6 |
#ifdef RMSTAR_DEBUG |
rmstar_printf("(E:chk)"); |
#endif |
/* check if the task is preempteble or not */ |
if (lev->flag[lev->activated] & RMSTAR_FLAG_NOPREEMPT) return; |
|
if ((first = iq_query_first(&lev->ready)) != lev->activated) { |
if (lev->activated != NIL) |
758,19 → 755,3 |
return 0; |
|
} |
|
|
void RMSTAR_set_nopreemtive_current(LEVEL l) { |
|
RMSTAR_level_des *lev = (RMSTAR_level_des *)(level_table[l]); |
|
lev->flag[lev->activated]|=RMSTAR_FLAG_NOPREEMPT; |
} |
|
void EDFSTAR_unset_nopreemtive_current(LEVEL l) { |
|
RMSTAR_level_des *lev = (RMSTAR_level_des *)(level_table[l]); |
|
lev->flag[lev->activated]&=~RMSTAR_FLAG_NOPREEMPT; |
} |
|