18 #ifndef _COBALT_POSIX_SCHED_H
19 #define _COBALT_POSIX_SCHED_H
21 #include <linux/list.h>
22 #include <cobalt/kernel/sched.h>
23 #include <xenomai/posix/syscall.h>
25 struct cobalt_resources;
26 struct cobalt_process;
28 struct cobalt_sched_group {
29 #ifdef CONFIG_XENO_OPT_SCHED_QUOTA
30 struct xnsched_quota_group quota;
32 struct cobalt_resources *scope;
34 struct list_head next;
37 int __cobalt_sched_weightprio(
int policy,
38 const struct sched_param_ex *param_ex);
40 int __cobalt_sched_setconfig_np(
int cpu,
int policy,
41 void __user *u_config,
43 union sched_config *(*fetch_config)
44 (
int policy,
const void __user *u_config,
46 int (*ack_config)(
int policy,
47 const union sched_config *config,
48 void __user *u_config));
50 ssize_t __cobalt_sched_getconfig_np(
int cpu,
int policy,
51 void __user *u_config,
53 union sched_config *(*fetch_config)
54 (
int policy,
const void __user *u_config,
56 ssize_t (*put_config)(
int policy,
57 void __user *u_config,
size_t u_len,
58 const union sched_config *config,
60 struct xnsched_class *
61 cobalt_sched_policy_param(
union xnsched_policy_param *param,
62 int u_policy,
const struct sched_param_ex *param_ex,
67 COBALT_SYSCALL_DECL(sched_weightprio,
68 (
int policy,
const struct sched_param_ex __user *u_param));
70 COBALT_SYSCALL_DECL(sched_minprio, (
int policy));
72 COBALT_SYSCALL_DECL(sched_maxprio, (
int policy));
77 union sched_config __user *u_config,
82 union sched_config __user *u_config,
85 void cobalt_sched_reclaim(
struct cobalt_process *process);
int sched_yield(void)
Yield the processor.
Definition: thread.c:800
ssize_t sched_getconfig_np(int cpu, int policy, union sched_config *config, size_t *len_r)
Retrieve CPU-specific scheduler settings for a policy.
Definition: thread.c:1135
int sched_setconfig_np(int cpu, int policy, const union sched_config *config, size_t len)
Set CPU-specific scheduler settings for a policy.
Definition: thread.c:1080