20,11 → 20,11 |
|
/** |
------------ |
CVS : $Id: cbs.c,v 1.10 2004-03-10 14:51:43 giacomo Exp $ |
CVS : $Id: cbs.c,v 1.11 2004-05-17 15:03:51 anton Exp $ |
|
File: $File$ |
Revision: $Revision: 1.10 $ |
Last update: $Date: 2004-03-10 14:51:43 $ |
Revision: $Revision: 1.11 $ |
Last update: $Date: 2004-05-17 15:03:51 $ |
------------ |
|
This file contains the aperiodic server CBS (Total Bandwidth Server) |
404,10 → 404,9 |
private_epilogue(lev->scheduling_level,p); |
} |
|
static void CBS_public_activate(LEVEL l, PID p) |
static void CBS_public_activate(LEVEL l, PID p, struct timespec *t) |
{ |
CBS_level_des *lev = (CBS_level_des *)(level_table[l]); |
struct timespec t; |
|
if (lev->flag[p] & CBS_SLEEP) { |
lev->flag[p] &= ~CBS_SLEEP; |
421,10 → 420,8 |
return; |
} |
|
kern_gettime(&t); |
CBS_activation(lev, p, t); |
|
CBS_activation(lev, p, &t); |
|
/* Set the reactivation timer */ |
if (!(lev->flag[p] & CBS_APERIODIC)) |
{ |
432,7 → 429,7 |
the deadline may be != from actual_time + period |
(if we call the task_activate after a task_sleep, and the |
deadline was postponed a lot...) */ |
TIMESPEC_ASSIGN(&lev->reactivation_time[p], &t); |
TIMESPEC_ASSIGN(&lev->reactivation_time[p], t); |
ADDUSEC2TIMESPEC(lev->period[p], &lev->reactivation_time[p]); |
// TIMESPEC_ASSIGN(&lev->reactivation_time[p], &lev->cbs_dline[p]); |
lev->reactivation_timer[p] = kern_event_post(&lev->reactivation_time[p], |