]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - include/linux/sched/sysctl.h
Merge tag 'efi-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi into...
[mirror_ubuntu-artful-kernel.git] / include / linux / sched / sysctl.h
CommitLineData
9ccd27cc
IM
1#ifndef _LINUX_SCHED_SYSCTL_H
2#define _LINUX_SCHED_SYSCTL_H
3
4#include <linux/types.h>
5
6struct ctl_table;
cf4aebc2
CW
7
8#ifdef CONFIG_DETECT_HUNG_TASK
cd64647f 9extern int sysctl_hung_task_check_count;
cf4aebc2 10extern unsigned int sysctl_hung_task_panic;
cf4aebc2 11extern unsigned long sysctl_hung_task_timeout_secs;
270750db 12extern int sysctl_hung_task_warnings;
cf4aebc2
CW
13extern int proc_dohung_task_timeout_secs(struct ctl_table *table, int write,
14 void __user *buffer,
15 size_t *lenp, loff_t *ppos);
16#else
17/* Avoid need for ifdefs elsewhere in the code */
18enum { sysctl_hung_task_timeout_secs = 0 };
19#endif
20
cf4aebc2
CW
21extern unsigned int sysctl_sched_latency;
22extern unsigned int sysctl_sched_min_granularity;
23extern unsigned int sysctl_sched_wakeup_granularity;
24extern unsigned int sysctl_sched_child_runs_first;
25
26enum sched_tunable_scaling {
27 SCHED_TUNABLESCALING_NONE,
28 SCHED_TUNABLESCALING_LOG,
29 SCHED_TUNABLESCALING_LINEAR,
30 SCHED_TUNABLESCALING_END,
31};
32extern enum sched_tunable_scaling sysctl_sched_tunable_scaling;
33
34extern unsigned int sysctl_numa_balancing_scan_delay;
35extern unsigned int sysctl_numa_balancing_scan_period_min;
36extern unsigned int sysctl_numa_balancing_scan_period_max;
cf4aebc2 37extern unsigned int sysctl_numa_balancing_scan_size;
cf4aebc2
CW
38
39#ifdef CONFIG_SCHED_DEBUG
40extern unsigned int sysctl_sched_migration_cost;
41extern unsigned int sysctl_sched_nr_migrate;
42extern unsigned int sysctl_sched_time_avg;
cf4aebc2
CW
43
44int sched_proc_update_handler(struct ctl_table *table, int write,
45 void __user *buffer, size_t *length,
46 loff_t *ppos);
47#endif
ce0dbbbb
CW
48
49/*
50 * control realtime throttling:
51 *
52 * /proc/sys/kernel/sched_rt_period_us
53 * /proc/sys/kernel/sched_rt_runtime_us
54 */
cf4aebc2
CW
55extern unsigned int sysctl_sched_rt_period;
56extern int sysctl_sched_rt_runtime;
57
58#ifdef CONFIG_CFS_BANDWIDTH
59extern unsigned int sysctl_sched_cfs_bandwidth_slice;
60#endif
61
62#ifdef CONFIG_SCHED_AUTOGROUP
63extern unsigned int sysctl_sched_autogroup_enabled;
64#endif
65
975e155e 66extern int sysctl_sched_rr_timeslice;
ce0dbbbb
CW
67extern int sched_rr_timeslice;
68
69extern int sched_rr_handler(struct ctl_table *table, int write,
70 void __user *buffer, size_t *lenp,
71 loff_t *ppos);
72
73extern int sched_rt_handler(struct ctl_table *table, int write,
cf4aebc2
CW
74 void __user *buffer, size_t *lenp,
75 loff_t *ppos);
76
54a43d54
AK
77extern int sysctl_numa_balancing(struct ctl_table *table, int write,
78 void __user *buffer, size_t *lenp,
79 loff_t *ppos);
80
cb251765
MG
81extern int sysctl_schedstats(struct ctl_table *table, int write,
82 void __user *buffer, size_t *lenp,
83 loff_t *ppos);
84
9ccd27cc 85#endif /* _LINUX_SCHED_SYSCTL_H */