forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
sched: Move sched.h sysctl bits into separate header
Move the sysctl-related bits from include/linux/sched.h into a new file: include/linux/sched/sysctl.h. Then update source files requiring access to those bits by including the new header file. Signed-off-by: Clark Williams <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Steven Rostedt <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
- Loading branch information
Showing
11 changed files
with
106 additions
and
91 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
#ifndef _SCHED_SYSCTL_H | ||
#define _SCHED_SYSCTL_H | ||
|
||
#ifdef CONFIG_DETECT_HUNG_TASK | ||
extern unsigned int sysctl_hung_task_panic; | ||
extern unsigned long sysctl_hung_task_check_count; | ||
extern unsigned long sysctl_hung_task_timeout_secs; | ||
extern unsigned long sysctl_hung_task_warnings; | ||
extern int proc_dohung_task_timeout_secs(struct ctl_table *table, int write, | ||
void __user *buffer, | ||
size_t *lenp, loff_t *ppos); | ||
#else | ||
/* Avoid need for ifdefs elsewhere in the code */ | ||
enum { sysctl_hung_task_timeout_secs = 0 }; | ||
#endif | ||
|
||
/* | ||
* Default maximum number of active map areas, this limits the number of vmas | ||
* per mm struct. Users can overwrite this number by sysctl but there is a | ||
* problem. | ||
* | ||
* When a program's coredump is generated as ELF format, a section is created | ||
* per a vma. In ELF, the number of sections is represented in unsigned short. | ||
* This means the number of sections should be smaller than 65535 at coredump. | ||
* Because the kernel adds some informative sections to a image of program at | ||
* generating coredump, we need some margin. The number of extra sections is | ||
* 1-3 now and depends on arch. We use "5" as safe margin, here. | ||
*/ | ||
#define MAPCOUNT_ELF_CORE_MARGIN (5) | ||
#define DEFAULT_MAX_MAP_COUNT (USHRT_MAX - MAPCOUNT_ELF_CORE_MARGIN) | ||
|
||
extern int sysctl_max_map_count; | ||
|
||
extern unsigned int sysctl_sched_latency; | ||
extern unsigned int sysctl_sched_min_granularity; | ||
extern unsigned int sysctl_sched_wakeup_granularity; | ||
extern unsigned int sysctl_sched_child_runs_first; | ||
|
||
enum sched_tunable_scaling { | ||
SCHED_TUNABLESCALING_NONE, | ||
SCHED_TUNABLESCALING_LOG, | ||
SCHED_TUNABLESCALING_LINEAR, | ||
SCHED_TUNABLESCALING_END, | ||
}; | ||
extern enum sched_tunable_scaling sysctl_sched_tunable_scaling; | ||
|
||
extern unsigned int sysctl_numa_balancing_scan_delay; | ||
extern unsigned int sysctl_numa_balancing_scan_period_min; | ||
extern unsigned int sysctl_numa_balancing_scan_period_max; | ||
extern unsigned int sysctl_numa_balancing_scan_period_reset; | ||
extern unsigned int sysctl_numa_balancing_scan_size; | ||
extern unsigned int sysctl_numa_balancing_settle_count; | ||
|
||
#ifdef CONFIG_SCHED_DEBUG | ||
extern unsigned int sysctl_sched_migration_cost; | ||
extern unsigned int sysctl_sched_nr_migrate; | ||
extern unsigned int sysctl_sched_time_avg; | ||
extern unsigned int sysctl_timer_migration; | ||
extern unsigned int sysctl_sched_shares_window; | ||
|
||
int sched_proc_update_handler(struct ctl_table *table, int write, | ||
void __user *buffer, size_t *length, | ||
loff_t *ppos); | ||
#endif | ||
#ifdef CONFIG_SCHED_DEBUG | ||
static inline unsigned int get_sysctl_timer_migration(void) | ||
{ | ||
return sysctl_timer_migration; | ||
} | ||
#else | ||
static inline unsigned int get_sysctl_timer_migration(void) | ||
{ | ||
return 1; | ||
} | ||
#endif | ||
extern unsigned int sysctl_sched_rt_period; | ||
extern int sysctl_sched_rt_runtime; | ||
|
||
#ifdef CONFIG_CFS_BANDWIDTH | ||
extern unsigned int sysctl_sched_cfs_bandwidth_slice; | ||
#endif | ||
|
||
#ifdef CONFIG_SCHED_AUTOGROUP | ||
extern unsigned int sysctl_sched_autogroup_enabled; | ||
#endif | ||
|
||
/* | ||
* default timeslice is 100 msecs (used only for SCHED_RR tasks). | ||
* Timeslices get refilled after they expire. | ||
*/ | ||
#define RR_TIMESLICE (100 * HZ / 1000) | ||
|
||
int sched_rt_handler(struct ctl_table *table, int write, | ||
void __user *buffer, size_t *lenp, | ||
loff_t *ppos); | ||
|
||
#endif /* _SCHED_SYSCTL_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters