1#ifndef __VSF_LINUX_SCHED_H__
2#define __VSF_LINUX_SCHED_H__
7#if VSF_LINUX_CFG_RELATIVE_PATH == ENABLED
17#if VSF_LINUX_CFG_WRAPPER == ENABLED
18#define sched_get_priority_max VSF_LINUX_WRAPPER(sched_get_priority_max)
19#define sched_get_priority_min VSF_LINUX_WRAPPER(sched_get_priority_min)
20#define sched_getparam VSF_LINUX_WRAPPER(sched_getparam)
21#define sched_getscheduler VSF_LINUX_WRAPPER(sched_getscheduler)
22#define sched_setparam VSF_LINUX_WRAPPER(sched_setparam)
23#define sched_yield VSF_LINUX_WRAPPER(sched_yield)
24#define sched_getcpu VSF_LINUX_WRAPPER(sched_getcpu)
38#if VSF_LINUX_APPLET_USE_SCHED == ENABLED
51# ifndef __VSF_APPLET__
56#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_SCHED_LIB__))\
57 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_SCHED == ENABLED
59#ifndef VSF_LINUX_APPLET_SCHED_VPLT
60# if VSF_LINUX_USE_APPLET == ENABLED
61# define VSF_LINUX_APPLET_SCHED_VPLT \
62 ((vsf_linux_sched_vplt_t *)(VSF_LINUX_APPLET_VPLT->sched_vplt))
64# define VSF_LINUX_APPLET_SCHED_VPLT \
65 ((vsf_linux_sched_vplt_t *)vsf_vplt((void *)0))
69#define VSF_LINUX_APPLET_SCHED_ENTRY(__NAME) \
70 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_SCHED_VPLT, __NAME)
71#define VSF_LINUX_APPLET_SCHED_IMP(...) \
72 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_SCHED_VPLT, __VA_ARGS__)
100 return VSF_LINUX_APPLET_SCHED_ENTRY(
sched_yield)();
int pid_t
Definition types.h:113
#define sched_getcpu
Definition sched.h:24
#define sched_setparam
Definition sched.h:22
#define sched_get_priority_max
Definition sched.h:18
int sched_setscheduler(pid_t pid, int policy, const struct sched_param *param)
Definition vsf_linux.c:3750
@ SCHED_OTHER
Definition sched.h:28
@ SCHED_IDLE
Definition sched.h:30
@ SCHED_RR
Definition sched.h:32
@ SCHED_BATCH
Definition sched.h:29
@ SCHED_FIFO
Definition sched.h:31
#define sched_yield
Definition sched.h:23
#define sched_get_priority_min
Definition sched.h:19
#define sched_getparam
Definition sched.h:20
__VSF_VPLT_DECORATOR__ vsf_linux_sched_vplt_t vsf_linux_sched_vplt
Definition vsf_linux.c:5003
#define sched_getscheduler
Definition sched.h:21
int sched_priority
Definition sched.h:35
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_yield)
vsf_vplt_info_t info
Definition sched.h:40
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_getparam)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_get_priority_min)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_getscheduler)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_setscheduler)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_setparam)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_getcpu)
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(sched_get_priority_max)
#define __VSF_VPLT_DECORATOR__
Definition vsf_cfg.h:93
#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE()
Definition vsf_cfg.h:165