468,6 → 468,8 |
|
/* Send change level command to posix level */ |
} |
break; |
|
case FSF_EDF: |
{ |
TASK_MODEL *m=(TASK_MODEL*)sched_params; |
502,13 → 504,18 |
/* Set server on local scheduler */ |
POSIXSTAR_setbudget(local_scheduler_level,thread,(int)(server)); |
} |
break; |
|
default: |
default: |
|
return FSF_ERR_BAD_ARGUMENT; |
|
} |
|
msg = (STD_command_message *)malloc(sizeof(STD_command_message)); |
if (msg) { |
if (msg) { |
SYS_FLAGS f; |
f=kern_fsave(); |
msg->command = STD_SET_NEW_MODEL; |
msg->param = (void *)(sched_params); |
level_table[local_scheduler_level]->public_message(local_scheduler_level,thread,msg); |
516,7 → 523,7 |
msg->command = STD_SET_NEW_LEVEL; |
msg->param = (void *)(local_scheduler_level); |
task_message(msg,thread,0); |
|
kern_frestore(f); |
free(msg); |
} else return FSF_ERR_INTERNAL_ERROR; |
|