aboutsummaryrefslogtreecommitdiffstats
path: root/init/Kconfig
diff options
context:
space:
mode:
authorJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
committerJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
commit8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch)
treea8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /init/Kconfig
parent406089d01562f1e2bf9f089fd7637009ebaad589 (diff)
Patched in Tegra support.
Diffstat (limited to 'init/Kconfig')
-rw-r--r--init/Kconfig557
1 files changed, 116 insertions, 441 deletions
diff --git a/init/Kconfig b/init/Kconfig
index 7d30240e5bf..6aad581f18e 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -27,9 +27,6 @@ config IRQ_WORK
27 bool 27 bool
28 depends on HAVE_IRQ_WORK 28 depends on HAVE_IRQ_WORK
29 29
30config BUILDTIME_EXTABLE_SORT
31 bool
32
33menu "General setup" 30menu "General setup"
34 31
35config EXPERIMENTAL 32config EXPERIMENTAL
@@ -167,7 +164,7 @@ config KERNEL_BZIP2
167 depends on HAVE_KERNEL_BZIP2 164 depends on HAVE_KERNEL_BZIP2
168 help 165 help
169 Its compression ratio and speed is intermediate. 166 Its compression ratio and speed is intermediate.
170 Decompression speed is slowest among the choices. The kernel 167 Decompression speed is slowest among the three. The kernel
171 size is about 10% smaller with bzip2, in comparison to gzip. 168 size is about 10% smaller with bzip2, in comparison to gzip.
172 Bzip2 uses a large amount of memory. For modern kernels you 169 Bzip2 uses a large amount of memory. For modern kernels you
173 will need at least 8MB RAM or more for booting. 170 will need at least 8MB RAM or more for booting.
@@ -176,9 +173,10 @@ config KERNEL_LZMA
176 bool "LZMA" 173 bool "LZMA"
177 depends on HAVE_KERNEL_LZMA 174 depends on HAVE_KERNEL_LZMA
178 help 175 help
179 This compression algorithm's ratio is best. Decompression speed 176 The most recent compression algorithm.
180 is between gzip and bzip2. Compression is slowest. 177 Its ratio is best, decompression speed is between the other
181 The kernel size is about 33% smaller with LZMA in comparison to gzip. 178 two. Compression is slowest. The kernel size is about 33%
179 smaller with LZMA in comparison to gzip.
182 180
183config KERNEL_XZ 181config KERNEL_XZ
184 bool "XZ" 182 bool "XZ"
@@ -199,7 +197,7 @@ config KERNEL_LZO
199 bool "LZO" 197 bool "LZO"
200 depends on HAVE_KERNEL_LZO 198 depends on HAVE_KERNEL_LZO
201 help 199 help
202 Its compression ratio is the poorest among the choices. The kernel 200 Its compression ratio is the poorest among the 4. The kernel
203 size is about 10% bigger than gzip; however its speed 201 size is about 10% bigger than gzip; however its speed
204 (both compression and decompression) is the fastest. 202 (both compression and decompression) is the fastest.
205 203
@@ -267,106 +265,6 @@ config POSIX_MQUEUE_SYSCTL
267 depends on SYSCTL 265 depends on SYSCTL
268 default y 266 default y
269 267
270config FHANDLE
271 bool "open by fhandle syscalls"
272 select EXPORTFS
273 help
274 If you say Y here, a user level program will be able to map
275 file names to handle and then later use the handle for
276 different file system operations. This is useful in implementing
277 userspace file servers, which now track files using handles instead
278 of names. The handle would remain the same even if file names
279 get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
280 syscalls.
281
282config AUDIT
283 bool "Auditing support"
284 depends on NET
285 help
286 Enable auditing infrastructure that can be used with another
287 kernel subsystem, such as SELinux (which requires this for
288 logging of avc messages output). Does not do system-call
289 auditing without CONFIG_AUDITSYSCALL.
290
291config AUDITSYSCALL
292 bool "Enable system-call auditing support"
293 depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH || (ARM && AEABI && !OABI_COMPAT))
294 default y if SECURITY_SELINUX
295 help
296 Enable low-overhead system-call auditing infrastructure that
297 can be used independently or with another kernel subsystem,
298 such as SELinux.
299
300config AUDIT_WATCH
301 def_bool y
302 depends on AUDITSYSCALL
303 select FSNOTIFY
304
305config AUDIT_TREE
306 def_bool y
307 depends on AUDITSYSCALL
308 select FSNOTIFY
309
310config AUDIT_LOGINUID_IMMUTABLE
311 bool "Make audit loginuid immutable"
312 depends on AUDIT
313 help
314 The config option toggles if a task setting its loginuid requires
315 CAP_SYS_AUDITCONTROL or if that task should require no special permissions
316 but should instead only allow setting its loginuid if it was never
317 previously set. On systems which use systemd or a similar central
318 process to restart login services this should be set to true. On older
319 systems in which an admin would typically have to directly stop and
320 start processes this should be set to false. Setting this to true allows
321 one to drop potentially dangerous capabilites from the login tasks,
322 but may not be backwards compatible with older init systems.
323
324source "kernel/irq/Kconfig"
325source "kernel/time/Kconfig"
326
327menu "CPU/Task time and stats accounting"
328
329choice
330 prompt "Cputime accounting"
331 default TICK_CPU_ACCOUNTING if !PPC64
332 default VIRT_CPU_ACCOUNTING if PPC64
333
334# Kind of a stub config for the pure tick based cputime accounting
335config TICK_CPU_ACCOUNTING
336 bool "Simple tick based cputime accounting"
337 depends on !S390
338 help
339 This is the basic tick based cputime accounting that maintains
340 statistics about user, system and idle time spent on per jiffies
341 granularity.
342
343 If unsure, say Y.
344
345config VIRT_CPU_ACCOUNTING
346 bool "Deterministic task and CPU time accounting"
347 depends on HAVE_VIRT_CPU_ACCOUNTING
348 help
349 Select this option to enable more accurate task and CPU time
350 accounting. This is done by reading a CPU counter on each
351 kernel entry and exit and on transitions within the kernel
352 between system, softirq and hardirq state, so there is a
353 small performance impact. In the case of s390 or IBM POWER > 5,
354 this also enables accounting of stolen time on logically-partitioned
355 systems.
356
357config IRQ_TIME_ACCOUNTING
358 bool "Fine granularity task level IRQ time accounting"
359 depends on HAVE_IRQ_TIME_ACCOUNTING
360 help
361 Select this option to enable fine granularity task irq time
362 accounting. This is done by reading a timestamp on each
363 transitions between softirq and hardirq state, so there can be a
364 small performance impact.
365
366 If in doubt, say N here.
367
368endchoice
369
370config BSD_PROCESS_ACCT 268config BSD_PROCESS_ACCT
371 bool "BSD Process Accounting" 269 bool "BSD Process Accounting"
372 help 270 help
@@ -392,6 +290,18 @@ config BSD_PROCESS_ACCT_V3
392 for processing it. A preliminary version of these tools is available 290 for processing it. A preliminary version of these tools is available
393 at <http://www.gnu.org/software/acct/>. 291 at <http://www.gnu.org/software/acct/>.
394 292
293config FHANDLE
294 bool "open by fhandle syscalls"
295 select EXPORTFS
296 help
297 If you say Y here, a user level program will be able to map
298 file names to handle and then later use the handle for
299 different file system operations. This is useful in implementing
300 userspace file servers, which now track files using handles instead
301 of names. The handle would remain the same even if file names
302 get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
303 syscalls.
304
395config TASKSTATS 305config TASKSTATS
396 bool "Export task/process statistics through netlink (EXPERIMENTAL)" 306 bool "Export task/process statistics through netlink (EXPERIMENTAL)"
397 depends on NET 307 depends on NET
@@ -434,7 +344,35 @@ config TASK_IO_ACCOUNTING
434 344
435 Say N if unsure. 345 Say N if unsure.
436 346
437endmenu # "CPU/Task time and stats accounting" 347config AUDIT
348 bool "Auditing support"
349 depends on NET
350 help
351 Enable auditing infrastructure that can be used with another
352 kernel subsystem, such as SELinux (which requires this for
353 logging of avc messages output). Does not do system-call
354 auditing without CONFIG_AUDITSYSCALL.
355
356config AUDITSYSCALL
357 bool "Enable system-call auditing support"
358 depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH)
359 default y if SECURITY_SELINUX
360 help
361 Enable low-overhead system-call auditing infrastructure that
362 can be used independently or with another kernel subsystem,
363 such as SELinux.
364
365config AUDIT_WATCH
366 def_bool y
367 depends on AUDITSYSCALL
368 select FSNOTIFY
369
370config AUDIT_TREE
371 def_bool y
372 depends on AUDITSYSCALL
373 select FSNOTIFY
374
375source "kernel/irq/Kconfig"
438 376
439menu "RCU Subsystem" 377menu "RCU Subsystem"
440 378
@@ -453,7 +391,7 @@ config TREE_RCU
453 391
454config TREE_PREEMPT_RCU 392config TREE_PREEMPT_RCU
455 bool "Preemptible tree-based hierarchical RCU" 393 bool "Preemptible tree-based hierarchical RCU"
456 depends on PREEMPT && SMP 394 depends on PREEMPT
457 help 395 help
458 This option selects the RCU implementation that is 396 This option selects the RCU implementation that is
459 designed for very large SMP systems with hundreds or 397 designed for very large SMP systems with hundreds or
@@ -463,7 +401,7 @@ config TREE_PREEMPT_RCU
463 401
464config TINY_RCU 402config TINY_RCU
465 bool "UP-only small-memory-footprint RCU" 403 bool "UP-only small-memory-footprint RCU"
466 depends on !PREEMPT && !SMP 404 depends on !SMP
467 help 405 help
468 This option selects the RCU implementation that is 406 This option selects the RCU implementation that is
469 designed for UP systems from which real-time response 407 designed for UP systems from which real-time response
@@ -472,7 +410,7 @@ config TINY_RCU
472 410
473config TINY_PREEMPT_RCU 411config TINY_PREEMPT_RCU
474 bool "Preemptible UP-only small-memory-footprint RCU" 412 bool "Preemptible UP-only small-memory-footprint RCU"
475 depends on PREEMPT && !SMP 413 depends on !SMP && PREEMPT
476 help 414 help
477 This option selects the RCU implementation that is designed 415 This option selects the RCU implementation that is designed
478 for real-time UP systems. This option greatly reduces the 416 for real-time UP systems. This option greatly reduces the
@@ -486,35 +424,14 @@ config PREEMPT_RCU
486 This option enables preemptible-RCU code that is common between 424 This option enables preemptible-RCU code that is common between
487 the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations. 425 the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations.
488 426
489config CONTEXT_TRACKING 427config RCU_TRACE
490 bool 428 bool "Enable tracing for RCU"
491
492config RCU_USER_QS
493 bool "Consider userspace as in RCU extended quiescent state"
494 depends on HAVE_CONTEXT_TRACKING && SMP
495 select CONTEXT_TRACKING
496 help 429 help
497 This option sets hooks on kernel / userspace boundaries and 430 This option provides tracing in RCU which presents stats
498 puts RCU in extended quiescent state when the CPU runs in 431 in debugfs for debugging RCU implementation.
499 userspace. It means that when a CPU runs in userspace, it is
500 excluded from the global RCU state machine and thus doesn't
501 try to keep the timer tick on for RCU.
502
503 Unless you want to hack and help the development of the full
504 dynticks mode, you shouldn't enable this option. It also
505 adds unnecessary overhead.
506
507 If unsure say N
508 432
509config CONTEXT_TRACKING_FORCE 433 Say Y here if you want to enable RCU tracing
510 bool "Force context tracking" 434 Say N if you are unsure.
511 depends on CONTEXT_TRACKING
512 help
513 Probe on user/kernel boundaries by default in order to
514 test the features that rely on it such as userspace RCU extended
515 quiescent states.
516 This test is there for debugging until we have a real user like the
517 full dynticks mode.
518 435
519config RCU_FANOUT 436config RCU_FANOUT
520 int "Tree-based hierarchical RCU fanout value" 437 int "Tree-based hierarchical RCU fanout value"
@@ -536,33 +453,6 @@ config RCU_FANOUT
536 Select a specific number if testing RCU itself. 453 Select a specific number if testing RCU itself.
537 Take the default if unsure. 454 Take the default if unsure.
538 455
539config RCU_FANOUT_LEAF
540 int "Tree-based hierarchical RCU leaf-level fanout value"
541 range 2 RCU_FANOUT if 64BIT
542 range 2 RCU_FANOUT if !64BIT
543 depends on TREE_RCU || TREE_PREEMPT_RCU
544 default 16
545 help
546 This option controls the leaf-level fanout of hierarchical
547 implementations of RCU, and allows trading off cache misses
548 against lock contention. Systems that synchronize their
549 scheduling-clock interrupts for energy-efficiency reasons will
550 want the default because the smaller leaf-level fanout keeps
551 lock contention levels acceptably low. Very large systems
552 (hundreds or thousands of CPUs) will instead want to set this
553 value to the maximum value possible in order to reduce the
554 number of cache misses incurred during RCU's grace-period
555 initialization. These systems tend to run CPU-bound, and thus
556 are not helped by synchronized interrupts, and thus tend to
557 skew them, which reduces lock contention enough that large
558 leaf-level fanouts work well.
559
560 Select a specific number if testing RCU itself.
561
562 Select the maximum permissible value for large systems.
563
564 Take the default if unsure.
565
566config RCU_FANOUT_EXACT 456config RCU_FANOUT_EXACT
567 bool "Disable tree-based hierarchical RCU auto-balancing" 457 bool "Disable tree-based hierarchical RCU auto-balancing"
568 depends on TREE_RCU || TREE_PREEMPT_RCU 458 depends on TREE_RCU || TREE_PREEMPT_RCU
@@ -579,16 +469,17 @@ config RCU_FANOUT_EXACT
579 469
580config RCU_FAST_NO_HZ 470config RCU_FAST_NO_HZ
581 bool "Accelerate last non-dyntick-idle CPU's grace periods" 471 bool "Accelerate last non-dyntick-idle CPU's grace periods"
582 depends on NO_HZ && SMP 472 depends on TREE_RCU && NO_HZ && SMP
583 default n 473 default n
584 help 474 help
585 This option causes RCU to attempt to accelerate grace periods in 475 This option causes RCU to attempt to accelerate grace periods
586 order to allow CPUs to enter dynticks-idle state more quickly. 476 in order to allow the final CPU to enter dynticks-idle state
587 On the other hand, this option increases the overhead of the 477 more quickly. On the other hand, this option increases the
588 dynticks-idle checking, thus degrading scheduling latency. 478 overhead of the dynticks-idle checking, particularly on systems
479 with large numbers of CPUs.
589 480
590 Say Y if energy efficiency is critically important, and you don't 481 Say Y if energy efficiency is critically important, particularly
591 care about real-time response. 482 if you have relatively few CPUs.
592 483
593 Say N if you are unsure. 484 Say N if you are unsure.
594 485
@@ -619,25 +510,10 @@ config RCU_BOOST_PRIO
619 depends on RCU_BOOST 510 depends on RCU_BOOST
620 default 1 511 default 1
621 help 512 help
622 This option specifies the real-time priority to which long-term 513 This option specifies the real-time priority to which preempted
623 preempted RCU readers are to be boosted. If you are working 514 RCU readers are to be boosted. If you are working with CPU-bound
624 with a real-time application that has one or more CPU-bound 515 real-time applications, you should specify a priority higher then
625 threads running at a real-time priority level, you should set 516 the highest-priority CPU-bound application.
626 RCU_BOOST_PRIO to a priority higher then the highest-priority
627 real-time CPU-bound thread. The default RCU_BOOST_PRIO value
628 of 1 is appropriate in the common case, which is real-time
629 applications that do not have any CPU-bound threads.
630
631 Some real-time applications might not have a single real-time
632 thread that saturates a given CPU, but instead might have
633 multiple real-time threads that, taken together, fully utilize
634 that CPU. In this case, you should set RCU_BOOST_PRIO to
635 a priority higher than the lowest-priority thread that is
636 conspiring to prevent the CPU from running any non-real-time
637 tasks. For example, if one thread at priority 10 and another
638 thread at priority 5 are between themselves fully consuming
639 the CPU time on a given CPU, then RCU_BOOST_PRIO should be
640 set to priority 6 or higher.
641 517
642 Specify the real-time priority, or take the default if unsure. 518 Specify the real-time priority, or take the default if unsure.
643 519
@@ -654,28 +530,6 @@ config RCU_BOOST_DELAY
654 530
655 Accept the default if unsure. 531 Accept the default if unsure.
656 532
657config RCU_NOCB_CPU
658 bool "Offload RCU callback processing from boot-selected CPUs"
659 depends on TREE_RCU || TREE_PREEMPT_RCU
660 default n
661 help
662 Use this option to reduce OS jitter for aggressive HPC or
663 real-time workloads. It can also be used to offload RCU
664 callback invocation to energy-efficient CPUs in battery-powered
665 asymmetric multiprocessors.
666
667 This option offloads callback invocation from the set of
668 CPUs specified at boot time by the rcu_nocbs parameter.
669 For each such CPU, a kthread ("rcuoN") will be created to
670 invoke callbacks, where the "N" is the CPU being offloaded.
671 Nothing prevents this kthread from running on the specified
672 CPUs, but (1) the kthreads may be preempted between each
673 callback, and (2) affinity or cgroups can be used to force
674 the kthreads to run on whatever set of CPUs is desired.
675
676 Say Y here if you want reduced OS jitter on selected CPUs.
677 Say N here if you are unsure.
678
679endmenu # "RCU Subsystem" 533endmenu # "RCU Subsystem"
680 534
681config IKCONFIG 535config IKCONFIG
@@ -717,50 +571,6 @@ config LOG_BUF_SHIFT
717config HAVE_UNSTABLE_SCHED_CLOCK 571config HAVE_UNSTABLE_SCHED_CLOCK
718 bool 572 bool
719 573
720#
721# For architectures that want to enable the support for NUMA-affine scheduler
722# balancing logic:
723#
724config ARCH_SUPPORTS_NUMA_BALANCING
725 bool
726
727# For architectures that (ab)use NUMA to represent different memory regions
728# all cpu-local but of different latencies, such as SuperH.
729#
730config ARCH_WANT_NUMA_VARIABLE_LOCALITY
731 bool
732
733#
734# For architectures that are willing to define _PAGE_NUMA as _PAGE_PROTNONE
735config ARCH_WANTS_PROT_NUMA_PROT_NONE
736 bool
737
738config ARCH_USES_NUMA_PROT_NONE
739 bool
740 default y
741 depends on ARCH_WANTS_PROT_NUMA_PROT_NONE
742 depends on NUMA_BALANCING
743
744config NUMA_BALANCING_DEFAULT_ENABLED
745 bool "Automatically enable NUMA aware memory/task placement"
746 default y
747 depends on NUMA_BALANCING
748 help
749 If set, autonumic NUMA balancing will be enabled if running on a NUMA
750 machine.
751
752config NUMA_BALANCING
753 bool "Memory placement aware NUMA scheduler"
754 depends on ARCH_SUPPORTS_NUMA_BALANCING
755 depends on !ARCH_WANT_NUMA_VARIABLE_LOCALITY
756 depends on SMP && NUMA && MIGRATION
757 help
758 This option adds support for automatic NUMA aware memory/task placement.
759 The mechanism is quite primitive and is based on migrating memory when
760 it is references to the node the task is running on.
761
762 This system will be inactive on UMA systems.
763
764menuconfig CGROUPS 574menuconfig CGROUPS
765 boolean "Control Group support" 575 boolean "Control Group support"
766 depends on EVENTFD 576 depends on EVENTFD
@@ -826,7 +636,7 @@ config RESOURCE_COUNTERS
826 This option enables controller independent resource accounting 636 This option enables controller independent resource accounting
827 infrastructure that works with cgroups. 637 infrastructure that works with cgroups.
828 638
829config MEMCG 639config CGROUP_MEM_RES_CTLR
830 bool "Memory Resource Controller for Control Groups" 640 bool "Memory Resource Controller for Control Groups"
831 depends on RESOURCE_COUNTERS 641 depends on RESOURCE_COUNTERS
832 select MM_OWNER 642 select MM_OWNER
@@ -849,9 +659,9 @@ config MEMCG
849 This config option also selects MM_OWNER config option, which 659 This config option also selects MM_OWNER config option, which
850 could in turn add some fork/exit overhead. 660 could in turn add some fork/exit overhead.
851 661
852config MEMCG_SWAP 662config CGROUP_MEM_RES_CTLR_SWAP
853 bool "Memory Resource Controller Swap Extension" 663 bool "Memory Resource Controller Swap Extension"
854 depends on MEMCG && SWAP 664 depends on CGROUP_MEM_RES_CTLR && SWAP
855 help 665 help
856 Add swap management feature to memory resource controller. When you 666 Add swap management feature to memory resource controller. When you
857 enable this, you can limit mem+swap usage per cgroup. In other words, 667 enable this, you can limit mem+swap usage per cgroup. In other words,
@@ -866,9 +676,9 @@ config MEMCG_SWAP
866 if boot option "swapaccount=0" is set, swap will not be accounted. 676 if boot option "swapaccount=0" is set, swap will not be accounted.
867 Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page 677 Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page
868 size is 4096bytes, 512k per 1Gbytes of swap. 678 size is 4096bytes, 512k per 1Gbytes of swap.
869config MEMCG_SWAP_ENABLED 679config CGROUP_MEM_RES_CTLR_SWAP_ENABLED
870 bool "Memory Resource Controller Swap Extension enabled by default" 680 bool "Memory Resource Controller Swap Extension enabled by default"
871 depends on MEMCG_SWAP 681 depends on CGROUP_MEM_RES_CTLR_SWAP
872 default y 682 default y
873 help 683 help
874 Memory Resource Controller Swap Extension comes with its price in 684 Memory Resource Controller Swap Extension comes with its price in
@@ -879,32 +689,6 @@ config MEMCG_SWAP_ENABLED
879 For those who want to have the feature enabled by default should 689 For those who want to have the feature enabled by default should
880 select this option (if, for some reason, they need to disable it 690 select this option (if, for some reason, they need to disable it
881 then swapaccount=0 does the trick). 691 then swapaccount=0 does the trick).
882config MEMCG_KMEM
883 bool "Memory Resource Controller Kernel Memory accounting (EXPERIMENTAL)"
884 depends on MEMCG && EXPERIMENTAL
885 depends on SLUB || SLAB
886 help
887 The Kernel Memory extension for Memory Resource Controller can limit
888 the amount of memory used by kernel objects in the system. Those are
889 fundamentally different from the entities handled by the standard
890 Memory Controller, which are page-based, and can be swapped. Users of
891 the kmem extension can use it to guarantee that no group of processes
892 will ever exhaust kernel resources alone.
893
894config CGROUP_HUGETLB
895 bool "HugeTLB Resource Controller for Control Groups"
896 depends on RESOURCE_COUNTERS && HUGETLB_PAGE && EXPERIMENTAL
897 default n
898 help
899 Provides a cgroup Resource Controller for HugeTLB pages.
900 When you enable this, you can put a per cgroup limit on HugeTLB usage.
901 The limit is enforced during page fault. Since HugeTLB doesn't
902 support page reclaim, enforcing the limit at page fault time implies
903 that, the application will get SIGBUS signal if it tries to access
904 HugeTLB pages beyond its limit. This requires the application to know
905 beforehand how much HugeTLB pages it would require for its use. The
906 control group is tracked in the third page lru pointer. This means
907 that we cannot use the controller with huge page less than 3 pages.
908 692
909config CGROUP_PERF 693config CGROUP_PERF
910 bool "Enable perf_event per-cpu per-container group (cgroup) monitoring" 694 bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
@@ -918,6 +702,7 @@ config CGROUP_PERF
918 702
919menuconfig CGROUP_SCHED 703menuconfig CGROUP_SCHED
920 bool "Group CPU scheduler" 704 bool "Group CPU scheduler"
705 depends on EXPERIMENTAL
921 default n 706 default n
922 help 707 help
923 This feature lets CPU scheduler recognize task groups and control CPU 708 This feature lets CPU scheduler recognize task groups and control CPU
@@ -930,18 +715,6 @@ config FAIR_GROUP_SCHED
930 depends on CGROUP_SCHED 715 depends on CGROUP_SCHED
931 default CGROUP_SCHED 716 default CGROUP_SCHED
932 717
933config CFS_BANDWIDTH
934 bool "CPU bandwidth provisioning for FAIR_GROUP_SCHED"
935 depends on EXPERIMENTAL
936 depends on FAIR_GROUP_SCHED
937 default n
938 help
939 This option allows users to define CPU bandwidth rates (limits) for
940 tasks running within the fair group scheduler. Groups with no limit
941 set are considered to be unconstrained and will run with no
942 restriction.
943 See tip/Documentation/scheduler/sched-bwc.txt for more information.
944
945config RT_GROUP_SCHED 718config RT_GROUP_SCHED
946 bool "Group scheduling for SCHED_RR/FIFO" 719 bool "Group scheduling for SCHED_RR/FIFO"
947 depends on EXPERIMENTAL 720 depends on EXPERIMENTAL
@@ -957,7 +730,7 @@ config RT_GROUP_SCHED
957endif #CGROUP_SCHED 730endif #CGROUP_SCHED
958 731
959config BLK_CGROUP 732config BLK_CGROUP
960 bool "Block IO controller" 733 tristate "Block IO controller"
961 depends on BLOCK 734 depends on BLOCK
962 default n 735 default n
963 ---help--- 736 ---help---
@@ -988,17 +761,6 @@ config DEBUG_BLK_CGROUP
988 761
989endif # CGROUPS 762endif # CGROUPS
990 763
991config CHECKPOINT_RESTORE
992 bool "Checkpoint/restore support" if EXPERT
993 default n
994 help
995 Enables additional kernel features in a sake of checkpoint/restore.
996 In particular it adds auxiliary prctl codes to setup process text,
997 data and heap segment sizes, and a few additional /proc filesystem
998 entries.
999
1000 If unsure, say N here.
1001
1002menuconfig NAMESPACES 764menuconfig NAMESPACES
1003 bool "Namespaces support" if EXPERT 765 bool "Namespaces support" if EXPERT
1004 default !EXPERT 766 default !EXPERT
@@ -1028,10 +790,7 @@ config IPC_NS
1028config USER_NS 790config USER_NS
1029 bool "User namespace (EXPERIMENTAL)" 791 bool "User namespace (EXPERIMENTAL)"
1030 depends on EXPERIMENTAL 792 depends on EXPERIMENTAL
1031 depends on UIDGID_CONVERTED 793 default y
1032 select UIDGID_STRICT_TYPE_CHECKS
1033
1034 default n
1035 help 794 help
1036 This allows containers, i.e. vservers, to use user namespaces 795 This allows containers, i.e. vservers, to use user namespaces
1037 to provide different user info for different servers. 796 to provide different user info for different servers.
@@ -1055,40 +814,6 @@ config NET_NS
1055 814
1056endif # NAMESPACES 815endif # NAMESPACES
1057 816
1058config UIDGID_CONVERTED
1059 # True if all of the selected software conmponents are known
1060 # to have uid_t and gid_t converted to kuid_t and kgid_t
1061 # where appropriate and are otherwise safe to use with
1062 # the user namespace.
1063 bool
1064 default y
1065
1066 # Networking
1067 depends on NET_9P = n
1068
1069 # Filesystems
1070 depends on 9P_FS = n
1071 depends on AFS_FS = n
1072 depends on CEPH_FS = n
1073 depends on CIFS = n
1074 depends on CODA_FS = n
1075 depends on GFS2_FS = n
1076 depends on NCP_FS = n
1077 depends on NFSD = n
1078 depends on NFS_FS = n
1079 depends on OCFS2_FS = n
1080 depends on XFS_FS = n
1081
1082config UIDGID_STRICT_TYPE_CHECKS
1083 bool "Require conversions between uid/gids and their internal representation"
1084 depends on UIDGID_CONVERTED
1085 default n
1086 help
1087 While the nececessary conversions are being added to all subsystems this option allows
1088 the code to continue to build for unconverted subsystems.
1089
1090 Say Y here if you want the strict type checking enabled
1091
1092config SCHED_AUTOGROUP 817config SCHED_AUTOGROUP
1093 bool "Automatic process group scheduling" 818 bool "Automatic process group scheduling"
1094 select EVENTFD 819 select EVENTFD
@@ -1190,6 +915,12 @@ config SYSCTL
1190config ANON_INODES 915config ANON_INODES
1191 bool 916 bool
1192 917
918config PANIC_TIMEOUT
919 int "Default panic timeout"
920 default 0
921 help
922 Set default panic timeout.
923
1193menuconfig EXPERT 924menuconfig EXPERT
1194 bool "Configure standard kernel features (expert users)" 925 bool "Configure standard kernel features (expert users)"
1195 # Unhide debug options, to make the on-by-default options visible 926 # Unhide debug options, to make the on-by-default options visible
@@ -1200,12 +931,9 @@ menuconfig EXPERT
1200 environments which can tolerate a "non-standard" kernel. 931 environments which can tolerate a "non-standard" kernel.
1201 Only use this if you really know what you are doing. 932 Only use this if you really know what you are doing.
1202 933
1203config HAVE_UID16
1204 bool
1205
1206config UID16 934config UID16
1207 bool "Enable 16-bit UID system calls" if EXPERT 935 bool "Enable 16-bit UID system calls" if EXPERT
1208 depends on HAVE_UID16 936 depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && COMPAT) || UML || (X86_64 && IA32_EMULATION)
1209 default y 937 default y
1210 help 938 help
1211 This enables the legacy 16-bit UID syscall wrappers. 939 This enables the legacy 16-bit UID syscall wrappers.
@@ -1213,7 +941,7 @@ config UID16
1213config SYSCTL_SYSCALL 941config SYSCTL_SYSCALL
1214 bool "Sysctl syscall support" if EXPERT 942 bool "Sysctl syscall support" if EXPERT
1215 depends on PROC_SYSCTL 943 depends on PROC_SYSCTL
1216 default n 944 default y
1217 select SYSCTL 945 select SYSCTL
1218 ---help--- 946 ---help---
1219 sys_sysctl uses binary paths that have been found challenging 947 sys_sysctl uses binary paths that have been found challenging
@@ -1225,12 +953,7 @@ config SYSCTL_SYSCALL
1225 trying to save some space it is probably safe to disable this, 953 trying to save some space it is probably safe to disable this,
1226 making your kernel marginally smaller. 954 making your kernel marginally smaller.
1227 955
1228 If unsure say N here. 956 If unsure say Y here.
1229
1230config SYSCTL_EXCEPTION_TRACE
1231 bool
1232 help
1233 Enable support for /proc/sys/debug/exception-trace.
1234 957
1235config KALLSYMS 958config KALLSYMS
1236 bool "Load all symbols for debugging/ksymoops" if EXPERT 959 bool "Load all symbols for debugging/ksymoops" if EXPERT
@@ -1258,7 +981,13 @@ config KALLSYMS_ALL
1258 Say N unless you really need all symbols. 981 Say N unless you really need all symbols.
1259 982
1260config HOTPLUG 983config HOTPLUG
1261 def_bool y 984 bool "Support for hot-pluggable devices" if EXPERT
985 default y
986 help
987 This option is provided for the case where no hotplug or uevent
988 capabilities is wanted by the kernel. You should only consider
989 disabling this option for embedded systems that do not use modules, a
990 dynamic /dev tree, or dynamic device discovery. Just say Y.
1262 991
1263config PRINTK 992config PRINTK
1264 default y 993 default y
@@ -1281,7 +1010,6 @@ config BUG
1281 Just say Y. 1010 Just say Y.
1282 1011
1283config ELF_CORE 1012config ELF_CORE
1284 depends on COREDUMP
1285 default y 1013 default y
1286 bool "Enable ELF core dumps" if EXPERT 1014 bool "Enable ELF core dumps" if EXPERT
1287 help 1015 help
@@ -1366,6 +1094,15 @@ config SHMEM
1366 option replaces shmem and tmpfs with the much simpler ramfs code, 1094 option replaces shmem and tmpfs with the much simpler ramfs code,
1367 which may be appropriate on small systems without swap. 1095 which may be appropriate on small systems without swap.
1368 1096
1097config ASHMEM
1098 bool "Enable the Anonymous Shared Memory Subsystem"
1099 default n
1100 depends on SHMEM || TINY_SHMEM
1101 help
1102 The ashmem subsystem is a new shared memory allocator, similar to
1103 POSIX SHM but with different behavior and sporting a simpler
1104 file-based API.
1105
1369config AIO 1106config AIO
1370 bool "Enable AIO support" if EXPERT 1107 bool "Enable AIO support" if EXPERT
1371 default y 1108 default y
@@ -1396,7 +1133,7 @@ menu "Kernel Performance Events And Counters"
1396 1133
1397config PERF_EVENTS 1134config PERF_EVENTS
1398 bool "Kernel performance events and counters" 1135 bool "Kernel performance events and counters"
1399 default y if PROFILING 1136 default y if (PROFILING || PERF_COUNTERS)
1400 depends on HAVE_PERF_EVENTS 1137 depends on HAVE_PERF_EVENTS
1401 select ANON_INODES 1138 select ANON_INODES
1402 select IRQ_WORK 1139 select IRQ_WORK
@@ -1423,6 +1160,18 @@ config PERF_EVENTS
1423 1160
1424 Say Y if unsure. 1161 Say Y if unsure.
1425 1162
1163config PERF_COUNTERS
1164 bool "Kernel performance counters (old config option)"
1165 depends on HAVE_PERF_EVENTS
1166 help
1167 This config has been obsoleted by the PERF_EVENTS
1168 config option - please see that one for details.
1169
1170 It has no effect on the kernel whether you enable
1171 it or not, it is a compatibility placeholder.
1172
1173 Say N if unsure.
1174
1426config DEBUG_PERF_USE_VMALLOC 1175config DEBUG_PERF_USE_VMALLOC
1427 default n 1176 default n
1428 bool "Debug: use vmalloc to back perf mmap() buffers" 1177 bool "Debug: use vmalloc to back perf mmap() buffers"
@@ -1637,73 +1386,13 @@ config MODULE_SRCVERSION_ALL
1637 the version). With this option, such a "srcversion" field 1386 the version). With this option, such a "srcversion" field
1638 will be created for all modules. If unsure, say N. 1387 will be created for all modules. If unsure, say N.
1639 1388
1640config MODULE_SIG
1641 bool "Module signature verification"
1642 depends on MODULES
1643 select KEYS
1644 select CRYPTO
1645 select ASYMMETRIC_KEY_TYPE
1646 select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
1647 select PUBLIC_KEY_ALGO_RSA
1648 select ASN1
1649 select OID_REGISTRY
1650 select X509_CERTIFICATE_PARSER
1651 help
1652 Check modules for valid signatures upon load: the signature
1653 is simply appended to the module. For more information see
1654 Documentation/module-signing.txt.
1655
1656 !!!WARNING!!! If you enable this option, you MUST make sure that the
1657 module DOES NOT get stripped after being signed. This includes the
1658 debuginfo strip done by some packagers (such as rpmbuild) and
1659 inclusion into an initramfs that wants the module size reduced.
1660
1661config MODULE_SIG_FORCE
1662 bool "Require modules to be validly signed"
1663 depends on MODULE_SIG
1664 help
1665 Reject unsigned modules or signed modules for which we don't have a
1666 key. Without this, such modules will simply taint the kernel.
1667
1668choice
1669 prompt "Which hash algorithm should modules be signed with?"
1670 depends on MODULE_SIG
1671 help
1672 This determines which sort of hashing algorithm will be used during
1673 signature generation. This algorithm _must_ be built into the kernel
1674 directly so that signature verification can take place. It is not
1675 possible to load a signed module containing the algorithm to check
1676 the signature on that module.
1677
1678config MODULE_SIG_SHA1
1679 bool "Sign modules with SHA-1"
1680 select CRYPTO_SHA1
1681
1682config MODULE_SIG_SHA224
1683 bool "Sign modules with SHA-224"
1684 select CRYPTO_SHA256
1685
1686config MODULE_SIG_SHA256
1687 bool "Sign modules with SHA-256"
1688 select CRYPTO_SHA256
1689
1690config MODULE_SIG_SHA384
1691 bool "Sign modules with SHA-384"
1692 select CRYPTO_SHA512
1693
1694config MODULE_SIG_SHA512
1695 bool "Sign modules with SHA-512"
1696 select CRYPTO_SHA512
1697
1698endchoice
1699
1700endif # MODULES 1389endif # MODULES
1701 1390
1702config INIT_ALL_POSSIBLE 1391config INIT_ALL_POSSIBLE
1703 bool 1392 bool
1704 help 1393 help
1705 Back when each arch used to define their own cpu_online_mask and 1394 Back when each arch used to define their own cpu_online_map and
1706 cpu_possible_mask, some of them chose to initialize cpu_possible_mask 1395 cpu_possible_map, some of them chose to initialize cpu_possible_map
1707 with all 1s, and others with all 0s. When they were centralised, 1396 with all 1s, and others with all 0s. When they were centralised,
1708 it was better to provide this option than to break all the archs 1397 it was better to provide this option than to break all the archs
1709 and have several arch maintainers pursuing me down dark alleys. 1398 and have several arch maintainers pursuing me down dark alleys.
@@ -1724,18 +1413,4 @@ config PADATA
1724 depends on SMP 1413 depends on SMP
1725 bool 1414 bool
1726 1415
1727# Can be selected by architectures with broken toolchains
1728# that get confused by correct const<->read_only section
1729# mappings
1730config BROKEN_RODATA
1731 bool
1732
1733config ASN1
1734 tristate
1735 help
1736 Build a simple ASN.1 grammar compiler that produces a bytecode output
1737 that can be interpreted by the ASN.1 stream decoder and used to
1738 inform it as to what tags are to be expected in a stream and what
1739 functions to call on what tags.
1740
1741source "kernel/Kconfig.locks" 1416source "kernel/Kconfig.locks"