/* libc/sys/linux/sched.c - Process scheduling functions */
/* Copyright 2002, Red Hat Inc. */
#include <time.h>
#include <sched.h>
#include <machine/syscall.h>
_syscall1(int,sched_get_priority_max,int,policy);
_syscall1(int,sched_get_priority_min,int,policy);
_syscall2(int,sched_rr_get_interval,pid_t,pid,struct timespec *,interval);
_syscall0(int,sched_yield);
weak_alias(__libc_sched_get_priority_max,__sched_get_priority_max);
weak_alias(__libc_sched_get_priority_min,__sched_get_priority_min);
#if !defined(_ELIX_LEVEL) || _ELIX_LEVEL >= 3
_syscall2(int,sched_getparam,pid_t,pid,struct sched_param *,sched);
_syscall1(int,sched_getscheduler,pid_t,pid);
_syscall2(int,sched_setparam,pid_t,pid,const struct sched_param *,sched);
_syscall3(int,sched_setscheduler,pid_t,pid,int,policy,const struct sched_param *,sched);
weak_alias(__libc_sched_getparam,__sched_getparam);
weak_alias(__libc_sched_getscheduler,__sched_getscheduler);
weak_alias(__libc_sched_setscheduler,__sched_setscheduler);
#endif /* !_ELIX_LEVEL || _ELIX_LEVEL >= 3 */