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
52# ifndef __VSF_APPLET__
57#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_SCHED_LIB__))\
58 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_SCHED == ENABLED
60#ifndef VSF_LINUX_APPLET_SCHED_VPLT
61# if VSF_LINUX_USE_APPLET == ENABLED
62# define VSF_LINUX_APPLET_SCHED_VPLT \
63 ((vsf_linux_sched_vplt_t *)(VSF_LINUX_APPLET_VPLT->sched_vplt))
65# define VSF_LINUX_APPLET_SCHED_VPLT \
66 ((vsf_linux_sched_vplt_t *)vsf_vplt((void *)0))
70#define VSF_LINUX_APPLET_SCHED_ENTRY(__NAME) \
71 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_SCHED_VPLT, __NAME)
72#define VSF_LINUX_APPLET_SCHED_IMP(...) \
73 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_SCHED_VPLT, __VA_ARGS__)
101 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
struct vsf_linux_sched_vplt_t vsf_linux_sched_vplt_t
int sched_setscheduler(pid_t pid, int policy, const struct sched_param *param)
Definition vsf_linux.c:3892
@ 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:5189
#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_MOD_DEF(libsched)
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