15,6 → 15,7 |
fsf_server_id_t server; |
union sigval no_sigval = {0}; |
int i; |
int err=0; |
|
FSF_start_service_task(); |
|
24,14 → 25,18 |
|
fsf_initialize_contract(&contract); |
|
fsf_set_contract_basic_parameters(&contract,&c->cmin,&c->tmax,c->workload); |
fsf_set_contract_reclamation_parameters(&contract,&c->cmax,&c->tmin,FSF_DEFAULT_GRANULARITY, NULL, 1,1); |
err=fsf_set_contract_basic_parameters(&contract,&c->cmin,&c->tmax,c->workload); |
if (err) exit(err); |
err=fsf_set_contract_reclamation_parameters(&contract,&c->cmax,&c->tmin,FSF_DEFAULT_GRANULARITY, NULL, 1,1); |
if (err) exit(err); |
|
if (TIMESPEC2USEC(&c->deadline) != 0) |
fsf_set_contract_timing_requirements(&contract,false,&c->deadline,0,no_sigval,0,no_sigval); |
err=fsf_set_contract_timing_requirements(&contract,false,&c->deadline,0,no_sigval,0,no_sigval); |
else |
fsf_set_contract_timing_requirements(&contract,true,NULL,0,no_sigval,0,no_sigval); |
err=fsf_set_contract_timing_requirements(&contract,true,NULL,0,no_sigval,0,no_sigval); |
|
if (err) exit(err); |
|
switch (c->local_scheduler) { |
case PAR_EDF: |
fsf_set_contract_scheduling_policy(&contract,FSF_EDF); |
46,7 → 51,8 |
} |
|
|
fsf_negotiate_contract(&contract,&server); |
err=fsf_negotiate_contract(&contract,&server); |
if (err) exit(err); |
c->server = server; |
|
} |