blob: e8fabd6cda3544d9b6da39811cb5782c9f4ae58f [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001Documentation for /proc/sys/kernel/* kernel version 2.2.10
2 (c) 1998, 1999, Rik van Riel <riel@nl.linux.org>
Shen Feng760df932009-04-02 16:57:20 -07003 (c) 2009, Shen Feng<shen@cn.fujitsu.com>
Linus Torvalds1da177e2005-04-16 15:20:36 -07004
5For general info and legal blurb, please look in README.
6
7==============================================================
8
9This file contains documentation for the sysctl files in
10/proc/sys/kernel/ and is valid for Linux kernel version 2.2.
11
12The files in this directory can be used to tune and monitor
13miscellaneous and general things in the operation of the Linux
14kernel. Since some of the files _can_ be used to screw up your
15system, it is advisable to read both documentation and source
16before actually making adjustments.
17
18Currently, these files might (depending on your configuration)
19show up in /proc/sys/kernel:
Borislav Petkov807094c2011-07-23 10:39:29 -070020
Linus Torvalds1da177e2005-04-16 15:20:36 -070021- acct
Borislav Petkov807094c2011-07-23 10:39:29 -070022- acpi_video_flags
23- auto_msgmni
H. Peter Anvind75757a2009-12-11 14:23:44 -080024- bootloader_type [ X86 only ]
25- bootloader_version [ X86 only ]
Hans-Joachim Pichtc1147282009-09-11 10:28:47 +020026- callhome [ S390 only ]
Dan Ballard73efc032011-10-31 17:11:20 -070027- cap_last_cap
Linus Torvalds1da177e2005-04-16 15:20:36 -070028- core_pattern
Neil Hormana2939802009-09-23 15:56:56 -070029- core_pipe_limit
Linus Torvalds1da177e2005-04-16 15:20:36 -070030- core_uses_pid
31- ctrl-alt-del
Dan Rosenbergeaf06b22010-11-11 14:05:18 -080032- dmesg_restrict
Linus Torvalds1da177e2005-04-16 15:20:36 -070033- domainname
34- hostname
35- hotplug
Dan Rosenberg455cd5a2011-01-12 16:59:41 -080036- kptr_restrict
Chuck Ebbert0741f4d2006-12-07 02:14:11 +010037- kstack_depth_to_print [ X86 only ]
Linus Torvalds1da177e2005-04-16 15:20:36 -070038- l2cr [ PPC only ]
Michael Opdenackerac76cff2008-02-13 15:03:32 -080039- modprobe ==> Documentation/debugging-modules.txt
Kees Cook3d433212009-04-02 15:49:29 -070040- modules_disabled
Stanislav Kinsbursky03f59562013-01-04 15:34:50 -080041- msg_next_id [ sysv ipc ]
Linus Torvalds1da177e2005-04-16 15:20:36 -070042- msgmax
43- msgmnb
44- msgmni
Shen Feng760df932009-04-02 16:57:20 -070045- nmi_watchdog
Linus Torvalds1da177e2005-04-16 15:20:36 -070046- osrelease
47- ostype
48- overflowgid
49- overflowuid
50- panic
Borislav Petkov807094c2011-07-23 10:39:29 -070051- panic_on_oops
52- panic_on_unrecovered_nmi
Mitsuo Hayasaka55af7792011-11-29 15:08:36 +090053- panic_on_stackoverflow
Linus Torvalds1da177e2005-04-16 15:20:36 -070054- pid_max
55- powersave-nap [ PPC only ]
56- printk
Borislav Petkov807094c2011-07-23 10:39:29 -070057- printk_delay
58- printk_ratelimit
59- printk_ratelimit_burst
Jiri Kosina1ec7fd52008-02-09 23:24:08 +010060- randomize_va_space
Linus Torvalds1da177e2005-04-16 15:20:36 -070061- real-root-dev ==> Documentation/initrd.txt
62- reboot-cmd [ SPARC only ]
63- rtsig-max
64- rtsig-nr
65- sem
Stanislav Kinsbursky03f59562013-01-04 15:34:50 -080066- sem_next_id [ sysv ipc ]
Linus Torvalds1da177e2005-04-16 15:20:36 -070067- sg-big-buff [ generic SCSI device (sg) ]
Stanislav Kinsbursky03f59562013-01-04 15:34:50 -080068- shm_next_id [ sysv ipc ]
Vasiliy Kulikovb34a6b12011-07-26 16:08:48 -070069- shm_rmid_forced
Linus Torvalds1da177e2005-04-16 15:20:36 -070070- shmall
71- shmmax [ sysv ipc ]
72- shmmni
Borislav Petkov807094c2011-07-23 10:39:29 -070073- softlockup_thresh
Linus Torvalds1da177e2005-04-16 15:20:36 -070074- stop-a [ SPARC only ]
75- sysrq ==> Documentation/sysrq.txt
76- tainted
77- threads-max
Shen Feng760df932009-04-02 16:57:20 -070078- unknown_nmi_panic
Li Zefan08825c92013-05-17 10:31:20 +080079- watchdog_thresh
Linus Torvalds1da177e2005-04-16 15:20:36 -070080- version
81
82==============================================================
83
84acct:
85
86highwater lowwater frequency
87
88If BSD-style process accounting is enabled these values control
89its behaviour. If free space on filesystem where the log lives
90goes below <lowwater>% accounting suspends. If free space gets
91above <highwater>% accounting resumes. <Frequency> determines
92how often do we check the amount of free space (value is in
93seconds). Default:
944 2 30
95That is, suspend accounting if there left <= 2% free; resume it
96if we got >=4%; consider information about amount of free space
97valid for 30 seconds.
98
99==============================================================
100
Borislav Petkov807094c2011-07-23 10:39:29 -0700101acpi_video_flags:
102
103flags
104
105See Doc*/kernel/power/video.txt, it allows mode of video boot to be
106set during run time.
107
108==============================================================
109
110auto_msgmni:
111
112Enables/Disables automatic recomputing of msgmni upon memory add/remove
113or upon ipc namespace creation/removal (see the msgmni description
114above). Echoing "1" into this file enables msgmni automatic recomputing.
115Echoing "0" turns it off. auto_msgmni default value is 1.
116
117
118==============================================================
119
H. Peter Anvind75757a2009-12-11 14:23:44 -0800120bootloader_type:
121
122x86 bootloader identification
123
124This gives the bootloader type number as indicated by the bootloader,
125shifted left by 4, and OR'd with the low four bits of the bootloader
126version. The reason for this encoding is that this used to match the
127type_of_loader field in the kernel header; the encoding is kept for
128backwards compatibility. That is, if the full bootloader type number
129is 0x15 and the full version number is 0x234, this file will contain
130the value 340 = 0x154.
131
132See the type_of_loader and ext_loader_type fields in
133Documentation/x86/boot.txt for additional information.
134
135==============================================================
136
137bootloader_version:
138
139x86 bootloader version
140
141The complete bootloader version number. In the example above, this
142file will contain the value 564 = 0x234.
143
144See the type_of_loader and ext_loader_ver fields in
145Documentation/x86/boot.txt for additional information.
146
147==============================================================
148
Hans-Joachim Pichtc1147282009-09-11 10:28:47 +0200149callhome:
150
151Controls the kernel's callhome behavior in case of a kernel panic.
152
153The s390 hardware allows an operating system to send a notification
154to a service organization (callhome) in case of an operating system panic.
155
156When the value in this file is 0 (which is the default behavior)
157nothing happens in case of a kernel panic. If this value is set to "1"
158the complete kernel oops message is send to the IBM customer service
159organization in case the mainframe the Linux operating system is running
160on has a service contract with IBM.
161
162==============================================================
163
Dan Ballard73efc032011-10-31 17:11:20 -0700164cap_last_cap
165
166Highest valid capability of the running kernel. Exports
167CAP_LAST_CAP from the kernel.
168
169==============================================================
170
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171core_pattern:
172
173core_pattern is used to specify a core dumpfile pattern name.
Matthias Urlichscd081042006-10-11 01:21:57 -0700174. max length 128 characters; default value is "core"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175. core_pattern is used as a pattern template for the output filename;
176 certain string patterns (beginning with '%') are substituted with
177 their actual values.
178. backward compatibility with core_uses_pid:
179 If core_pattern does not include "%p" (default does not)
180 and core_uses_pid is set, then .PID will be appended to
181 the filename.
182. corename format specifiers:
183 %<NUL> '%' is dropped
184 %% output one '%'
185 %p pid
186 %u uid
187 %g gid
Oleg Nesterov12a2b4b2012-10-04 17:15:25 -0700188 %d dump mode, matches PR_SET_DUMPABLE and
189 /proc/sys/fs/suid_dumpable
Linus Torvalds1da177e2005-04-16 15:20:36 -0700190 %s signal number
191 %t UNIX time of dump
192 %h hostname
Jiri Slaby57cc0832011-05-26 16:25:46 -0700193 %e executable filename (may be shortened)
194 %E executable path
Linus Torvalds1da177e2005-04-16 15:20:36 -0700195 %<OTHER> both are dropped
Matthias Urlichscd081042006-10-11 01:21:57 -0700196. If the first character of the pattern is a '|', the kernel will treat
197 the rest of the pattern as a command to run. The core dump will be
198 written to the standard input of that program instead of to a file.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199
200==============================================================
201
Neil Hormana2939802009-09-23 15:56:56 -0700202core_pipe_limit:
203
Borislav Petkov807094c2011-07-23 10:39:29 -0700204This sysctl is only applicable when core_pattern is configured to pipe
205core files to a user space helper (when the first character of
206core_pattern is a '|', see above). When collecting cores via a pipe
207to an application, it is occasionally useful for the collecting
208application to gather data about the crashing process from its
209/proc/pid directory. In order to do this safely, the kernel must wait
210for the collecting process to exit, so as not to remove the crashing
211processes proc files prematurely. This in turn creates the
212possibility that a misbehaving userspace collecting process can block
213the reaping of a crashed process simply by never exiting. This sysctl
214defends against that. It defines how many concurrent crashing
215processes may be piped to user space applications in parallel. If
216this value is exceeded, then those crashing processes above that value
217are noted via the kernel log and their cores are skipped. 0 is a
218special value, indicating that unlimited processes may be captured in
219parallel, but that no waiting will take place (i.e. the collecting
220process is not guaranteed access to /proc/<crashing pid>/). This
221value defaults to 0.
Neil Hormana2939802009-09-23 15:56:56 -0700222
223==============================================================
224
Linus Torvalds1da177e2005-04-16 15:20:36 -0700225core_uses_pid:
226
227The default coredump filename is "core". By setting
228core_uses_pid to 1, the coredump filename becomes core.PID.
229If core_pattern does not include "%p" (default does not)
230and core_uses_pid is set, then .PID will be appended to
231the filename.
232
233==============================================================
234
235ctrl-alt-del:
236
237When the value in this file is 0, ctrl-alt-del is trapped and
238sent to the init(1) program to handle a graceful restart.
239When, however, the value is > 0, Linux's reaction to a Vulcan
240Nerve Pinch (tm) will be an immediate reboot, without even
241syncing its dirty buffers.
242
243Note: when a program (like dosemu) has the keyboard in 'raw'
244mode, the ctrl-alt-del is intercepted by the program before it
245ever reaches the kernel tty layer, and it's up to the program
246to decide what to do with it.
247
248==============================================================
249
Dan Rosenbergeaf06b22010-11-11 14:05:18 -0800250dmesg_restrict:
251
Borislav Petkov807094c2011-07-23 10:39:29 -0700252This toggle indicates whether unprivileged users are prevented
253from using dmesg(8) to view messages from the kernel's log buffer.
254When dmesg_restrict is set to (0) there are no restrictions. When
Serge E. Hallyn38ef4c22010-12-08 15:19:01 +0000255dmesg_restrict is set set to (1), users must have CAP_SYSLOG to use
Dan Rosenbergeaf06b22010-11-11 14:05:18 -0800256dmesg(8).
257
Borislav Petkov807094c2011-07-23 10:39:29 -0700258The kernel config option CONFIG_SECURITY_DMESG_RESTRICT sets the
259default value of dmesg_restrict.
Dan Rosenbergeaf06b22010-11-11 14:05:18 -0800260
261==============================================================
262
Linus Torvalds1da177e2005-04-16 15:20:36 -0700263domainname & hostname:
264
265These files can be used to set the NIS/YP domainname and the
266hostname of your box in exactly the same way as the commands
267domainname and hostname, i.e.:
268# echo "darkstar" > /proc/sys/kernel/hostname
269# echo "mydomain" > /proc/sys/kernel/domainname
270has the same effect as
271# hostname "darkstar"
272# domainname "mydomain"
273
274Note, however, that the classic darkstar.frop.org has the
275hostname "darkstar" and DNS (Internet Domain Name Server)
276domainname "frop.org", not to be confused with the NIS (Network
277Information Service) or YP (Yellow Pages) domainname. These two
278domain names are in general different. For a detailed discussion
279see the hostname(1) man page.
280
281==============================================================
282
283hotplug:
284
285Path for the hotplug policy agent.
286Default value is "/sbin/hotplug".
287
288==============================================================
289
Dan Rosenberg455cd5a2011-01-12 16:59:41 -0800290kptr_restrict:
291
292This toggle indicates whether restrictions are placed on
293exposing kernel addresses via /proc and other interfaces. When
294kptr_restrict is set to (0), there are no restrictions. When
295kptr_restrict is set to (1), the default, kernel pointers
296printed using the %pK format specifier will be replaced with 0's
297unless the user has CAP_SYSLOG. When kptr_restrict is set to
298(2), kernel pointers printed using %pK will be replaced with 0's
299regardless of privileges.
300
301==============================================================
302
Chuck Ebbert0741f4d2006-12-07 02:14:11 +0100303kstack_depth_to_print: (X86 only)
304
305Controls the number of words to print when dumping the raw
306kernel stack.
307
308==============================================================
309
Borislav Petkov807094c2011-07-23 10:39:29 -0700310l2cr: (PPC only)
311
312This flag controls the L2 cache of G3 processor boards. If
3130, the cache is disabled. Enabled if nonzero.
314
315==============================================================
316
Kees Cook3d433212009-04-02 15:49:29 -0700317modules_disabled:
318
319A toggle value indicating if modules are allowed to be loaded
320in an otherwise modular kernel. This toggle defaults to off
321(0), but can be set true (1). Once true, modules can be
322neither loaded nor unloaded, and the toggle cannot be set back
323to false.
324
325==============================================================
326
Stanislav Kinsbursky03f59562013-01-04 15:34:50 -0800327msg_next_id, sem_next_id, and shm_next_id:
328
329These three toggles allows to specify desired id for next allocated IPC
330object: message, semaphore or shared memory respectively.
331
332By default they are equal to -1, which means generic allocation logic.
333Possible values to set are in range {0..INT_MAX}.
334
335Notes:
3361) kernel doesn't guarantee, that new object will have desired id. So,
337it's up to userspace, how to handle an object with "wrong" id.
3382) Toggle with non-default value will be set back to -1 by kernel after
339successful IPC object allocation.
340
341==============================================================
342
Borislav Petkov807094c2011-07-23 10:39:29 -0700343nmi_watchdog:
344
345Enables/Disables the NMI watchdog on x86 systems. When the value is
346non-zero the NMI watchdog is enabled and will continuously test all
347online cpus to determine whether or not they are still functioning
348properly. Currently, passing "nmi_watchdog=" parameter at boot time is
349required for this function to work.
350
351If LAPIC NMI watchdog method is in use (nmi_watchdog=2 kernel
352parameter), the NMI watchdog shares registers with oprofile. By
353disabling the NMI watchdog, oprofile may have more registers to
354utilize.
355
356==============================================================
357
Linus Torvalds1da177e2005-04-16 15:20:36 -0700358osrelease, ostype & version:
359
360# cat osrelease
3612.1.88
362# cat ostype
363Linux
364# cat version
365#5 Wed Feb 25 21:49:24 MET 1998
366
367The files osrelease and ostype should be clear enough. Version
368needs a little more clarification however. The '#5' means that
369this is the fifth kernel built from this source base and the
370date behind it indicates the time the kernel was built.
371The only way to tune these values is to rebuild the kernel :-)
372
373==============================================================
374
375overflowgid & overflowuid:
376
Borislav Petkov807094c2011-07-23 10:39:29 -0700377if your architecture did not always support 32-bit UIDs (i.e. arm,
378i386, m68k, sh, and sparc32), a fixed UID and GID will be returned to
379applications that use the old 16-bit UID/GID system calls, if the
380actual UID or GID would exceed 65535.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700381
382These sysctls allow you to change the value of the fixed UID and GID.
383The default is 65534.
384
385==============================================================
386
387panic:
388
Borislav Petkov807094c2011-07-23 10:39:29 -0700389The value in this file represents the number of seconds the kernel
390waits before rebooting on a panic. When you use the software watchdog,
391the recommended setting is 60.
392
393==============================================================
394
395panic_on_unrecovered_nmi:
396
397The default Linux behaviour on an NMI of either memory or unknown is
398to continue operation. For many environments such as scientific
399computing it is preferable that the box is taken out and the error
400dealt with than an uncorrected parity/ECC error get propagated.
401
402A small number of systems do generate NMI's for bizarre random reasons
403such as power management so the default is off. That sysctl works like
404the existing panic controls already in that directory.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700405
406==============================================================
407
408panic_on_oops:
409
410Controls the kernel's behaviour when an oops or BUG is encountered.
411
4120: try to continue operation
413
Matt LaPlantea982ac02007-05-09 07:35:06 +02004141: panic immediately. If the `panic' sysctl is also non-zero then the
Maxime Bizon8b23d04d2006-08-05 12:14:32 -0700415 machine will be rebooted.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700416
417==============================================================
418
Mitsuo Hayasaka55af7792011-11-29 15:08:36 +0900419panic_on_stackoverflow:
420
421Controls the kernel's behavior when detecting the overflows of
422kernel, IRQ and exception stacks except a user stack.
423This file shows up if CONFIG_DEBUG_STACKOVERFLOW is enabled.
424
4250: try to continue operation.
426
4271: panic immediately.
428
429==============================================================
430
431
Linus Torvalds1da177e2005-04-16 15:20:36 -0700432pid_max:
433
Robert P. J. Daybeb7dd82007-05-09 07:14:03 +0200434PID allocation wrap value. When the kernel's next PID value
Linus Torvalds1da177e2005-04-16 15:20:36 -0700435reaches this value, it wraps back to a minimum PID value.
436PIDs of value pid_max or larger are not allocated.
437
438==============================================================
439
Pavel Emelyanovb8f566b2012-01-12 17:20:27 -0800440ns_last_pid:
441
442The last pid allocated in the current (the one task using this sysctl
443lives in) pid namespace. When selecting a pid for a next task on fork
444kernel tries to allocate a number starting from this one.
445
446==============================================================
447
Linus Torvalds1da177e2005-04-16 15:20:36 -0700448powersave-nap: (PPC only)
449
450If set, Linux-PPC will use the 'nap' mode of powersaving,
451otherwise the 'doze' mode will be used.
452
453==============================================================
454
455printk:
456
457The four values in printk denote: console_loglevel,
458default_message_loglevel, minimum_console_loglevel and
459default_console_loglevel respectively.
460
461These values influence printk() behavior when printing or
462logging error messages. See 'man 2 syslog' for more info on
463the different loglevels.
464
465- console_loglevel: messages with a higher priority than
466 this will be printed to the console
Paul Bolle87889e12011-02-06 21:00:41 +0100467- default_message_loglevel: messages without an explicit priority
Linus Torvalds1da177e2005-04-16 15:20:36 -0700468 will be printed with this priority
469- minimum_console_loglevel: minimum (highest) value to which
470 console_loglevel can be set
471- default_console_loglevel: default value for console_loglevel
472
473==============================================================
474
Borislav Petkov807094c2011-07-23 10:39:29 -0700475printk_delay:
476
477Delay each printk message in printk_delay milliseconds
478
479Value from 0 - 10000 is allowed.
480
481==============================================================
482
Linus Torvalds1da177e2005-04-16 15:20:36 -0700483printk_ratelimit:
484
485Some warning messages are rate limited. printk_ratelimit specifies
486the minimum length of time between these messages (in jiffies), by
487default we allow one every 5 seconds.
488
489A value of 0 will disable rate limiting.
490
491==============================================================
492
493printk_ratelimit_burst:
494
495While long term we enforce one message per printk_ratelimit
496seconds, we do allow a burst of messages to pass through.
497printk_ratelimit_burst specifies the number of messages we can
498send before ratelimiting kicks in.
499
500==============================================================
501
Borislav Petkov807094c2011-07-23 10:39:29 -0700502randomize_va_space:
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100503
504This option can be used to select the type of process address
505space randomization that is used in the system, for architectures
506that support this feature.
507
Horst Schirmeierb7f5ab62009-07-03 14:20:17 +02005080 - Turn the process address space randomization off. This is the
509 default for architectures that do not support this feature anyways,
510 and kernels that are booted with the "norandmaps" parameter.
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100511
5121 - Make the addresses of mmap base, stack and VDSO page randomized.
513 This, among other things, implies that shared libraries will be
Horst Schirmeierb7f5ab62009-07-03 14:20:17 +0200514 loaded to random addresses. Also for PIE-linked binaries, the
515 location of code start is randomized. This is the default if the
516 CONFIG_COMPAT_BRK option is enabled.
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100517
Horst Schirmeierb7f5ab62009-07-03 14:20:17 +02005182 - Additionally enable heap randomization. This is the default if
519 CONFIG_COMPAT_BRK is disabled.
520
521 There are a few legacy applications out there (such as some ancient
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100522 versions of libc.so.5 from 1996) that assume that brk area starts
Horst Schirmeierb7f5ab62009-07-03 14:20:17 +0200523 just after the end of the code+bss. These applications break when
524 start of the brk area is randomized. There are however no known
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100525 non-legacy applications that would be broken this way, so for most
Horst Schirmeierb7f5ab62009-07-03 14:20:17 +0200526 systems it is safe to choose full randomization.
527
528 Systems with ancient and/or broken binaries should be configured
529 with CONFIG_COMPAT_BRK enabled, which excludes the heap from process
530 address space randomization.
Jiri Kosina1ec7fd52008-02-09 23:24:08 +0100531
532==============================================================
533
Linus Torvalds1da177e2005-04-16 15:20:36 -0700534reboot-cmd: (Sparc only)
535
536??? This seems to be a way to give an argument to the Sparc
537ROM/Flash boot loader. Maybe to tell it what to do after
538rebooting. ???
539
540==============================================================
541
542rtsig-max & rtsig-nr:
543
544The file rtsig-max can be used to tune the maximum number
545of POSIX realtime (queued) signals that can be outstanding
546in the system.
547
548rtsig-nr shows the number of RT signals currently queued.
549
550==============================================================
551
552sg-big-buff:
553
554This file shows the size of the generic SCSI (sg) buffer.
555You can't tune it just yet, but you could change it on
556compile time by editing include/scsi/sg.h and changing
557the value of SG_BIG_BUFF.
558
559There shouldn't be any reason to change this value. If
560you can come up with one, you probably know what you
561are doing anyway :)
562
563==============================================================
564
Carlos Alberto Lopez Perez358e4192013-01-04 15:35:05 -0800565shmall:
566
567This parameter sets the total amount of shared memory pages that
568can be used system wide. Hence, SHMALL should always be at least
569ceil(shmmax/PAGE_SIZE).
570
571If you are not sure what the default PAGE_SIZE is on your Linux
572system, you can run the following command:
573
574# getconf PAGE_SIZE
575
576==============================================================
577
Borislav Petkov807094c2011-07-23 10:39:29 -0700578shmmax:
Linus Torvalds1da177e2005-04-16 15:20:36 -0700579
580This value can be used to query and set the run time limit
581on the maximum shared memory segment size that can be created.
Borislav Petkov807094c2011-07-23 10:39:29 -0700582Shared memory segments up to 1Gb are now supported in the
Linus Torvalds1da177e2005-04-16 15:20:36 -0700583kernel. This value defaults to SHMMAX.
584
585==============================================================
586
Vasiliy Kulikovb34a6b12011-07-26 16:08:48 -0700587shm_rmid_forced:
588
589Linux lets you set resource limits, including how much memory one
590process can consume, via setrlimit(2). Unfortunately, shared memory
591segments are allowed to exist without association with any process, and
592thus might not be counted against any resource limits. If enabled,
593shared memory segments are automatically destroyed when their attach
594count becomes zero after a detach or a process termination. It will
595also destroy segments that were created, but never attached to, on exit
596from the process. The only use left for IPC_RMID is to immediately
597destroy an unattached segment. Of course, this breaks the way things are
598defined, so some applications might stop working. Note that this
599feature will do you no good unless you also configure your resource
600limits (in particular, RLIMIT_AS and RLIMIT_NPROC). Most systems don't
601need this.
602
603Note that if you change this from 0 to 1, already created segments
604without users and with a dead originative process will be destroyed.
605
606==============================================================
607
Ravikiran G Thirumalaic4f3b632007-10-16 23:26:09 -0700608softlockup_thresh:
609
Andrew Mortonb4d19cc2008-09-22 13:57:51 -0700610This value can be used to lower the softlockup tolerance threshold. The
611default threshold is 60 seconds. If a cpu is locked up for 60 seconds,
612the kernel complains. Valid values are 1-60 seconds. Setting this
613tunable to zero will disable the softlockup detection altogether.
Ravikiran G Thirumalaic4f3b632007-10-16 23:26:09 -0700614
615==============================================================
616
Borislav Petkov807094c2011-07-23 10:39:29 -0700617tainted:
Linus Torvalds1da177e2005-04-16 15:20:36 -0700618
619Non-zero if the kernel has been tainted. Numeric values, which
620can be ORed together:
621
Greg Kroah-Hartmanbb206982008-10-17 15:01:07 -0700622 1 - A module with a non-GPL license has been loaded, this
623 includes modules with no license.
624 Set by modutils >= 2.4.9 and module-init-tools.
625 2 - A module was force loaded by insmod -f.
626 Set by modutils >= 2.4.9 and module-init-tools.
627 4 - Unsafe SMP processors: SMP with CPUs not designed for SMP.
628 8 - A module was forcibly unloaded from the system by rmmod -f.
629 16 - A hardware machine check error occurred on the system.
630 32 - A bad page was discovered on the system.
631 64 - The user has asked that the system be marked "tainted". This
632 could be because they are running software that directly modifies
633 the hardware, or for other reasons.
634 128 - The system has died.
635 256 - The ACPI DSDT has been overridden with one supplied by the user
636 instead of using the one provided by the hardware.
637 512 - A kernel warning has occurred.
6381024 - A module from drivers/staging was loaded.
Larry Fingerf5fe1842012-02-06 09:49:50 -08006392048 - The system is working around a severe firmware bug.
6404096 - An out-of-tree module has been loaded.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700641
Shen Feng760df932009-04-02 16:57:20 -0700642==============================================================
643
Shen Feng760df932009-04-02 16:57:20 -0700644unknown_nmi_panic:
645
Borislav Petkov807094c2011-07-23 10:39:29 -0700646The value in this file affects behavior of handling NMI. When the
647value is non-zero, unknown NMI is trapped and then panic occurs. At
648that time, kernel debugging information is displayed on console.
Shen Feng760df932009-04-02 16:57:20 -0700649
Borislav Petkov807094c2011-07-23 10:39:29 -0700650NMI switch that most IA32 servers have fires unknown NMI up, for
651example. If a system hangs up, try pressing the NMI switch.
Li Zefan08825c92013-05-17 10:31:20 +0800652
653==============================================================
654
655watchdog_thresh:
656
657This value can be used to control the frequency of hrtimer and NMI
658events and the soft and hard lockup thresholds. The default threshold
659is 10 seconds.
660
661The softlockup threshold is (2 * watchdog_thresh). Setting this
662tunable to zero will disable lockup detection altogether.
663
664==============================================================