diff options
Diffstat (limited to 'kernel/sysctl.c')
-rw-r--r-- | kernel/sysctl.c | 62 |
1 files changed, 49 insertions, 13 deletions
diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 82350f8f04f6..e3d2c7dd59b9 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c | |||
@@ -97,10 +97,11 @@ static int neg_one = -1; | |||
97 | #endif | 97 | #endif |
98 | 98 | ||
99 | static int zero; | 99 | static int zero; |
100 | static int one = 1; | 100 | static int __maybe_unused one = 1; |
101 | static int two = 2; | 101 | static int __maybe_unused two = 2; |
102 | static unsigned long one_ul = 1; | 102 | static unsigned long one_ul = 1; |
103 | static int one_hundred = 100; | 103 | static int one_hundred = 100; |
104 | static int one_thousand = 1000; | ||
104 | 105 | ||
105 | /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ | 106 | /* this is needed for the proc_dointvec_minmax for [fs_]overflow UID and GID */ |
106 | static int maxolduid = 65535; | 107 | static int maxolduid = 65535; |
@@ -813,6 +814,19 @@ static struct ctl_table kern_table[] = { | |||
813 | .extra1 = &neg_one, | 814 | .extra1 = &neg_one, |
814 | .extra2 = &sixty, | 815 | .extra2 = &sixty, |
815 | }, | 816 | }, |
817 | #endif | ||
818 | #ifdef CONFIG_DETECT_HUNG_TASK | ||
819 | { | ||
820 | .ctl_name = CTL_UNNUMBERED, | ||
821 | .procname = "hung_task_panic", | ||
822 | .data = &sysctl_hung_task_panic, | ||
823 | .maxlen = sizeof(int), | ||
824 | .mode = 0644, | ||
825 | .proc_handler = &proc_dointvec_minmax, | ||
826 | .strategy = &sysctl_intvec, | ||
827 | .extra1 = &zero, | ||
828 | .extra2 = &one, | ||
829 | }, | ||
816 | { | 830 | { |
817 | .ctl_name = CTL_UNNUMBERED, | 831 | .ctl_name = CTL_UNNUMBERED, |
818 | .procname = "hung_task_check_count", | 832 | .procname = "hung_task_check_count", |
@@ -828,7 +842,7 @@ static struct ctl_table kern_table[] = { | |||
828 | .data = &sysctl_hung_task_timeout_secs, | 842 | .data = &sysctl_hung_task_timeout_secs, |
829 | .maxlen = sizeof(unsigned long), | 843 | .maxlen = sizeof(unsigned long), |
830 | .mode = 0644, | 844 | .mode = 0644, |
831 | .proc_handler = &proc_doulongvec_minmax, | 845 | .proc_handler = &proc_dohung_task_timeout_secs, |
832 | .strategy = &sysctl_intvec, | 846 | .strategy = &sysctl_intvec, |
833 | }, | 847 | }, |
834 | { | 848 | { |
@@ -888,16 +902,6 @@ static struct ctl_table kern_table[] = { | |||
888 | .proc_handler = &proc_dointvec, | 902 | .proc_handler = &proc_dointvec, |
889 | }, | 903 | }, |
890 | #endif | 904 | #endif |
891 | #ifdef CONFIG_UNEVICTABLE_LRU | ||
892 | { | ||
893 | .ctl_name = CTL_UNNUMBERED, | ||
894 | .procname = "scan_unevictable_pages", | ||
895 | .data = &scan_unevictable_pages, | ||
896 | .maxlen = sizeof(scan_unevictable_pages), | ||
897 | .mode = 0644, | ||
898 | .proc_handler = &scan_unevictable_handler, | ||
899 | }, | ||
900 | #endif | ||
901 | #ifdef CONFIG_SLOW_WORK | 905 | #ifdef CONFIG_SLOW_WORK |
902 | { | 906 | { |
903 | .ctl_name = CTL_UNNUMBERED, | 907 | .ctl_name = CTL_UNNUMBERED, |
@@ -1027,6 +1031,28 @@ static struct ctl_table vm_table[] = { | |||
1027 | .proc_handler = &proc_dointvec, | 1031 | .proc_handler = &proc_dointvec, |
1028 | }, | 1032 | }, |
1029 | { | 1033 | { |
1034 | .ctl_name = CTL_UNNUMBERED, | ||
1035 | .procname = "nr_pdflush_threads_min", | ||
1036 | .data = &nr_pdflush_threads_min, | ||
1037 | .maxlen = sizeof nr_pdflush_threads_min, | ||
1038 | .mode = 0644 /* read-write */, | ||
1039 | .proc_handler = &proc_dointvec_minmax, | ||
1040 | .strategy = &sysctl_intvec, | ||
1041 | .extra1 = &one, | ||
1042 | .extra2 = &nr_pdflush_threads_max, | ||
1043 | }, | ||
1044 | { | ||
1045 | .ctl_name = CTL_UNNUMBERED, | ||
1046 | .procname = "nr_pdflush_threads_max", | ||
1047 | .data = &nr_pdflush_threads_max, | ||
1048 | .maxlen = sizeof nr_pdflush_threads_max, | ||
1049 | .mode = 0644 /* read-write */, | ||
1050 | .proc_handler = &proc_dointvec_minmax, | ||
1051 | .strategy = &sysctl_intvec, | ||
1052 | .extra1 = &nr_pdflush_threads_min, | ||
1053 | .extra2 = &one_thousand, | ||
1054 | }, | ||
1055 | { | ||
1030 | .ctl_name = VM_SWAPPINESS, | 1056 | .ctl_name = VM_SWAPPINESS, |
1031 | .procname = "swappiness", | 1057 | .procname = "swappiness", |
1032 | .data = &vm_swappiness, | 1058 | .data = &vm_swappiness, |
@@ -1266,6 +1292,16 @@ static struct ctl_table vm_table[] = { | |||
1266 | .extra2 = &one, | 1292 | .extra2 = &one, |
1267 | }, | 1293 | }, |
1268 | #endif | 1294 | #endif |
1295 | #ifdef CONFIG_UNEVICTABLE_LRU | ||
1296 | { | ||
1297 | .ctl_name = CTL_UNNUMBERED, | ||
1298 | .procname = "scan_unevictable_pages", | ||
1299 | .data = &scan_unevictable_pages, | ||
1300 | .maxlen = sizeof(scan_unevictable_pages), | ||
1301 | .mode = 0644, | ||
1302 | .proc_handler = &scan_unevictable_handler, | ||
1303 | }, | ||
1304 | #endif | ||
1269 | /* | 1305 | /* |
1270 | * NOTE: do not add new entries to this table unless you have read | 1306 | * NOTE: do not add new entries to this table unless you have read |
1271 | * Documentation/sysctl/ctl_unnumbered.txt | 1307 | * Documentation/sysctl/ctl_unnumbered.txt |