43,6 → 43,8 |
#include <kernel/var.h> |
#include <kernel/func.h> |
|
#include <tracer.h> |
|
#define RMSTAR_CHANGE_LEVEL 1 |
|
/* for iqueues */ |
202,6 → 204,8 |
#endif |
/* else, a deadline miss occurred!!! */ |
lev->dline_miss[p]++; |
TRACER_LOGEVENT(FTrace_EVT_task_deadline_miss,proc_table[p].context,proc_table[p].task_level); |
|
if (!(lev->flag[p] & RMSTAR_FLAG_SPORADIC)) { |
lev->nact[p]++; |
ADDUSEC2TIMESPEC(lev->period[p], &lev->deadline_timespec[p]); |
333,6 → 337,7 |
rmstar_printf2("W%d",p); |
#endif |
//proc_table[p].control &= ~CONTROL_CAP; |
TRACER_LOGEVENT(FTrace_EVT_task_wcet_violation,proc_table[p].context,proc_table[p].task_level); |
lev->wcet_miss[p]++; |
} |
#ifdef RMSTAR_DEBUG |
347,7 → 352,7 |
level_table[proc_table[exec].task_level]->public_epilogue(proc_table[exec].task_level,p); |
} |
|
static void RMSTAR_public_activate(LEVEL l, PID p) |
static void RMSTAR_public_activate(LEVEL l, PID p, struct timespec *o) |
{ |
RMSTAR_level_des *lev = (RMSTAR_level_des *)(level_table[l]); |
struct timespec t; |
483,7 → 488,7 |
#ifdef RMSTAR_DEBUG |
rmstar_printf(")"); |
#endif |
|
TRACER_LOGEVENT(FTrace_EVT_task_end_cycle,proc_table[p].context,proc_table[p].task_level); |
jet_update_endcycle(); /* Update the Jet data... */ |
break; |
default: |