About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / sysctl / kernel.txt




Custom Search

Based on kernel version 3.16. Page generated on 2014-08-06 21:41 EST.

1	Documentation for /proc/sys/kernel/*	kernel version 2.2.10
2		(c) 1998, 1999,  Rik van Riel <riel@nl.linux.org>
3		(c) 2009,        Shen Feng<shen@cn.fujitsu.com>
4	
5	For general info and legal blurb, please look in README.
6	
7	==============================================================
8	
9	This file contains documentation for the sysctl files in
10	/proc/sys/kernel/ and is valid for Linux kernel version 2.2.
11	
12	The files in this directory can be used to tune and monitor
13	miscellaneous and general things in the operation of the Linux
14	kernel. Since some of the files _can_ be used to screw up your
15	system, it is advisable to read both documentation and source
16	before actually making adjustments.
17	
18	Currently, these files might (depending on your configuration)
19	show up in /proc/sys/kernel:
20	
21	- acct
22	- acpi_video_flags
23	- auto_msgmni
24	- bootloader_type	     [ X86 only ]
25	- bootloader_version	     [ X86 only ]
26	- callhome		     [ S390 only ]
27	- cap_last_cap
28	- core_pattern
29	- core_pipe_limit
30	- core_uses_pid
31	- ctrl-alt-del
32	- dmesg_restrict
33	- domainname
34	- hostname
35	- hotplug
36	- hung_task_panic
37	- hung_task_check_count
38	- hung_task_timeout_secs
39	- hung_task_warnings
40	- kexec_load_disabled
41	- kptr_restrict
42	- kstack_depth_to_print       [ X86 only ]
43	- l2cr                        [ PPC only ]
44	- modprobe                    ==> Documentation/debugging-modules.txt
45	- modules_disabled
46	- msg_next_id		      [ sysv ipc ]
47	- msgmax
48	- msgmnb
49	- msgmni
50	- nmi_watchdog
51	- osrelease
52	- ostype
53	- overflowgid
54	- overflowuid
55	- panic
56	- panic_on_oops
57	- panic_on_unrecovered_nmi
58	- panic_on_stackoverflow
59	- pid_max
60	- powersave-nap               [ PPC only ]
61	- printk
62	- printk_delay
63	- printk_ratelimit
64	- printk_ratelimit_burst
65	- randomize_va_space
66	- real-root-dev               ==> Documentation/initrd.txt
67	- reboot-cmd                  [ SPARC only ]
68	- rtsig-max
69	- rtsig-nr
70	- sem
71	- sem_next_id		      [ sysv ipc ]
72	- sg-big-buff                 [ generic SCSI device (sg) ]
73	- shm_next_id		      [ sysv ipc ]
74	- shm_rmid_forced
75	- shmall
76	- shmmax                      [ sysv ipc ]
77	- shmmni
78	- softlockup_all_cpu_backtrace
79	- stop-a                      [ SPARC only ]
80	- sysrq                       ==> Documentation/sysrq.txt
81	- sysctl_writes_strict
82	- tainted
83	- threads-max
84	- unknown_nmi_panic
85	- watchdog_thresh
86	- version
87	
88	==============================================================
89	
90	acct:
91	
92	highwater lowwater frequency
93	
94	If BSD-style process accounting is enabled these values control
95	its behaviour. If free space on filesystem where the log lives
96	goes below <lowwater>% accounting suspends. If free space gets
97	above <highwater>% accounting resumes. <Frequency> determines
98	how often do we check the amount of free space (value is in
99	seconds). Default:
100	4 2 30
101	That is, suspend accounting if there left <= 2% free; resume it
102	if we got >=4%; consider information about amount of free space
103	valid for 30 seconds.
104	
105	==============================================================
106	
107	acpi_video_flags:
108	
109	flags
110	
111	See Doc*/kernel/power/video.txt, it allows mode of video boot to be
112	set during run time.
113	
114	==============================================================
115	
116	auto_msgmni:
117	
118	Enables/Disables automatic recomputing of msgmni upon memory add/remove
119	or upon ipc namespace creation/removal (see the msgmni description
120	above). Echoing "1" into this file enables msgmni automatic recomputing.
121	Echoing "0" turns it off. auto_msgmni default value is 1.
122	
123	
124	==============================================================
125	
126	bootloader_type:
127	
128	x86 bootloader identification
129	
130	This gives the bootloader type number as indicated by the bootloader,
131	shifted left by 4, and OR'd with the low four bits of the bootloader
132	version.  The reason for this encoding is that this used to match the
133	type_of_loader field in the kernel header; the encoding is kept for
134	backwards compatibility.  That is, if the full bootloader type number
135	is 0x15 and the full version number is 0x234, this file will contain
136	the value 340 = 0x154.
137	
138	See the type_of_loader and ext_loader_type fields in
139	Documentation/x86/boot.txt for additional information.
140	
141	==============================================================
142	
143	bootloader_version:
144	
145	x86 bootloader version
146	
147	The complete bootloader version number.  In the example above, this
148	file will contain the value 564 = 0x234.
149	
150	See the type_of_loader and ext_loader_ver fields in
151	Documentation/x86/boot.txt for additional information.
152	
153	==============================================================
154	
155	callhome:
156	
157	Controls the kernel's callhome behavior in case of a kernel panic.
158	
159	The s390 hardware allows an operating system to send a notification
160	to a service organization (callhome) in case of an operating system panic.
161	
162	When the value in this file is 0 (which is the default behavior)
163	nothing happens in case of a kernel panic. If this value is set to "1"
164	the complete kernel oops message is send to the IBM customer service
165	organization in case the mainframe the Linux operating system is running
166	on has a service contract with IBM.
167	
168	==============================================================
169	
170	cap_last_cap
171	
172	Highest valid capability of the running kernel.  Exports
173	CAP_LAST_CAP from the kernel.
174	
175	==============================================================
176	
177	core_pattern:
178	
179	core_pattern is used to specify a core dumpfile pattern name.
180	. max length 128 characters; default value is "core"
181	. core_pattern is used as a pattern template for the output filename;
182	  certain string patterns (beginning with '%') are substituted with
183	  their actual values.
184	. backward compatibility with core_uses_pid:
185		If core_pattern does not include "%p" (default does not)
186		and core_uses_pid is set, then .PID will be appended to
187		the filename.
188	. corename format specifiers:
189		%<NUL>	'%' is dropped
190		%%	output one '%'
191		%p	pid
192		%P	global pid (init PID namespace)
193		%u	uid
194		%g	gid
195		%d	dump mode, matches PR_SET_DUMPABLE and
196			/proc/sys/fs/suid_dumpable
197		%s	signal number
198		%t	UNIX time of dump
199		%h	hostname
200		%e	executable filename (may be shortened)
201		%E	executable path
202		%<OTHER> both are dropped
203	. If the first character of the pattern is a '|', the kernel will treat
204	  the rest of the pattern as a command to run.  The core dump will be
205	  written to the standard input of that program instead of to a file.
206	
207	==============================================================
208	
209	core_pipe_limit:
210	
211	This sysctl is only applicable when core_pattern is configured to pipe
212	core files to a user space helper (when the first character of
213	core_pattern is a '|', see above).  When collecting cores via a pipe
214	to an application, it is occasionally useful for the collecting
215	application to gather data about the crashing process from its
216	/proc/pid directory.  In order to do this safely, the kernel must wait
217	for the collecting process to exit, so as not to remove the crashing
218	processes proc files prematurely.  This in turn creates the
219	possibility that a misbehaving userspace collecting process can block
220	the reaping of a crashed process simply by never exiting.  This sysctl
221	defends against that.  It defines how many concurrent crashing
222	processes may be piped to user space applications in parallel.  If
223	this value is exceeded, then those crashing processes above that value
224	are noted via the kernel log and their cores are skipped.  0 is a
225	special value, indicating that unlimited processes may be captured in
226	parallel, but that no waiting will take place (i.e. the collecting
227	process is not guaranteed access to /proc/<crashing pid>/).  This
228	value defaults to 0.
229	
230	==============================================================
231	
232	core_uses_pid:
233	
234	The default coredump filename is "core".  By setting
235	core_uses_pid to 1, the coredump filename becomes core.PID.
236	If core_pattern does not include "%p" (default does not)
237	and core_uses_pid is set, then .PID will be appended to
238	the filename.
239	
240	==============================================================
241	
242	ctrl-alt-del:
243	
244	When the value in this file is 0, ctrl-alt-del is trapped and
245	sent to the init(1) program to handle a graceful restart.
246	When, however, the value is > 0, Linux's reaction to a Vulcan
247	Nerve Pinch (tm) will be an immediate reboot, without even
248	syncing its dirty buffers.
249	
250	Note: when a program (like dosemu) has the keyboard in 'raw'
251	mode, the ctrl-alt-del is intercepted by the program before it
252	ever reaches the kernel tty layer, and it's up to the program
253	to decide what to do with it.
254	
255	==============================================================
256	
257	dmesg_restrict:
258	
259	This toggle indicates whether unprivileged users are prevented
260	from using dmesg(8) to view messages from the kernel's log buffer.
261	When dmesg_restrict is set to (0) there are no restrictions. When
262	dmesg_restrict is set set to (1), users must have CAP_SYSLOG to use
263	dmesg(8).
264	
265	The kernel config option CONFIG_SECURITY_DMESG_RESTRICT sets the
266	default value of dmesg_restrict.
267	
268	==============================================================
269	
270	domainname & hostname:
271	
272	These files can be used to set the NIS/YP domainname and the
273	hostname of your box in exactly the same way as the commands
274	domainname and hostname, i.e.:
275	# echo "darkstar" > /proc/sys/kernel/hostname
276	# echo "mydomain" > /proc/sys/kernel/domainname
277	has the same effect as
278	# hostname "darkstar"
279	# domainname "mydomain"
280	
281	Note, however, that the classic darkstar.frop.org has the
282	hostname "darkstar" and DNS (Internet Domain Name Server)
283	domainname "frop.org", not to be confused with the NIS (Network
284	Information Service) or YP (Yellow Pages) domainname. These two
285	domain names are in general different. For a detailed discussion
286	see the hostname(1) man page.
287	
288	==============================================================
289	
290	hotplug:
291	
292	Path for the hotplug policy agent.
293	Default value is "/sbin/hotplug".
294	
295	==============================================================
296	
297	hung_task_panic:
298	
299	Controls the kernel's behavior when a hung task is detected.
300	This file shows up if CONFIG_DETECT_HUNG_TASK is enabled.
301	
302	0: continue operation. This is the default behavior.
303	
304	1: panic immediately.
305	
306	==============================================================
307	
308	hung_task_check_count:
309	
310	The upper bound on the number of tasks that are checked.
311	This file shows up if CONFIG_DETECT_HUNG_TASK is enabled.
312	
313	==============================================================
314	
315	hung_task_timeout_secs:
316	
317	Check interval. When a task in D state did not get scheduled
318	for more than this value report a warning.
319	This file shows up if CONFIG_DETECT_HUNG_TASK is enabled.
320	
321	0: means infinite timeout - no checking done.
322	Possible values to set are in range {0..LONG_MAX/HZ}.
323	
324	==============================================================
325	
326	hung_task_warnings:
327	
328	The maximum number of warnings to report. During a check interval
329	if a hung task is detected, this value is decreased by 1.
330	When this value reaches 0, no more warnings will be reported.
331	This file shows up if CONFIG_DETECT_HUNG_TASK is enabled.
332	
333	-1: report an infinite number of warnings.
334	
335	==============================================================
336	
337	kexec_load_disabled:
338	
339	A toggle indicating if the kexec_load syscall has been disabled. This
340	value defaults to 0 (false: kexec_load enabled), but can be set to 1
341	(true: kexec_load disabled). Once true, kexec can no longer be used, and
342	the toggle cannot be set back to false. This allows a kexec image to be
343	loaded before disabling the syscall, allowing a system to set up (and
344	later use) an image without it being altered. Generally used together
345	with the "modules_disabled" sysctl.
346	
347	==============================================================
348	
349	kptr_restrict:
350	
351	This toggle indicates whether restrictions are placed on
352	exposing kernel addresses via /proc and other interfaces.
353	
354	When kptr_restrict is set to (0), the default, there are no restrictions.
355	
356	When kptr_restrict is set to (1), kernel pointers printed using the %pK
357	format specifier will be replaced with 0's unless the user has CAP_SYSLOG
358	and effective user and group ids are equal to the real ids. This is
359	because %pK checks are done at read() time rather than open() time, so
360	if permissions are elevated between the open() and the read() (e.g via
361	a setuid binary) then %pK will not leak kernel pointers to unprivileged
362	users. Note, this is a temporary solution only. The correct long-term
363	solution is to do the permission checks at open() time. Consider removing
364	world read permissions from files that use %pK, and using dmesg_restrict
365	to protect against uses of %pK in dmesg(8) if leaking kernel pointer
366	values to unprivileged users is a concern.
367	
368	When kptr_restrict is set to (2), kernel pointers printed using
369	%pK will be replaced with 0's regardless of privileges.
370	
371	==============================================================
372	
373	kstack_depth_to_print: (X86 only)
374	
375	Controls the number of words to print when dumping the raw
376	kernel stack.
377	
378	==============================================================
379	
380	l2cr: (PPC only)
381	
382	This flag controls the L2 cache of G3 processor boards. If
383	0, the cache is disabled. Enabled if nonzero.
384	
385	==============================================================
386	
387	modules_disabled:
388	
389	A toggle value indicating if modules are allowed to be loaded
390	in an otherwise modular kernel.  This toggle defaults to off
391	(0), but can be set true (1).  Once true, modules can be
392	neither loaded nor unloaded, and the toggle cannot be set back
393	to false.  Generally used with the "kexec_load_disabled" toggle.
394	
395	==============================================================
396	
397	msg_next_id, sem_next_id, and shm_next_id:
398	
399	These three toggles allows to specify desired id for next allocated IPC
400	object: message, semaphore or shared memory respectively.
401	
402	By default they are equal to -1, which means generic allocation logic.
403	Possible values to set are in range {0..INT_MAX}.
404	
405	Notes:
406	1) kernel doesn't guarantee, that new object will have desired id. So,
407	it's up to userspace, how to handle an object with "wrong" id.
408	2) Toggle with non-default value will be set back to -1 by kernel after
409	successful IPC object allocation.
410	
411	==============================================================
412	
413	nmi_watchdog:
414	
415	Enables/Disables the NMI watchdog on x86 systems. When the value is
416	non-zero the NMI watchdog is enabled and will continuously test all
417	online cpus to determine whether or not they are still functioning
418	properly. Currently, passing "nmi_watchdog=" parameter at boot time is
419	required for this function to work.
420	
421	If LAPIC NMI watchdog method is in use (nmi_watchdog=2 kernel
422	parameter), the NMI watchdog shares registers with oprofile. By
423	disabling the NMI watchdog, oprofile may have more registers to
424	utilize.
425	
426	==============================================================
427	
428	numa_balancing
429	
430	Enables/disables automatic page fault based NUMA memory
431	balancing. Memory is moved automatically to nodes
432	that access it often.
433	
434	Enables/disables automatic NUMA memory balancing. On NUMA machines, there
435	is a performance penalty if remote memory is accessed by a CPU. When this
436	feature is enabled the kernel samples what task thread is accessing memory
437	by periodically unmapping pages and later trapping a page fault. At the
438	time of the page fault, it is determined if the data being accessed should
439	be migrated to a local memory node.
440	
441	The unmapping of pages and trapping faults incur additional overhead that
442	ideally is offset by improved memory locality but there is no universal
443	guarantee. If the target workload is already bound to NUMA nodes then this
444	feature should be disabled. Otherwise, if the system overhead from the
445	feature is too high then the rate the kernel samples for NUMA hinting
446	faults may be controlled by the numa_balancing_scan_period_min_ms,
447	numa_balancing_scan_delay_ms, numa_balancing_scan_period_max_ms,
448	numa_balancing_scan_size_mb, and numa_balancing_settle_count sysctls.
449	
450	==============================================================
451	
452	numa_balancing_scan_period_min_ms, numa_balancing_scan_delay_ms,
453	numa_balancing_scan_period_max_ms, numa_balancing_scan_size_mb
454	
455	Automatic NUMA balancing scans tasks address space and unmaps pages to
456	detect if pages are properly placed or if the data should be migrated to a
457	memory node local to where the task is running.  Every "scan delay" the task
458	scans the next "scan size" number of pages in its address space. When the
459	end of the address space is reached the scanner restarts from the beginning.
460	
461	In combination, the "scan delay" and "scan size" determine the scan rate.
462	When "scan delay" decreases, the scan rate increases.  The scan delay and
463	hence the scan rate of every task is adaptive and depends on historical
464	behaviour. If pages are properly placed then the scan delay increases,
465	otherwise the scan delay decreases.  The "scan size" is not adaptive but
466	the higher the "scan size", the higher the scan rate.
467	
468	Higher scan rates incur higher system overhead as page faults must be
469	trapped and potentially data must be migrated. However, the higher the scan
470	rate, the more quickly a tasks memory is migrated to a local node if the
471	workload pattern changes and minimises performance impact due to remote
472	memory accesses. These sysctls control the thresholds for scan delays and
473	the number of pages scanned.
474	
475	numa_balancing_scan_period_min_ms is the minimum time in milliseconds to
476	scan a tasks virtual memory. It effectively controls the maximum scanning
477	rate for each task.
478	
479	numa_balancing_scan_delay_ms is the starting "scan delay" used for a task
480	when it initially forks.
481	
482	numa_balancing_scan_period_max_ms is the maximum time in milliseconds to
483	scan a tasks virtual memory. It effectively controls the minimum scanning
484	rate for each task.
485	
486	numa_balancing_scan_size_mb is how many megabytes worth of pages are
487	scanned for a given scan.
488	
489	==============================================================
490	
491	osrelease, ostype & version:
492	
493	# cat osrelease
494	2.1.88
495	# cat ostype
496	Linux
497	# cat version
498	#5 Wed Feb 25 21:49:24 MET 1998
499	
500	The files osrelease and ostype should be clear enough. Version
501	needs a little more clarification however. The '#5' means that
502	this is the fifth kernel built from this source base and the
503	date behind it indicates the time the kernel was built.
504	The only way to tune these values is to rebuild the kernel :-)
505	
506	==============================================================
507	
508	overflowgid & overflowuid:
509	
510	if your architecture did not always support 32-bit UIDs (i.e. arm,
511	i386, m68k, sh, and sparc32), a fixed UID and GID will be returned to
512	applications that use the old 16-bit UID/GID system calls, if the
513	actual UID or GID would exceed 65535.
514	
515	These sysctls allow you to change the value of the fixed UID and GID.
516	The default is 65534.
517	
518	==============================================================
519	
520	panic:
521	
522	The value in this file represents the number of seconds the kernel
523	waits before rebooting on a panic. When you use the software watchdog,
524	the recommended setting is 60.
525	
526	==============================================================
527	
528	panic_on_unrecovered_nmi:
529	
530	The default Linux behaviour on an NMI of either memory or unknown is
531	to continue operation. For many environments such as scientific
532	computing it is preferable that the box is taken out and the error
533	dealt with than an uncorrected parity/ECC error get propagated.
534	
535	A small number of systems do generate NMI's for bizarre random reasons
536	such as power management so the default is off. That sysctl works like
537	the existing panic controls already in that directory.
538	
539	==============================================================
540	
541	panic_on_oops:
542	
543	Controls the kernel's behaviour when an oops or BUG is encountered.
544	
545	0: try to continue operation
546	
547	1: panic immediately.  If the `panic' sysctl is also non-zero then the
548	   machine will be rebooted.
549	
550	==============================================================
551	
552	panic_on_stackoverflow:
553	
554	Controls the kernel's behavior when detecting the overflows of
555	kernel, IRQ and exception stacks except a user stack.
556	This file shows up if CONFIG_DEBUG_STACKOVERFLOW is enabled.
557	
558	0: try to continue operation.
559	
560	1: panic immediately.
561	
562	==============================================================
563	
564	perf_cpu_time_max_percent:
565	
566	Hints to the kernel how much CPU time it should be allowed to
567	use to handle perf sampling events.  If the perf subsystem
568	is informed that its samples are exceeding this limit, it
569	will drop its sampling frequency to attempt to reduce its CPU
570	usage.
571	
572	Some perf sampling happens in NMIs.  If these samples
573	unexpectedly take too long to execute, the NMIs can become
574	stacked up next to each other so much that nothing else is
575	allowed to execute.
576	
577	0: disable the mechanism.  Do not monitor or correct perf's
578	   sampling rate no matter how CPU time it takes.
579	
580	1-100: attempt to throttle perf's sample rate to this
581	   percentage of CPU.  Note: the kernel calculates an
582	   "expected" length of each sample event.  100 here means
583	   100% of that expected length.  Even if this is set to
584	   100, you may still see sample throttling if this
585	   length is exceeded.  Set to 0 if you truly do not care
586	   how much CPU is consumed.
587	
588	==============================================================
589	
590	
591	pid_max:
592	
593	PID allocation wrap value.  When the kernel's next PID value
594	reaches this value, it wraps back to a minimum PID value.
595	PIDs of value pid_max or larger are not allocated.
596	
597	==============================================================
598	
599	ns_last_pid:
600	
601	The last pid allocated in the current (the one task using this sysctl
602	lives in) pid namespace. When selecting a pid for a next task on fork
603	kernel tries to allocate a number starting from this one.
604	
605	==============================================================
606	
607	powersave-nap: (PPC only)
608	
609	If set, Linux-PPC will use the 'nap' mode of powersaving,
610	otherwise the 'doze' mode will be used.
611	
612	==============================================================
613	
614	printk:
615	
616	The four values in printk denote: console_loglevel,
617	default_message_loglevel, minimum_console_loglevel and
618	default_console_loglevel respectively.
619	
620	These values influence printk() behavior when printing or
621	logging error messages. See 'man 2 syslog' for more info on
622	the different loglevels.
623	
624	- console_loglevel: messages with a higher priority than
625	  this will be printed to the console
626	- default_message_loglevel: messages without an explicit priority
627	  will be printed with this priority
628	- minimum_console_loglevel: minimum (highest) value to which
629	  console_loglevel can be set
630	- default_console_loglevel: default value for console_loglevel
631	
632	==============================================================
633	
634	printk_delay:
635	
636	Delay each printk message in printk_delay milliseconds
637	
638	Value from 0 - 10000 is allowed.
639	
640	==============================================================
641	
642	printk_ratelimit:
643	
644	Some warning messages are rate limited. printk_ratelimit specifies
645	the minimum length of time between these messages (in jiffies), by
646	default we allow one every 5 seconds.
647	
648	A value of 0 will disable rate limiting.
649	
650	==============================================================
651	
652	printk_ratelimit_burst:
653	
654	While long term we enforce one message per printk_ratelimit
655	seconds, we do allow a burst of messages to pass through.
656	printk_ratelimit_burst specifies the number of messages we can
657	send before ratelimiting kicks in.
658	
659	==============================================================
660	
661	randomize_va_space:
662	
663	This option can be used to select the type of process address
664	space randomization that is used in the system, for architectures
665	that support this feature.
666	
667	0 - Turn the process address space randomization off.  This is the
668	    default for architectures that do not support this feature anyways,
669	    and kernels that are booted with the "norandmaps" parameter.
670	
671	1 - Make the addresses of mmap base, stack and VDSO page randomized.
672	    This, among other things, implies that shared libraries will be
673	    loaded to random addresses.  Also for PIE-linked binaries, the
674	    location of code start is randomized.  This is the default if the
675	    CONFIG_COMPAT_BRK option is enabled.
676	
677	2 - Additionally enable heap randomization.  This is the default if
678	    CONFIG_COMPAT_BRK is disabled.
679	
680	    There are a few legacy applications out there (such as some ancient
681	    versions of libc.so.5 from 1996) that assume that brk area starts
682	    just after the end of the code+bss.  These applications break when
683	    start of the brk area is randomized.  There are however no known
684	    non-legacy applications that would be broken this way, so for most
685	    systems it is safe to choose full randomization.
686	
687	    Systems with ancient and/or broken binaries should be configured
688	    with CONFIG_COMPAT_BRK enabled, which excludes the heap from process
689	    address space randomization.
690	
691	==============================================================
692	
693	reboot-cmd: (Sparc only)
694	
695	??? This seems to be a way to give an argument to the Sparc
696	ROM/Flash boot loader. Maybe to tell it what to do after
697	rebooting. ???
698	
699	==============================================================
700	
701	rtsig-max & rtsig-nr:
702	
703	The file rtsig-max can be used to tune the maximum number
704	of POSIX realtime (queued) signals that can be outstanding
705	in the system.
706	
707	rtsig-nr shows the number of RT signals currently queued.
708	
709	==============================================================
710	
711	sg-big-buff:
712	
713	This file shows the size of the generic SCSI (sg) buffer.
714	You can't tune it just yet, but you could change it on
715	compile time by editing include/scsi/sg.h and changing
716	the value of SG_BIG_BUFF.
717	
718	There shouldn't be any reason to change this value. If
719	you can come up with one, you probably know what you
720	are doing anyway :)
721	
722	==============================================================
723	
724	shmall:
725	
726	This parameter sets the total amount of shared memory pages that
727	can be used system wide. Hence, SHMALL should always be at least
728	ceil(shmmax/PAGE_SIZE).
729	
730	If you are not sure what the default PAGE_SIZE is on your Linux
731	system, you can run the following command:
732	
733	# getconf PAGE_SIZE
734	
735	==============================================================
736	
737	shmmax:
738	
739	This value can be used to query and set the run time limit
740	on the maximum shared memory segment size that can be created.
741	Shared memory segments up to 1Gb are now supported in the
742	kernel.  This value defaults to SHMMAX.
743	
744	==============================================================
745	
746	shm_rmid_forced:
747	
748	Linux lets you set resource limits, including how much memory one
749	process can consume, via setrlimit(2).  Unfortunately, shared memory
750	segments are allowed to exist without association with any process, and
751	thus might not be counted against any resource limits.  If enabled,
752	shared memory segments are automatically destroyed when their attach
753	count becomes zero after a detach or a process termination.  It will
754	also destroy segments that were created, but never attached to, on exit
755	from the process.  The only use left for IPC_RMID is to immediately
756	destroy an unattached segment.  Of course, this breaks the way things are
757	defined, so some applications might stop working.  Note that this
758	feature will do you no good unless you also configure your resource
759	limits (in particular, RLIMIT_AS and RLIMIT_NPROC).  Most systems don't
760	need this.
761	
762	Note that if you change this from 0 to 1, already created segments
763	without users and with a dead originative process will be destroyed.
764	
765	==============================================================
766	
767	sysctl_writes_strict:
768	
769	Control how file position affects the behavior of updating sysctl values
770	via the /proc/sys interface:
771	
772	  -1 - Legacy per-write sysctl value handling, with no printk warnings.
773	       Each write syscall must fully contain the sysctl value to be
774	       written, and multiple writes on the same sysctl file descriptor
775	       will rewrite the sysctl value, regardless of file position.
776	   0 - (default) Same behavior as above, but warn about processes that
777	       perform writes to a sysctl file descriptor when the file position
778	       is not 0.
779	   1 - Respect file position when writing sysctl strings. Multiple writes
780	       will append to the sysctl value buffer. Anything past the max length
781	       of the sysctl value buffer will be ignored. Writes to numeric sysctl
782	       entries must always be at file position 0 and the value must be
783	       fully contained in the buffer sent in the write syscall.
784	
785	==============================================================
786	
787	softlockup_all_cpu_backtrace:
788	
789	This value controls the soft lockup detector thread's behavior
790	when a soft lockup condition is detected as to whether or not
791	to gather further debug information. If enabled, each cpu will
792	be issued an NMI and instructed to capture stack trace.
793	
794	This feature is only applicable for architectures which support
795	NMI.
796	
797	0: do nothing. This is the default behavior.
798	
799	1: on detection capture more debug information.
800	
801	==============================================================
802	
803	tainted:
804	
805	Non-zero if the kernel has been tainted.  Numeric values, which
806	can be ORed together:
807	
808	   1 - A module with a non-GPL license has been loaded, this
809	       includes modules with no license.
810	       Set by modutils >= 2.4.9 and module-init-tools.
811	   2 - A module was force loaded by insmod -f.
812	       Set by modutils >= 2.4.9 and module-init-tools.
813	   4 - Unsafe SMP processors: SMP with CPUs not designed for SMP.
814	   8 - A module was forcibly unloaded from the system by rmmod -f.
815	  16 - A hardware machine check error occurred on the system.
816	  32 - A bad page was discovered on the system.
817	  64 - The user has asked that the system be marked "tainted".  This
818	       could be because they are running software that directly modifies
819	       the hardware, or for other reasons.
820	 128 - The system has died.
821	 256 - The ACPI DSDT has been overridden with one supplied by the user
822	        instead of using the one provided by the hardware.
823	 512 - A kernel warning has occurred.
824	1024 - A module from drivers/staging was loaded.
825	2048 - The system is working around a severe firmware bug.
826	4096 - An out-of-tree module has been loaded.
827	8192 - An unsigned module has been loaded in a kernel supporting module
828	       signature.
829	
830	==============================================================
831	
832	unknown_nmi_panic:
833	
834	The value in this file affects behavior of handling NMI. When the
835	value is non-zero, unknown NMI is trapped and then panic occurs. At
836	that time, kernel debugging information is displayed on console.
837	
838	NMI switch that most IA32 servers have fires unknown NMI up, for
839	example.  If a system hangs up, try pressing the NMI switch.
840	
841	==============================================================
842	
843	watchdog_thresh:
844	
845	This value can be used to control the frequency of hrtimer and NMI
846	events and the soft and hard lockup thresholds. The default threshold
847	is 10 seconds.
848	
849	The softlockup threshold is (2 * watchdog_thresh). Setting this
850	tunable to zero will disable lockup detection altogether.
851	
852	==============================================================
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.