diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-10-28 11:26:12 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-28 11:26:12 -0400 |
commit | 7a9787e1eba95a166265e6a260cf30af04ef0a99 (patch) | |
tree | e730a4565e0318140d2fbd2f0415d18a339d7336 /arch/x86/Kconfig | |
parent | 41b9eb264c8407655db57b60b4457fe1b2ec9977 (diff) | |
parent | 0173a3265b228da319ceb9c1ec6a5682fd1b2d92 (diff) |
Merge commit 'v2.6.28-rc2' into x86/pci-ioapic-boot-irq-quirks
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 295 |
1 files changed, 200 insertions, 95 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 09521332636b..f4ed47db79ee 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -18,25 +18,28 @@ config X86_64 | |||
18 | ### Arch settings | 18 | ### Arch settings |
19 | config X86 | 19 | config X86 |
20 | def_bool y | 20 | def_bool y |
21 | select HAVE_AOUT if X86_32 | ||
21 | select HAVE_UNSTABLE_SCHED_CLOCK | 22 | select HAVE_UNSTABLE_SCHED_CLOCK |
22 | select HAVE_IDE | 23 | select HAVE_IDE |
23 | select HAVE_OPROFILE | 24 | select HAVE_OPROFILE |
25 | select HAVE_IOREMAP_PROT | ||
24 | select HAVE_KPROBES | 26 | select HAVE_KPROBES |
27 | select ARCH_WANT_OPTIONAL_GPIOLIB | ||
25 | select HAVE_KRETPROBES | 28 | select HAVE_KRETPROBES |
29 | select HAVE_FTRACE_MCOUNT_RECORD | ||
26 | select HAVE_DYNAMIC_FTRACE | 30 | select HAVE_DYNAMIC_FTRACE |
27 | select HAVE_FTRACE | 31 | select HAVE_FTRACE |
28 | select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) | 32 | select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) |
29 | select HAVE_ARCH_KGDB if !X86_VOYAGER | 33 | select HAVE_ARCH_KGDB if !X86_VOYAGER |
34 | select HAVE_ARCH_TRACEHOOK | ||
35 | select HAVE_GENERIC_DMA_COHERENT if X86_32 | ||
36 | select HAVE_EFFICIENT_UNALIGNED_ACCESS | ||
30 | 37 | ||
31 | config ARCH_DEFCONFIG | 38 | config ARCH_DEFCONFIG |
32 | string | 39 | string |
33 | default "arch/x86/configs/i386_defconfig" if X86_32 | 40 | default "arch/x86/configs/i386_defconfig" if X86_32 |
34 | default "arch/x86/configs/x86_64_defconfig" if X86_64 | 41 | default "arch/x86/configs/x86_64_defconfig" if X86_64 |
35 | 42 | ||
36 | |||
37 | config GENERIC_LOCKBREAK | ||
38 | def_bool n | ||
39 | |||
40 | config GENERIC_TIME | 43 | config GENERIC_TIME |
41 | def_bool y | 44 | def_bool y |
42 | 45 | ||
@@ -89,7 +92,7 @@ config GENERIC_HWEIGHT | |||
89 | def_bool y | 92 | def_bool y |
90 | 93 | ||
91 | config GENERIC_GPIO | 94 | config GENERIC_GPIO |
92 | def_bool n | 95 | bool |
93 | 96 | ||
94 | config ARCH_MAY_HAVE_PC_FDC | 97 | config ARCH_MAY_HAVE_PC_FDC |
95 | def_bool y | 98 | def_bool y |
@@ -100,12 +103,6 @@ config RWSEM_GENERIC_SPINLOCK | |||
100 | config RWSEM_XCHGADD_ALGORITHM | 103 | config RWSEM_XCHGADD_ALGORITHM |
101 | def_bool X86_XADD | 104 | def_bool X86_XADD |
102 | 105 | ||
103 | config ARCH_HAS_ILOG2_U32 | ||
104 | def_bool n | ||
105 | |||
106 | config ARCH_HAS_ILOG2_U64 | ||
107 | def_bool n | ||
108 | |||
109 | config ARCH_HAS_CPU_IDLE_WAIT | 106 | config ARCH_HAS_CPU_IDLE_WAIT |
110 | def_bool y | 107 | def_bool y |
111 | 108 | ||
@@ -119,6 +116,9 @@ config GENERIC_TIME_VSYSCALL | |||
119 | config ARCH_HAS_CPU_RELAX | 116 | config ARCH_HAS_CPU_RELAX |
120 | def_bool y | 117 | def_bool y |
121 | 118 | ||
119 | config ARCH_HAS_DEFAULT_IDLE | ||
120 | def_bool y | ||
121 | |||
122 | config ARCH_HAS_CACHE_LINE_SIZE | 122 | config ARCH_HAS_CACHE_LINE_SIZE |
123 | def_bool y | 123 | def_bool y |
124 | 124 | ||
@@ -147,9 +147,6 @@ config AUDIT_ARCH | |||
147 | bool | 147 | bool |
148 | default X86_64 | 148 | default X86_64 |
149 | 149 | ||
150 | config ARCH_SUPPORTS_AOUT | ||
151 | def_bool y | ||
152 | |||
153 | config ARCH_SUPPORTS_OPTIMIZED_INLINING | 150 | config ARCH_SUPPORTS_OPTIMIZED_INLINING |
154 | def_bool y | 151 | def_bool y |
155 | 152 | ||
@@ -200,6 +197,7 @@ config X86_TRAMPOLINE | |||
200 | config KTIME_SCALAR | 197 | config KTIME_SCALAR |
201 | def_bool X86_32 | 198 | def_bool X86_32 |
202 | source "init/Kconfig" | 199 | source "init/Kconfig" |
200 | source "kernel/Kconfig.freezer" | ||
203 | 201 | ||
204 | menu "Processor type and features" | 202 | menu "Processor type and features" |
205 | 203 | ||
@@ -329,20 +327,6 @@ config X86_BIGSMP | |||
329 | 327 | ||
330 | endif | 328 | endif |
331 | 329 | ||
332 | config X86_RDC321X | ||
333 | bool "RDC R-321x SoC" | ||
334 | depends on X86_32 | ||
335 | select M486 | ||
336 | select X86_REBOOTFIXUPS | ||
337 | select GENERIC_GPIO | ||
338 | select LEDS_CLASS | ||
339 | select LEDS_GPIO | ||
340 | select NEW_LEDS | ||
341 | help | ||
342 | This option is needed for RDC R-321x system-on-chip, also known | ||
343 | as R-8610-(G). | ||
344 | If you don't have one of these chips, you should say N here. | ||
345 | |||
346 | config X86_VSMP | 330 | config X86_VSMP |
347 | bool "Support for ScaleMP vSMP" | 331 | bool "Support for ScaleMP vSMP" |
348 | select PARAVIRT | 332 | select PARAVIRT |
@@ -366,6 +350,16 @@ config X86_VISWS | |||
366 | A kernel compiled for the Visual Workstation will run on general | 350 | A kernel compiled for the Visual Workstation will run on general |
367 | PCs as well. See <file:Documentation/sgi-visws.txt> for details. | 351 | PCs as well. See <file:Documentation/sgi-visws.txt> for details. |
368 | 352 | ||
353 | config X86_RDC321X | ||
354 | bool "RDC R-321x SoC" | ||
355 | depends on X86_32 | ||
356 | select M486 | ||
357 | select X86_REBOOTFIXUPS | ||
358 | help | ||
359 | This option is needed for RDC R-321x system-on-chip, also known | ||
360 | as R-8610-(G). | ||
361 | If you don't have one of these chips, you should say N here. | ||
362 | |||
369 | config SCHED_NO_NO_OMIT_FRAME_POINTER | 363 | config SCHED_NO_NO_OMIT_FRAME_POINTER |
370 | def_bool y | 364 | def_bool y |
371 | prompt "Single-depth WCHAN output" | 365 | prompt "Single-depth WCHAN output" |
@@ -447,7 +441,6 @@ config PARAVIRT_DEBUG | |||
447 | 441 | ||
448 | config MEMTEST | 442 | config MEMTEST |
449 | bool "Memtest" | 443 | bool "Memtest" |
450 | depends on X86_64 | ||
451 | help | 444 | help |
452 | This option adds a kernel parameter 'memtest', which allows memtest | 445 | This option adds a kernel parameter 'memtest', which allows memtest |
453 | to be set. | 446 | to be set. |
@@ -554,6 +547,7 @@ config CALGARY_IOMMU_ENABLED_BY_DEFAULT | |||
554 | config AMD_IOMMU | 547 | config AMD_IOMMU |
555 | bool "AMD IOMMU support" | 548 | bool "AMD IOMMU support" |
556 | select SWIOTLB | 549 | select SWIOTLB |
550 | select PCI_MSI | ||
557 | depends on X86_64 && PCI && ACPI | 551 | depends on X86_64 && PCI && ACPI |
558 | help | 552 | help |
559 | With this option you can enable support for AMD IOMMU hardware in | 553 | With this option you can enable support for AMD IOMMU hardware in |
@@ -578,35 +572,29 @@ config SWIOTLB | |||
578 | 572 | ||
579 | config IOMMU_HELPER | 573 | config IOMMU_HELPER |
580 | def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) | 574 | def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) |
575 | |||
581 | config MAXSMP | 576 | config MAXSMP |
582 | bool "Configure Maximum number of SMP Processors and NUMA Nodes" | 577 | bool "Configure Maximum number of SMP Processors and NUMA Nodes" |
583 | depends on X86_64 && SMP | 578 | depends on X86_64 && SMP && BROKEN |
584 | default n | 579 | default n |
585 | help | 580 | help |
586 | Configure maximum number of CPUS and NUMA Nodes for this architecture. | 581 | Configure maximum number of CPUS and NUMA Nodes for this architecture. |
587 | If unsure, say N. | 582 | If unsure, say N. |
588 | 583 | ||
589 | if MAXSMP | ||
590 | config NR_CPUS | ||
591 | int | ||
592 | default "4096" | ||
593 | endif | ||
594 | |||
595 | if !MAXSMP | ||
596 | config NR_CPUS | 584 | config NR_CPUS |
597 | int "Maximum number of CPUs (2-4096)" | 585 | int "Maximum number of CPUs (2-512)" if !MAXSMP |
598 | range 2 4096 | 586 | range 2 512 |
599 | depends on SMP | 587 | depends on SMP |
588 | default "4096" if MAXSMP | ||
600 | default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 | 589 | default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 |
601 | default "8" | 590 | default "8" |
602 | help | 591 | help |
603 | This allows you to specify the maximum number of CPUs which this | 592 | This allows you to specify the maximum number of CPUs which this |
604 | kernel will support. The maximum supported value is 4096 and the | 593 | kernel will support. The maximum supported value is 512 and the |
605 | minimum value which makes sense is 2. | 594 | minimum value which makes sense is 2. |
606 | 595 | ||
607 | This is purely to save memory - each supported CPU adds | 596 | This is purely to save memory - each supported CPU adds |
608 | approximately eight kilobytes to the kernel image. | 597 | approximately eight kilobytes to the kernel image. |
609 | endif | ||
610 | 598 | ||
611 | config SCHED_SMT | 599 | config SCHED_SMT |
612 | bool "SMT (Hyperthreading) scheduler support" | 600 | bool "SMT (Hyperthreading) scheduler support" |
@@ -789,9 +777,8 @@ config I8K | |||
789 | Say N otherwise. | 777 | Say N otherwise. |
790 | 778 | ||
791 | config X86_REBOOTFIXUPS | 779 | config X86_REBOOTFIXUPS |
792 | def_bool n | 780 | bool "Enable X86 board specific fixups for reboot" |
793 | prompt "Enable X86 board specific fixups for reboot" | 781 | depends on X86_32 |
794 | depends on X86_32 && X86 | ||
795 | ---help--- | 782 | ---help--- |
796 | This enables chipset and/or board specific fixups to be done | 783 | This enables chipset and/or board specific fixups to be done |
797 | in order to get reboot to work correctly. This is only needed on | 784 | in order to get reboot to work correctly. This is only needed on |
@@ -807,23 +794,45 @@ config X86_REBOOTFIXUPS | |||
807 | Say N otherwise. | 794 | Say N otherwise. |
808 | 795 | ||
809 | config MICROCODE | 796 | config MICROCODE |
810 | tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support" | 797 | tristate "/dev/cpu/microcode - microcode support" |
811 | select FW_LOADER | 798 | select FW_LOADER |
812 | ---help--- | 799 | ---help--- |
813 | If you say Y here, you will be able to update the microcode on | 800 | If you say Y here, you will be able to update the microcode on |
814 | Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, | 801 | certain Intel and AMD processors. The Intel support is for the |
815 | Pentium III, Pentium 4, Xeon etc. You will obviously need the | 802 | IA32 family, e.g. Pentium Pro, Pentium II, Pentium III, |
816 | actual microcode binary data itself which is not shipped with the | 803 | Pentium 4, Xeon etc. The AMD support is for family 0x10 and |
817 | Linux kernel. | 804 | 0x11 processors, e.g. Opteron, Phenom and Turion 64 Ultra. |
805 | You will obviously need the actual microcode binary data itself | ||
806 | which is not shipped with the Linux kernel. | ||
818 | 807 | ||
819 | For latest news and information on obtaining all the required | 808 | This option selects the general module only, you need to select |
820 | ingredients for this driver, check: | 809 | at least one vendor specific module as well. |
821 | <http://www.urbanmyth.org/microcode/>. | ||
822 | 810 | ||
823 | To compile this driver as a module, choose M here: the | 811 | To compile this driver as a module, choose M here: the |
824 | module will be called microcode. | 812 | module will be called microcode. |
825 | 813 | ||
826 | config MICROCODE_OLD_INTERFACE | 814 | config MICROCODE_INTEL |
815 | bool "Intel microcode patch loading support" | ||
816 | depends on MICROCODE | ||
817 | default MICROCODE | ||
818 | select FW_LOADER | ||
819 | --help--- | ||
820 | This options enables microcode patch loading support for Intel | ||
821 | processors. | ||
822 | |||
823 | For latest news and information on obtaining all the required | ||
824 | Intel ingredients for this driver, check: | ||
825 | <http://www.urbanmyth.org/microcode/>. | ||
826 | |||
827 | config MICROCODE_AMD | ||
828 | bool "AMD microcode patch loading support" | ||
829 | depends on MICROCODE | ||
830 | select FW_LOADER | ||
831 | --help--- | ||
832 | If you select this option, microcode patch loading support for AMD | ||
833 | processors will be enabled. | ||
834 | |||
835 | config MICROCODE_OLD_INTERFACE | ||
827 | def_bool y | 836 | def_bool y |
828 | depends on MICROCODE | 837 | depends on MICROCODE |
829 | 838 | ||
@@ -953,16 +962,17 @@ config HIGHMEM | |||
953 | depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) | 962 | depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) |
954 | 963 | ||
955 | config X86_PAE | 964 | config X86_PAE |
956 | def_bool n | 965 | bool "PAE (Physical Address Extension) Support" |
957 | prompt "PAE (Physical Address Extension) Support" | ||
958 | depends on X86_32 && !HIGHMEM4G | 966 | depends on X86_32 && !HIGHMEM4G |
959 | select RESOURCES_64BIT | ||
960 | help | 967 | help |
961 | PAE is required for NX support, and furthermore enables | 968 | PAE is required for NX support, and furthermore enables |
962 | larger swapspace support for non-overcommit purposes. It | 969 | larger swapspace support for non-overcommit purposes. It |
963 | has the cost of more pagetable lookup overhead, and also | 970 | has the cost of more pagetable lookup overhead, and also |
964 | consumes more pagetable space per process. | 971 | consumes more pagetable space per process. |
965 | 972 | ||
973 | config ARCH_PHYS_ADDR_T_64BIT | ||
974 | def_bool X86_64 || X86_PAE | ||
975 | |||
966 | # Common NUMA Features | 976 | # Common NUMA Features |
967 | config NUMA | 977 | config NUMA |
968 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" | 978 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" |
@@ -976,9 +986,9 @@ config NUMA | |||
976 | local memory controller of the CPU and add some more | 986 | local memory controller of the CPU and add some more |
977 | NUMA awareness to the kernel. | 987 | NUMA awareness to the kernel. |
978 | 988 | ||
979 | For i386 this is currently highly experimental and should be only | 989 | For 32-bit this is currently highly experimental and should be only |
980 | used for kernel development. It might also cause boot failures. | 990 | used for kernel development. It might also cause boot failures. |
981 | For x86_64 this is recommended on all multiprocessor Opteron systems. | 991 | For 64-bit this is recommended on all multiprocessor Opteron systems. |
982 | If the system is EM64T, you should say N unless your system is | 992 | If the system is EM64T, you should say N unless your system is |
983 | EM64T NUMA. | 993 | EM64T NUMA. |
984 | 994 | ||
@@ -1021,17 +1031,10 @@ config NUMA_EMU | |||
1021 | into virtual nodes when booted with "numa=fake=N", where N is the | 1031 | into virtual nodes when booted with "numa=fake=N", where N is the |
1022 | number of nodes. This is only useful for debugging. | 1032 | number of nodes. This is only useful for debugging. |
1023 | 1033 | ||
1024 | if MAXSMP | ||
1025 | |||
1026 | config NODES_SHIFT | 1034 | config NODES_SHIFT |
1027 | int | 1035 | int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP |
1028 | default "9" | ||
1029 | endif | ||
1030 | |||
1031 | if !MAXSMP | ||
1032 | config NODES_SHIFT | ||
1033 | int "Maximum NUMA Nodes (as a power of 2)" | ||
1034 | range 1 9 if X86_64 | 1036 | range 1 9 if X86_64 |
1037 | default "9" if MAXSMP | ||
1035 | default "6" if X86_64 | 1038 | default "6" if X86_64 |
1036 | default "4" if X86_NUMAQ | 1039 | default "4" if X86_NUMAQ |
1037 | default "3" | 1040 | default "3" |
@@ -1039,7 +1042,6 @@ config NODES_SHIFT | |||
1039 | help | 1042 | help |
1040 | Specify the maximum number of NUMA Nodes available on the target | 1043 | Specify the maximum number of NUMA Nodes available on the target |
1041 | system. Increases memory reserved to accomodate various tables. | 1044 | system. Increases memory reserved to accomodate various tables. |
1042 | endif | ||
1043 | 1045 | ||
1044 | config HAVE_ARCH_BOOTMEM_NODE | 1046 | config HAVE_ARCH_BOOTMEM_NODE |
1045 | def_bool y | 1047 | def_bool y |
@@ -1059,7 +1061,7 @@ config HAVE_ARCH_ALLOC_REMAP | |||
1059 | 1061 | ||
1060 | config ARCH_FLATMEM_ENABLE | 1062 | config ARCH_FLATMEM_ENABLE |
1061 | def_bool y | 1063 | def_bool y |
1062 | depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && X86_PC && !NUMA | 1064 | depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && !NUMA |
1063 | 1065 | ||
1064 | config ARCH_DISCONTIGMEM_ENABLE | 1066 | config ARCH_DISCONTIGMEM_ENABLE |
1065 | def_bool y | 1067 | def_bool y |
@@ -1075,7 +1077,7 @@ config ARCH_SPARSEMEM_DEFAULT | |||
1075 | 1077 | ||
1076 | config ARCH_SPARSEMEM_ENABLE | 1078 | config ARCH_SPARSEMEM_ENABLE |
1077 | def_bool y | 1079 | def_bool y |
1078 | depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) | 1080 | depends on X86_64 || NUMA || (EXPERIMENTAL && X86_PC) || X86_GENERICARCH |
1079 | select SPARSEMEM_STATIC if X86_32 | 1081 | select SPARSEMEM_STATIC if X86_32 |
1080 | select SPARSEMEM_VMEMMAP_ENABLE if X86_64 | 1082 | select SPARSEMEM_VMEMMAP_ENABLE if X86_64 |
1081 | 1083 | ||
@@ -1098,6 +1100,56 @@ config HIGHPTE | |||
1098 | low memory. Setting this option will put user-space page table | 1100 | low memory. Setting this option will put user-space page table |
1099 | entries in high memory. | 1101 | entries in high memory. |
1100 | 1102 | ||
1103 | config X86_CHECK_BIOS_CORRUPTION | ||
1104 | bool "Check for low memory corruption" | ||
1105 | help | ||
1106 | Periodically check for memory corruption in low memory, which | ||
1107 | is suspected to be caused by BIOS. Even when enabled in the | ||
1108 | configuration, it is disabled at runtime. Enable it by | ||
1109 | setting "memory_corruption_check=1" on the kernel command | ||
1110 | line. By default it scans the low 64k of memory every 60 | ||
1111 | seconds; see the memory_corruption_check_size and | ||
1112 | memory_corruption_check_period parameters in | ||
1113 | Documentation/kernel-parameters.txt to adjust this. | ||
1114 | |||
1115 | When enabled with the default parameters, this option has | ||
1116 | almost no overhead, as it reserves a relatively small amount | ||
1117 | of memory and scans it infrequently. It both detects corruption | ||
1118 | and prevents it from affecting the running system. | ||
1119 | |||
1120 | It is, however, intended as a diagnostic tool; if repeatable | ||
1121 | BIOS-originated corruption always affects the same memory, | ||
1122 | you can use memmap= to prevent the kernel from using that | ||
1123 | memory. | ||
1124 | |||
1125 | config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | ||
1126 | bool "Set the default setting of memory_corruption_check" | ||
1127 | depends on X86_CHECK_BIOS_CORRUPTION | ||
1128 | default y | ||
1129 | help | ||
1130 | Set whether the default state of memory_corruption_check is | ||
1131 | on or off. | ||
1132 | |||
1133 | config X86_RESERVE_LOW_64K | ||
1134 | bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | ||
1135 | default y | ||
1136 | help | ||
1137 | Reserve the first 64K of physical RAM on BIOSes that are known | ||
1138 | to potentially corrupt that memory range. A numbers of BIOSes are | ||
1139 | known to utilize this area during suspend/resume, so it must not | ||
1140 | be used by the kernel. | ||
1141 | |||
1142 | Set this to N if you are absolutely sure that you trust the BIOS | ||
1143 | to get all its memory reservations and usages right. | ||
1144 | |||
1145 | If you have doubts about the BIOS (e.g. suspend/resume does not | ||
1146 | work or there's kernel crashes after certain hardware hotplug | ||
1147 | events) and it's not AMI or Phoenix, then you might want to enable | ||
1148 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical | ||
1149 | corruption patterns. | ||
1150 | |||
1151 | Say Y if unsure. | ||
1152 | |||
1101 | config MATH_EMULATION | 1153 | config MATH_EMULATION |
1102 | bool | 1154 | bool |
1103 | prompt "Math emulation" if X86_32 | 1155 | prompt "Math emulation" if X86_32 |
@@ -1156,10 +1208,10 @@ config MTRR | |||
1156 | You can safely say Y even if your machine doesn't have MTRRs, you'll | 1208 | You can safely say Y even if your machine doesn't have MTRRs, you'll |
1157 | just add about 9 KB to your kernel. | 1209 | just add about 9 KB to your kernel. |
1158 | 1210 | ||
1159 | See <file:Documentation/mtrr.txt> for more information. | 1211 | See <file:Documentation/x86/mtrr.txt> for more information. |
1160 | 1212 | ||
1161 | config MTRR_SANITIZER | 1213 | config MTRR_SANITIZER |
1162 | bool | 1214 | def_bool y |
1163 | prompt "MTRR cleanup support" | 1215 | prompt "MTRR cleanup support" |
1164 | depends on MTRR | 1216 | depends on MTRR |
1165 | help | 1217 | help |
@@ -1170,7 +1222,7 @@ config MTRR_SANITIZER | |||
1170 | The largest mtrr entry size for a continous block can be set with | 1222 | The largest mtrr entry size for a continous block can be set with |
1171 | mtrr_chunk_size. | 1223 | mtrr_chunk_size. |
1172 | 1224 | ||
1173 | If unsure, say N. | 1225 | If unsure, say Y. |
1174 | 1226 | ||
1175 | config MTRR_SANITIZER_ENABLE_DEFAULT | 1227 | config MTRR_SANITIZER_ENABLE_DEFAULT |
1176 | int "MTRR cleanup enable value (0-1)" | 1228 | int "MTRR cleanup enable value (0-1)" |
@@ -1205,8 +1257,7 @@ config X86_PAT | |||
1205 | If unsure, say Y. | 1257 | If unsure, say Y. |
1206 | 1258 | ||
1207 | config EFI | 1259 | config EFI |
1208 | def_bool n | 1260 | bool "EFI runtime service support" |
1209 | prompt "EFI runtime service support" | ||
1210 | depends on ACPI | 1261 | depends on ACPI |
1211 | ---help--- | 1262 | ---help--- |
1212 | This enables the kernel to use EFI runtime services that are | 1263 | This enables the kernel to use EFI runtime services that are |
@@ -1219,18 +1270,9 @@ config EFI | |||
1219 | resultant kernel should continue to boot on existing non-EFI | 1270 | resultant kernel should continue to boot on existing non-EFI |
1220 | platforms. | 1271 | platforms. |
1221 | 1272 | ||
1222 | config IRQBALANCE | ||
1223 | def_bool y | ||
1224 | prompt "Enable kernel irq balancing" | ||
1225 | depends on X86_32 && SMP && X86_IO_APIC | ||
1226 | help | ||
1227 | The default yes will allow the kernel to do irq load balancing. | ||
1228 | Saying no will keep the kernel from doing irq load balancing. | ||
1229 | |||
1230 | config SECCOMP | 1273 | config SECCOMP |
1231 | def_bool y | 1274 | def_bool y |
1232 | prompt "Enable seccomp to safely compute untrusted bytecode" | 1275 | prompt "Enable seccomp to safely compute untrusted bytecode" |
1233 | depends on PROC_FS | ||
1234 | help | 1276 | help |
1235 | This kernel feature is useful for number crunching applications | 1277 | This kernel feature is useful for number crunching applications |
1236 | that may need to compute untrusted bytecode during their | 1278 | that may need to compute untrusted bytecode during their |
@@ -1238,7 +1280,7 @@ config SECCOMP | |||
1238 | the process as file descriptors supporting the read/write | 1280 | the process as file descriptors supporting the read/write |
1239 | syscalls, it's possible to isolate those applications in | 1281 | syscalls, it's possible to isolate those applications in |
1240 | their own address space using seccomp. Once seccomp is | 1282 | their own address space using seccomp. Once seccomp is |
1241 | enabled via /proc/<pid>/seccomp, it cannot be disabled | 1283 | enabled via prctl(PR_SET_SECCOMP), it cannot be disabled |
1242 | and the task is only allowed to execute a few safe syscalls | 1284 | and the task is only allowed to execute a few safe syscalls |
1243 | defined by each seccomp mode. | 1285 | defined by each seccomp mode. |
1244 | 1286 | ||
@@ -1288,7 +1330,7 @@ config KEXEC | |||
1288 | strongly in flux, so no good recommendation can be made. | 1330 | strongly in flux, so no good recommendation can be made. |
1289 | 1331 | ||
1290 | config CRASH_DUMP | 1332 | config CRASH_DUMP |
1291 | bool "kernel crash dumps (EXPERIMENTAL)" | 1333 | bool "kernel crash dumps" |
1292 | depends on X86_64 || (X86_32 && HIGHMEM) | 1334 | depends on X86_64 || (X86_32 && HIGHMEM) |
1293 | help | 1335 | help |
1294 | Generate crash dump after being started by kexec. | 1336 | Generate crash dump after being started by kexec. |
@@ -1301,6 +1343,14 @@ config CRASH_DUMP | |||
1301 | (CONFIG_RELOCATABLE=y). | 1343 | (CONFIG_RELOCATABLE=y). |
1302 | For more details see Documentation/kdump/kdump.txt | 1344 | For more details see Documentation/kdump/kdump.txt |
1303 | 1345 | ||
1346 | config KEXEC_JUMP | ||
1347 | bool "kexec jump (EXPERIMENTAL)" | ||
1348 | depends on EXPERIMENTAL | ||
1349 | depends on KEXEC && HIBERNATION && X86_32 | ||
1350 | help | ||
1351 | Jump between original kernel and kexeced kernel and invoke | ||
1352 | code in physical address mode via KEXEC | ||
1353 | |||
1304 | config PHYSICAL_START | 1354 | config PHYSICAL_START |
1305 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) | 1355 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) |
1306 | default "0x1000000" if X86_NUMAQ | 1356 | default "0x1000000" if X86_NUMAQ |
@@ -1387,14 +1437,14 @@ config PHYSICAL_ALIGN | |||
1387 | Don't change this unless you know what you are doing. | 1437 | Don't change this unless you know what you are doing. |
1388 | 1438 | ||
1389 | config HOTPLUG_CPU | 1439 | config HOTPLUG_CPU |
1390 | bool "Support for suspend on SMP and hot-pluggable CPUs (EXPERIMENTAL)" | 1440 | bool "Support for hot-pluggable CPUs" |
1391 | depends on SMP && HOTPLUG && EXPERIMENTAL && !X86_VOYAGER | 1441 | depends on SMP && HOTPLUG && !X86_VOYAGER |
1392 | ---help--- | 1442 | ---help--- |
1393 | Say Y here to experiment with turning CPUs off and on, and to | 1443 | Say Y here to allow turning CPUs off and on. CPUs can be |
1394 | enable suspend on SMP systems. CPUs can be controlled through | 1444 | controlled through /sys/devices/system/cpu. |
1395 | /sys/devices/system/cpu. | 1445 | ( Note: power management support will enable this option |
1396 | Say N if you want to disable CPU hotplug and don't need to | 1446 | automatically on SMP systems. ) |
1397 | suspend. | 1447 | Say N if you want to disable CPU hotplug. |
1398 | 1448 | ||
1399 | config COMPAT_VDSO | 1449 | config COMPAT_VDSO |
1400 | def_bool y | 1450 | def_bool y |
@@ -1409,6 +1459,51 @@ config COMPAT_VDSO | |||
1409 | 1459 | ||
1410 | If unsure, say Y. | 1460 | If unsure, say Y. |
1411 | 1461 | ||
1462 | config CMDLINE_BOOL | ||
1463 | bool "Built-in kernel command line" | ||
1464 | default n | ||
1465 | help | ||
1466 | Allow for specifying boot arguments to the kernel at | ||
1467 | build time. On some systems (e.g. embedded ones), it is | ||
1468 | necessary or convenient to provide some or all of the | ||
1469 | kernel boot arguments with the kernel itself (that is, | ||
1470 | to not rely on the boot loader to provide them.) | ||
1471 | |||
1472 | To compile command line arguments into the kernel, | ||
1473 | set this option to 'Y', then fill in the | ||
1474 | the boot arguments in CONFIG_CMDLINE. | ||
1475 | |||
1476 | Systems with fully functional boot loaders (i.e. non-embedded) | ||
1477 | should leave this option set to 'N'. | ||
1478 | |||
1479 | config CMDLINE | ||
1480 | string "Built-in kernel command string" | ||
1481 | depends on CMDLINE_BOOL | ||
1482 | default "" | ||
1483 | help | ||
1484 | Enter arguments here that should be compiled into the kernel | ||
1485 | image and used at boot time. If the boot loader provides a | ||
1486 | command line at boot time, it is appended to this string to | ||
1487 | form the full kernel command line, when the system boots. | ||
1488 | |||
1489 | However, you can use the CONFIG_CMDLINE_OVERRIDE option to | ||
1490 | change this behavior. | ||
1491 | |||
1492 | In most cases, the command line (whether built-in or provided | ||
1493 | by the boot loader) should specify the device for the root | ||
1494 | file system. | ||
1495 | |||
1496 | config CMDLINE_OVERRIDE | ||
1497 | bool "Built-in command line overrides boot loader arguments" | ||
1498 | default n | ||
1499 | depends on CMDLINE_BOOL | ||
1500 | help | ||
1501 | Set this option to 'Y' to have the kernel ignore the boot loader | ||
1502 | command line, and use ONLY the built-in command line. | ||
1503 | |||
1504 | This is used to work around broken boot loaders. This should | ||
1505 | be set to 'N' under normal conditions. | ||
1506 | |||
1412 | endmenu | 1507 | endmenu |
1413 | 1508 | ||
1414 | config ARCH_ENABLE_MEMORY_HOTPLUG | 1509 | config ARCH_ENABLE_MEMORY_HOTPLUG |
@@ -1567,6 +1662,8 @@ source "arch/x86/kernel/cpu/cpufreq/Kconfig" | |||
1567 | 1662 | ||
1568 | source "drivers/cpuidle/Kconfig" | 1663 | source "drivers/cpuidle/Kconfig" |
1569 | 1664 | ||
1665 | source "drivers/idle/Kconfig" | ||
1666 | |||
1570 | endmenu | 1667 | endmenu |
1571 | 1668 | ||
1572 | 1669 | ||
@@ -1674,6 +1771,14 @@ config DMAR_FLOPPY_WA | |||
1674 | workaround will setup a 1:1 mapping for the first | 1771 | workaround will setup a 1:1 mapping for the first |
1675 | 16M to make floppy (an ISA device) work. | 1772 | 16M to make floppy (an ISA device) work. |
1676 | 1773 | ||
1774 | config INTR_REMAP | ||
1775 | bool "Support for Interrupt Remapping (EXPERIMENTAL)" | ||
1776 | depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL | ||
1777 | help | ||
1778 | Supports Interrupt remapping for IO-APIC and MSI devices. | ||
1779 | To use x2apic mode in the CPU's which support x2APIC enhancements or | ||
1780 | to support platforms with CPU's having > 8 bit APIC ID, say Y. | ||
1781 | |||
1677 | source "drivers/pci/pcie/Kconfig" | 1782 | source "drivers/pci/pcie/Kconfig" |
1678 | 1783 | ||
1679 | source "drivers/pci/Kconfig" | 1784 | source "drivers/pci/Kconfig" |
@@ -1790,7 +1895,7 @@ config IA32_EMULATION | |||
1790 | 1895 | ||
1791 | config IA32_AOUT | 1896 | config IA32_AOUT |
1792 | tristate "IA32 a.out support" | 1897 | tristate "IA32 a.out support" |
1793 | depends on IA32_EMULATION && ARCH_SUPPORTS_AOUT | 1898 | depends on IA32_EMULATION |
1794 | help | 1899 | help |
1795 | Support old a.out binaries in the 32bit emulation. | 1900 | Support old a.out binaries in the 32bit emulation. |
1796 | 1901 | ||
@@ -1804,7 +1909,7 @@ config COMPAT_FOR_U64_ALIGNMENT | |||
1804 | 1909 | ||
1805 | config SYSVIPC_COMPAT | 1910 | config SYSVIPC_COMPAT |
1806 | def_bool y | 1911 | def_bool y |
1807 | depends on X86_64 && COMPAT && SYSVIPC | 1912 | depends on COMPAT && SYSVIPC |
1808 | 1913 | ||
1809 | endmenu | 1914 | endmenu |
1810 | 1915 | ||