Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 873 → Rev 874

/shark/trunk/ports/first/first-contract.c
99,17 → 99,26
 
if (!contract) return FSF_ERR_BAD_ARGUMENT;
 
if (budget_min) {
if (budget_min && (budget_min->tv_sec!=0 || budget_min->tv_nsec!=0)) {
TIMESPEC_ASSIGN(&contract->budget_min,budget_min);
TIMESPEC_ASSIGN(&contract->budget_max,budget_min);
}
if (period_max) {
} else return FSF_ERR_BAD_ARGUMENT;
if (period_max && (period_max->tv_sec!=0 || period_max->tv_nsec!=0)) {
TIMESPEC_ASSIGN(&contract->period_max,period_max);
TIMESPEC_ASSIGN(&contract->period_min,period_max);
} else return FSF_ERR_BAD_ARGUMENT;
 
switch(workload) {
case FSF_INDETERMINATE:
case FSF_BOUNDED:
case FSF_OVERHEAD:
contract->workload = workload;
break;
default: return FSF_ERR_BAD_ARGUMENT;
}
contract->workload = workload;
 
 
return 0;
}
121,7 → 130,7
fsf_workload_t *workload)
{
 
if (!contract) return FSF_ERR_BAD_ARGUMENT;
if (!contract) return FSF_ERR_BAD_ARGUMENT;
 
TIMESPEC_ASSIGN(budget_min,&contract->budget_min);
TIMESPEC_ASSIGN(period_max,&contract->period_max);
143,6 → 152,11
{
 
if (!contract) return FSF_ERR_BAD_ARGUMENT;
if ((d_equals_t==true && deadline != FSF_NULL_DEADLINE) ||
(d_equals_t==false && deadline == FSF_NULL_DEADLINE))
return FSF_ERR_BAD_ARGUMENT;
if (TIMESPEC_A_GT_B(deadline, &contract->period_max))
return FSF_ERR_BAD_ARGUMENT;
 
contract->d_equals_t = d_equals_t;
 
/shark/trunk/ports/first/include/fsf_basic_types.h
28,7 → 28,7
//
 
// Kind of workload expected in servers
typedef enum {FSF_BOUNDED, FSF_INDETERMINATE} fsf_workload_t;
typedef enum {FSF_BOUNDED, FSF_INDETERMINATE, FSF_OVERHEAD} fsf_workload_t;
 
// Constants for assigning default values