1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_SCHED_SYSCTL_H 3 #define _LINUX_SCHED_SYSCTL_H 4 5 #include <linux/types.h> 6 7 #ifdef CONFIG_DETECT_HUNG_TASK 8 /* used for hung_task and block/ */ 9 extern unsigned long sysctl_hung_task_timeout_secs; 10 #else 11 /* Avoid need for ifdefs elsewhere in the code */ 12 enum { sysctl_hung_task_timeout_secs = 0 }; 13 #endif 14 15 extern unsigned int sysctl_sched_latency; 16 extern unsigned int sysctl_sched_wakeup_granularity; 17 #ifdef CONFIG_SCHED_WALT 18 extern unsigned int sysctl_sched_use_walt_cpu_util; 19 extern unsigned int sysctl_sched_use_walt_task_util; 20 extern unsigned int sysctl_sched_walt_init_task_load_pct; 21 extern unsigned int sysctl_sched_cpu_high_irqload; 22 23 extern int 24 sysctl_sched_walt_init_task_load_pct_sysctl_handler(struct ctl_table *table, 25 int write, void __user *buffer, size_t *length, loff_t *ppos); 26 #endif 27 28 #ifdef CONFIG_SCHED_RT_CAS 29 extern unsigned int sysctl_sched_enable_rt_cas; 30 #endif 31 #ifdef CONFIG_SCHED_RT_ACTIVE_LB 32 extern unsigned int sysctl_sched_enable_rt_active_lb; 33 #endif 34 35 enum sched_tunable_scaling { 36 SCHED_TUNABLESCALING_NONE, 37 SCHED_TUNABLESCALING_LOG, 38 SCHED_TUNABLESCALING_LINEAR, 39 SCHED_TUNABLESCALING_END, 40 }; 41 42 #define NUMA_BALANCING_DISABLED 0x0 43 #define NUMA_BALANCING_NORMAL 0x1 44 #define NUMA_BALANCING_MEMORY_TIERING 0x2 45 46 #ifdef CONFIG_NUMA_BALANCING 47 extern int sysctl_numa_balancing_mode; 48 #else 49 #define sysctl_numa_balancing_mode 0 50 #endif 51 52 #endif /* _LINUX_SCHED_SYSCTL_H */ 53