Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 221 → Rev 224

/shark/trunk/ports/first/first-sync.c
13,16 → 13,10
 
#include "fsf_contract.h"
 
#include "cbsstar.h"
#include "posixstar.h"
#include "edfstar.h"
extern int fsf_cbsstar_level;
 
#include <stdlib.h>
 
//#define FSF_DEBUG
 
extern int cbsstar_level;
 
int
fsf_create_synchobject(fsf_synch_object_handle_t *synch_handle)
{
77,8 → 71,8
TIME T,Q;
int budget, local_scheduler_level, scheduler_id;
 
local_scheduler_level = CBSSTAR_get_local_scheduler_level_from_pid(cbsstar_level, exec_shadow);
scheduler_id = CBSSTAR_get_local_scheduler_id_from_pid(cbsstar_level, exec_shadow);
local_scheduler_level = CBSSTAR_get_local_scheduler_level_from_pid(fsf_cbsstar_level, exec_shadow);
scheduler_id = CBSSTAR_get_local_scheduler_id_from_pid(fsf_cbsstar_level, exec_shadow);
 
switch (scheduler_id) {
case FSF_SCHEDULER_POSIX:
97,7 → 91,7
 
if (next_budget != NULL && next_period != NULL) {
 
CBSSTAR_getbudgetinfo(cbsstar_level, &Q, &T, budget);
CBSSTAR_getbudgetinfo(fsf_cbsstar_level, &Q, &T, budget);
#ifdef FSF_DEBUG
kern_printf("(budget %d Q=%d T=%d)",budget,(int)Q,(int)T);
110,9 → 104,10
 
}
 
if (was_deadline_missed != NULL) *was_deadline_missed = false;
if (was_deadline_missed != NULL)
*was_deadline_missed = false;
if (was_budget_overran != NULL)
*was_budget_overran = (bool)CBSSTAR_was_budget_overran(cbsstar_level,budget);
*was_budget_overran = false;
 
if (at_absolute_time != NULL)
kern_event_post(at_absolute_time, (void (*)(void *))&task_activate, (void *)(exec_shadow));
142,8 → 137,8
TIME T,Q;
int budget, local_scheduler_level, scheduler_id;
 
local_scheduler_level = CBSSTAR_get_local_scheduler_level_from_pid(cbsstar_level, exec_shadow);
scheduler_id = CBSSTAR_get_local_scheduler_id_from_pid(cbsstar_level, exec_shadow);
local_scheduler_level = CBSSTAR_get_local_scheduler_level_from_pid(fsf_cbsstar_level, exec_shadow);
scheduler_id = CBSSTAR_get_local_scheduler_id_from_pid(fsf_cbsstar_level, exec_shadow);
switch (scheduler_id) {
case FSF_SCHEDULER_POSIX:
162,7 → 157,7
 
if (next_budget != NULL && next_period != NULL) {
 
CBSSTAR_getbudgetinfo(cbsstar_level, &Q, &T, budget);
CBSSTAR_getbudgetinfo(fsf_cbsstar_level, &Q, &T, budget);
#ifdef FSF_DEBUG
kern_printf("(budget %d Q=%d T=%d)",budget,(int)Q,(int)T);
177,7 → 172,7
 
if (was_deadline_missed != NULL) *was_deadline_missed = false;
if (was_budget_overran != NULL)
*was_budget_overran = (bool)CBSSTAR_was_budget_overran(cbsstar_level,budget);
*was_budget_overran = (bool)CBSSTAR_was_budget_overran(fsf_cbsstar_level,budget);
 
if (synch_handle->events > 0) {
task_activate(exec_shadow);