diff options
author | Ingo Molnar <mingo@elte.hu> | 2010-10-25 13:38:43 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-10-25 13:38:52 -0400 |
commit | 7d7a48b76012eeee25871e1d69104dec4b6d740f (patch) | |
tree | c27e3d8bb2e80ad93c7b4a5c850e1ffbc090bcd2 /arch/x86/Kconfig | |
parent | e4072a9a9d186fe86293effe8828faa4be75b4a4 (diff) | |
parent | 229aebb873e29726b91e076161649cf45154b0bf (diff) |
Merge branch 'linus' into x86/urgent
Merge reason: We want to queue up a dependent fix.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 145 |
1 files changed, 63 insertions, 82 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 64e817ec7ff9..299fbc86f570 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -25,14 +25,17 @@ config X86 | |||
25 | select HAVE_IDE | 25 | select HAVE_IDE |
26 | select HAVE_OPROFILE | 26 | select HAVE_OPROFILE |
27 | select HAVE_PERF_EVENTS if (!M386 && !M486) | 27 | select HAVE_PERF_EVENTS if (!M386 && !M486) |
28 | select HAVE_IRQ_WORK | ||
28 | select HAVE_IOREMAP_PROT | 29 | select HAVE_IOREMAP_PROT |
29 | select HAVE_KPROBES | 30 | select HAVE_KPROBES |
31 | select HAVE_MEMBLOCK | ||
30 | select ARCH_WANT_OPTIONAL_GPIOLIB | 32 | select ARCH_WANT_OPTIONAL_GPIOLIB |
31 | select ARCH_WANT_FRAME_POINTERS | 33 | select ARCH_WANT_FRAME_POINTERS |
32 | select HAVE_DMA_ATTRS | 34 | select HAVE_DMA_ATTRS |
33 | select HAVE_KRETPROBES | 35 | select HAVE_KRETPROBES |
34 | select HAVE_OPTPROBES | 36 | select HAVE_OPTPROBES |
35 | select HAVE_FTRACE_MCOUNT_RECORD | 37 | select HAVE_FTRACE_MCOUNT_RECORD |
38 | select HAVE_C_RECORDMCOUNT | ||
36 | select HAVE_DYNAMIC_FTRACE | 39 | select HAVE_DYNAMIC_FTRACE |
37 | select HAVE_FUNCTION_TRACER | 40 | select HAVE_FUNCTION_TRACER |
38 | select HAVE_FUNCTION_GRAPH_TRACER | 41 | select HAVE_FUNCTION_GRAPH_TRACER |
@@ -59,6 +62,12 @@ config X86 | |||
59 | select ANON_INODES | 62 | select ANON_INODES |
60 | select HAVE_ARCH_KMEMCHECK | 63 | select HAVE_ARCH_KMEMCHECK |
61 | select HAVE_USER_RETURN_NOTIFIER | 64 | select HAVE_USER_RETURN_NOTIFIER |
65 | select HAVE_ARCH_JUMP_LABEL | ||
66 | select HAVE_TEXT_POKE_SMP | ||
67 | select HAVE_GENERIC_HARDIRQS | ||
68 | select HAVE_SPARSE_IRQ | ||
69 | select GENERIC_IRQ_PROBE | ||
70 | select GENERIC_PENDING_IRQ if SMP | ||
62 | 71 | ||
63 | config INSTRUCTION_DECODER | 72 | config INSTRUCTION_DECODER |
64 | def_bool (KPROBES || PERF_EVENTS) | 73 | def_bool (KPROBES || PERF_EVENTS) |
@@ -193,27 +202,10 @@ config ARCH_SUPPORTS_OPTIMIZED_INLINING | |||
193 | config ARCH_SUPPORTS_DEBUG_PAGEALLOC | 202 | config ARCH_SUPPORTS_DEBUG_PAGEALLOC |
194 | def_bool y | 203 | def_bool y |
195 | 204 | ||
196 | config HAVE_EARLY_RES | ||
197 | def_bool y | ||
198 | |||
199 | config HAVE_INTEL_TXT | 205 | config HAVE_INTEL_TXT |
200 | def_bool y | 206 | def_bool y |
201 | depends on EXPERIMENTAL && DMAR && ACPI | 207 | depends on EXPERIMENTAL && DMAR && ACPI |
202 | 208 | ||
203 | # Use the generic interrupt handling code in kernel/irq/: | ||
204 | config GENERIC_HARDIRQS | ||
205 | def_bool y | ||
206 | |||
207 | config GENERIC_HARDIRQS_NO__DO_IRQ | ||
208 | def_bool y | ||
209 | |||
210 | config GENERIC_IRQ_PROBE | ||
211 | def_bool y | ||
212 | |||
213 | config GENERIC_PENDING_IRQ | ||
214 | def_bool y | ||
215 | depends on GENERIC_HARDIRQS && SMP | ||
216 | |||
217 | config USE_GENERIC_SMP_HELPERS | 209 | config USE_GENERIC_SMP_HELPERS |
218 | def_bool y | 210 | def_bool y |
219 | depends on SMP | 211 | depends on SMP |
@@ -296,23 +288,6 @@ config X86_X2APIC | |||
296 | 288 | ||
297 | If you don't know what to do here, say N. | 289 | If you don't know what to do here, say N. |
298 | 290 | ||
299 | config SPARSE_IRQ | ||
300 | bool "Support sparse irq numbering" | ||
301 | depends on PCI_MSI || HT_IRQ | ||
302 | ---help--- | ||
303 | This enables support for sparse irqs. This is useful for distro | ||
304 | kernels that want to define a high CONFIG_NR_CPUS value but still | ||
305 | want to have low kernel memory footprint on smaller machines. | ||
306 | |||
307 | ( Sparse IRQs can also be beneficial on NUMA boxes, as they spread | ||
308 | out the irq_desc[] array in a more NUMA-friendly way. ) | ||
309 | |||
310 | If you don't know what to do here, say N. | ||
311 | |||
312 | config NUMA_IRQ_DESC | ||
313 | def_bool y | ||
314 | depends on SPARSE_IRQ && NUMA | ||
315 | |||
316 | config X86_MPPARSE | 291 | config X86_MPPARSE |
317 | bool "Enable MPS table" if ACPI | 292 | bool "Enable MPS table" if ACPI |
318 | default y | 293 | default y |
@@ -518,25 +493,6 @@ if PARAVIRT_GUEST | |||
518 | 493 | ||
519 | source "arch/x86/xen/Kconfig" | 494 | source "arch/x86/xen/Kconfig" |
520 | 495 | ||
521 | config VMI | ||
522 | bool "VMI Guest support (DEPRECATED)" | ||
523 | select PARAVIRT | ||
524 | depends on X86_32 | ||
525 | ---help--- | ||
526 | VMI provides a paravirtualized interface to the VMware ESX server | ||
527 | (it could be used by other hypervisors in theory too, but is not | ||
528 | at the moment), by linking the kernel to a GPL-ed ROM module | ||
529 | provided by the hypervisor. | ||
530 | |||
531 | As of September 2009, VMware has started a phased retirement | ||
532 | of this feature from VMware's products. Please see | ||
533 | feature-removal-schedule.txt for details. If you are | ||
534 | planning to enable this option, please note that you cannot | ||
535 | live migrate a VMI enabled VM to a future VMware product, | ||
536 | which doesn't support VMI. So if you expect your kernel to | ||
537 | seamlessly migrate to newer VMware products, keep this | ||
538 | disabled. | ||
539 | |||
540 | config KVM_CLOCK | 496 | config KVM_CLOCK |
541 | bool "KVM paravirtualized clock" | 497 | bool "KVM paravirtualized clock" |
542 | select PARAVIRT | 498 | select PARAVIRT |
@@ -591,16 +547,7 @@ config PARAVIRT_DEBUG | |||
591 | a paravirt_op is missing when it is called. | 547 | a paravirt_op is missing when it is called. |
592 | 548 | ||
593 | config NO_BOOTMEM | 549 | config NO_BOOTMEM |
594 | default y | 550 | def_bool y |
595 | bool "Disable Bootmem code" | ||
596 | ---help--- | ||
597 | Use early_res directly instead of bootmem before slab is ready. | ||
598 | - allocator (buddy) [generic] | ||
599 | - early allocator (bootmem) [generic] | ||
600 | - very early allocator (reserve_early*()) [x86] | ||
601 | - very very early allocator (early brk model) [x86] | ||
602 | So reduce one layer between early allocator to final allocator | ||
603 | |||
604 | 551 | ||
605 | config MEMTEST | 552 | config MEMTEST |
606 | bool "Memtest" | 553 | bool "Memtest" |
@@ -671,7 +618,7 @@ config GART_IOMMU | |||
671 | bool "GART IOMMU support" if EMBEDDED | 618 | bool "GART IOMMU support" if EMBEDDED |
672 | default y | 619 | default y |
673 | select SWIOTLB | 620 | select SWIOTLB |
674 | depends on X86_64 && PCI && K8_NB | 621 | depends on X86_64 && PCI && AMD_NB |
675 | ---help--- | 622 | ---help--- |
676 | Support for full DMA access of devices with 32bit memory access only | 623 | Support for full DMA access of devices with 32bit memory access only |
677 | on systems with more than 3GB. This is usually needed for USB, | 624 | on systems with more than 3GB. This is usually needed for USB, |
@@ -796,6 +743,17 @@ config SCHED_MC | |||
796 | making when dealing with multi-core CPU chips at a cost of slightly | 743 | making when dealing with multi-core CPU chips at a cost of slightly |
797 | increased overhead in some places. If unsure say N here. | 744 | increased overhead in some places. If unsure say N here. |
798 | 745 | ||
746 | config IRQ_TIME_ACCOUNTING | ||
747 | bool "Fine granularity task level IRQ time accounting" | ||
748 | default n | ||
749 | ---help--- | ||
750 | Select this option to enable fine granularity task irq time | ||
751 | accounting. This is done by reading a timestamp on each | ||
752 | transitions between softirq and hardirq state, so there can be a | ||
753 | small performance impact. | ||
754 | |||
755 | If in doubt, say N here. | ||
756 | |||
799 | source "kernel/Kconfig.preempt" | 757 | source "kernel/Kconfig.preempt" |
800 | 758 | ||
801 | config X86_UP_APIC | 759 | config X86_UP_APIC |
@@ -1149,6 +1107,9 @@ config X86_PAE | |||
1149 | config ARCH_PHYS_ADDR_T_64BIT | 1107 | config ARCH_PHYS_ADDR_T_64BIT |
1150 | def_bool X86_64 || X86_PAE | 1108 | def_bool X86_64 || X86_PAE |
1151 | 1109 | ||
1110 | config ARCH_DMA_ADDR_T_64BIT | ||
1111 | def_bool X86_64 || HIGHMEM64G | ||
1112 | |||
1152 | config DIRECT_GBPAGES | 1113 | config DIRECT_GBPAGES |
1153 | bool "Enable 1GB pages for kernel pagetables" if EMBEDDED | 1114 | bool "Enable 1GB pages for kernel pagetables" if EMBEDDED |
1154 | default y | 1115 | default y |
@@ -1327,25 +1288,34 @@ config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK | |||
1327 | Set whether the default state of memory_corruption_check is | 1288 | Set whether the default state of memory_corruption_check is |
1328 | on or off. | 1289 | on or off. |
1329 | 1290 | ||
1330 | config X86_RESERVE_LOW_64K | 1291 | config X86_RESERVE_LOW |
1331 | bool "Reserve low 64K of RAM on AMI/Phoenix BIOSen" | 1292 | int "Amount of low memory, in kilobytes, to reserve for the BIOS" |
1332 | default y | 1293 | default 64 |
1294 | range 4 640 | ||
1333 | ---help--- | 1295 | ---help--- |
1334 | Reserve the first 64K of physical RAM on BIOSes that are known | 1296 | Specify the amount of low memory to reserve for the BIOS. |
1335 | to potentially corrupt that memory range. A numbers of BIOSes are | 1297 | |
1336 | known to utilize this area during suspend/resume, so it must not | 1298 | The first page contains BIOS data structures that the kernel |
1337 | be used by the kernel. | 1299 | must not use, so that page must always be reserved. |
1300 | |||
1301 | By default we reserve the first 64K of physical RAM, as a | ||
1302 | number of BIOSes are known to corrupt that memory range | ||
1303 | during events such as suspend/resume or monitor cable | ||
1304 | insertion, so it must not be used by the kernel. | ||
1338 | 1305 | ||
1339 | Set this to N if you are absolutely sure that you trust the BIOS | 1306 | You can set this to 4 if you are absolutely sure that you |
1340 | to get all its memory reservations and usages right. | 1307 | trust the BIOS to get all its memory reservations and usages |
1308 | right. If you know your BIOS have problems beyond the | ||
1309 | default 64K area, you can set this to 640 to avoid using the | ||
1310 | entire low memory range. | ||
1341 | 1311 | ||
1342 | If you have doubts about the BIOS (e.g. suspend/resume does not | 1312 | If you have doubts about the BIOS (e.g. suspend/resume does |
1343 | work or there's kernel crashes after certain hardware hotplug | 1313 | not work or there's kernel crashes after certain hardware |
1344 | events) and it's not AMI or Phoenix, then you might want to enable | 1314 | hotplug events) then you might want to enable |
1345 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical | 1315 | X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check |
1346 | corruption patterns. | 1316 | typical corruption patterns. |
1347 | 1317 | ||
1348 | Say Y if unsure. | 1318 | Leave this to the default value of 64 if you are unsure. |
1349 | 1319 | ||
1350 | config MATH_EMULATION | 1320 | config MATH_EMULATION |
1351 | bool | 1321 | bool |
@@ -1901,7 +1871,7 @@ config PCI_GODIRECT | |||
1901 | bool "Direct" | 1871 | bool "Direct" |
1902 | 1872 | ||
1903 | config PCI_GOOLPC | 1873 | config PCI_GOOLPC |
1904 | bool "OLPC" | 1874 | bool "OLPC XO-1" |
1905 | depends on OLPC | 1875 | depends on OLPC |
1906 | 1876 | ||
1907 | config PCI_GOANY | 1877 | config PCI_GOANY |
@@ -2062,14 +2032,21 @@ config SCx200HR_TIMER | |||
2062 | config OLPC | 2032 | config OLPC |
2063 | bool "One Laptop Per Child support" | 2033 | bool "One Laptop Per Child support" |
2064 | select GPIOLIB | 2034 | select GPIOLIB |
2035 | select OLPC_OPENFIRMWARE | ||
2065 | ---help--- | 2036 | ---help--- |
2066 | Add support for detecting the unique features of the OLPC | 2037 | Add support for detecting the unique features of the OLPC |
2067 | XO hardware. | 2038 | XO hardware. |
2068 | 2039 | ||
2040 | config OLPC_XO1 | ||
2041 | tristate "OLPC XO-1 support" | ||
2042 | depends on OLPC && PCI | ||
2043 | ---help--- | ||
2044 | Add support for non-essential features of the OLPC XO-1 laptop. | ||
2045 | |||
2069 | config OLPC_OPENFIRMWARE | 2046 | config OLPC_OPENFIRMWARE |
2070 | bool "Support for OLPC's Open Firmware" | 2047 | bool "Support for OLPC's Open Firmware" |
2071 | depends on !X86_64 && !X86_PAE | 2048 | depends on !X86_64 && !X86_PAE |
2072 | default y if OLPC | 2049 | default n |
2073 | help | 2050 | help |
2074 | This option adds support for the implementation of Open Firmware | 2051 | This option adds support for the implementation of Open Firmware |
2075 | that is used on the OLPC XO-1 Children's Machine. | 2052 | that is used on the OLPC XO-1 Children's Machine. |
@@ -2077,7 +2054,7 @@ config OLPC_OPENFIRMWARE | |||
2077 | 2054 | ||
2078 | endif # X86_32 | 2055 | endif # X86_32 |
2079 | 2056 | ||
2080 | config K8_NB | 2057 | config AMD_NB |
2081 | def_bool y | 2058 | def_bool y |
2082 | depends on CPU_SUP_AMD && PCI | 2059 | depends on CPU_SUP_AMD && PCI |
2083 | 2060 | ||
@@ -2126,6 +2103,10 @@ config HAVE_ATOMIC_IOMAP | |||
2126 | def_bool y | 2103 | def_bool y |
2127 | depends on X86_32 | 2104 | depends on X86_32 |
2128 | 2105 | ||
2106 | config HAVE_TEXT_POKE_SMP | ||
2107 | bool | ||
2108 | select STOP_MACHINE if SMP | ||
2109 | |||
2129 | source "net/Kconfig" | 2110 | source "net/Kconfig" |
2130 | 2111 | ||
2131 | source "drivers/Kconfig" | 2112 | source "drivers/Kconfig" |