Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 783 → Rev 784

/shark/trunk/ports/first/modules/edfstar.c
305,8 → 305,10
 
/* ...and finally, we have to post a capacity event on exec task because the shadow_task consume
* * capacity on exe task always */
ADDUSEC2TIMESPEC(proc_table[exec].avail_time ,&ty);
lev->cap_lev = kern_event_post(&ty,capacity_handler, lev);
if (proc_table[exec].avail_time > 0) {
ADDUSEC2TIMESPEC(proc_table[exec].avail_time ,&ty);
lev->cap_lev = kern_event_post(&ty,capacity_handler, lev);
}
level_table[lev->scheduling_level]->private_dispatch(lev->scheduling_level, p, nostop);
}
else
333,7 → 335,7
EDFSTAR_account_capacity(lev,exec);
 
/* check if the wcet is finished... */
if (proc_table[exec].avail_time <= 0) {
if (proc_table[exec].avail_time < 0) {
/* wcet finished: disable wcet event and count wcet miss */
 
#ifdef EDFSTAR_DEBUG
341,7 → 343,8
#endif
//proc_table[p].control &= ~CONTROL_CAP;
lev->wcet_miss[exec]++;
TRACER_LOGEVENT(FTrace_EVT_task_wcet_violation,proc_table[p].context,proc_table[p].task_level);
proc_table[exec].avail_time = 0;
TRACER_LOGEVENT(FTrace_EVT_task_wcet_violation,proc_table[exec].context,proc_table[exec].task_level);
}
 
#ifdef EDFSTAR_DEBUG
/shark/trunk/ports/first/modules/grubstar.c
138,7 → 138,7
b->current = p;
job_task_default_model(job, b->dline);
//job_task_def_noexc(job);
job_task_def_noexc(job);
level_table[ lev->scheduling_level ]->
private_insert(lev->scheduling_level, p, (TASK_MODEL *)&job);
227,7 → 227,7
b->current = p;
job_task_default_model(job, b->dline);
//job_task_def_noexc(job);
job_task_def_noexc(job);
level_table[ lev->scheduling_level ]->
private_insert(lev->scheduling_level, p, (TASK_MODEL *)&job);
 
345,7 → 345,7
/* and, finally, we reinsert the task in the master level */
job_task_default_model(job, b->dline);
//job_task_def_noexc(job);
job_task_def_noexc(job);
level_table[ lev->scheduling_level ]->
private_insert(lev->scheduling_level, p, (TASK_MODEL *)&job);