diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-06-17 06:52:15 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-17 06:56:49 -0400 |
commit | eadb8a091b27a840de7450f84ecff5ef13476424 (patch) | |
tree | 58c3782d40def63baa8167f3d31e3048cb4c7660 /arch/x86/Kconfig | |
parent | 73874005cd8800440be4299bd095387fff4b90ac (diff) | |
parent | 65795efbd380a832ae508b04dba8f8e53f0b84d9 (diff) |
Merge branch 'linus' into tracing/hw-breakpoints
Conflicts:
arch/x86/Kconfig
arch/x86/kernel/traps.c
arch/x86/power/cpu.c
arch/x86/power/cpu_32.c
kernel/Makefile
Semantic conflict:
arch/x86/kernel/hw_breakpoint.c
Merge reason: Resolve the conflicts, move from put_cpu_no_sched() to
put_cpu() in arch/x86/kernel/hw_breakpoint.c.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 113 |
1 files changed, 83 insertions, 30 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 3033375ed6bc..52421d52f21e 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -47,6 +47,12 @@ config X86 | |||
47 | select HAVE_KERNEL_BZIP2 | 47 | select HAVE_KERNEL_BZIP2 |
48 | select HAVE_KERNEL_LZMA | 48 | select HAVE_KERNEL_LZMA |
49 | select HAVE_HW_BREAKPOINT | 49 | select HAVE_HW_BREAKPOINT |
50 | select HAVE_ARCH_KMEMCHECK | ||
51 | |||
52 | config OUTPUT_FORMAT | ||
53 | string | ||
54 | default "elf32-i386" if X86_32 | ||
55 | default "elf64-x86-64" if X86_64 | ||
50 | 56 | ||
51 | config ARCH_DEFCONFIG | 57 | config ARCH_DEFCONFIG |
52 | string | 58 | string |
@@ -275,15 +281,9 @@ config SPARSE_IRQ | |||
275 | 281 | ||
276 | If you don't know what to do here, say N. | 282 | If you don't know what to do here, say N. |
277 | 283 | ||
278 | config NUMA_MIGRATE_IRQ_DESC | 284 | config NUMA_IRQ_DESC |
279 | bool "Move irq desc when changing irq smp_affinity" | 285 | def_bool y |
280 | depends on SPARSE_IRQ && NUMA | 286 | depends on SPARSE_IRQ && NUMA |
281 | depends on BROKEN | ||
282 | default n | ||
283 | ---help--- | ||
284 | This enables moving irq_desc to cpu/node that irq will use handled. | ||
285 | |||
286 | If you don't know what to do here, say N. | ||
287 | 287 | ||
288 | config X86_MPPARSE | 288 | config X86_MPPARSE |
289 | bool "Enable MPS table" if ACPI | 289 | bool "Enable MPS table" if ACPI |
@@ -356,7 +356,7 @@ config X86_UV | |||
356 | depends on X86_64 | 356 | depends on X86_64 |
357 | depends on X86_EXTENDED_PLATFORM | 357 | depends on X86_EXTENDED_PLATFORM |
358 | depends on NUMA | 358 | depends on NUMA |
359 | select X86_X2APIC | 359 | depends on X86_X2APIC |
360 | ---help--- | 360 | ---help--- |
361 | This option is needed in order to support SGI Ultraviolet systems. | 361 | This option is needed in order to support SGI Ultraviolet systems. |
362 | If you don't have one of these, you should say N here. | 362 | If you don't have one of these, you should say N here. |
@@ -499,6 +499,19 @@ config PARAVIRT | |||
499 | over full virtualization. However, when run without a hypervisor | 499 | over full virtualization. However, when run without a hypervisor |
500 | the kernel is theoretically slower and slightly larger. | 500 | the kernel is theoretically slower and slightly larger. |
501 | 501 | ||
502 | config PARAVIRT_SPINLOCKS | ||
503 | bool "Paravirtualization layer for spinlocks" | ||
504 | depends on PARAVIRT && SMP && EXPERIMENTAL | ||
505 | ---help--- | ||
506 | Paravirtualized spinlocks allow a pvops backend to replace the | ||
507 | spinlock implementation with something virtualization-friendly | ||
508 | (for example, block the virtual CPU rather than spinning). | ||
509 | |||
510 | Unfortunately the downside is an up to 5% performance hit on | ||
511 | native kernels, with various workloads. | ||
512 | |||
513 | If you are unsure how to answer this question, answer N. | ||
514 | |||
502 | config PARAVIRT_CLOCK | 515 | config PARAVIRT_CLOCK |
503 | bool | 516 | bool |
504 | default n | 517 | default n |
@@ -728,6 +741,7 @@ config X86_UP_IOAPIC | |||
728 | config X86_LOCAL_APIC | 741 | config X86_LOCAL_APIC |
729 | def_bool y | 742 | def_bool y |
730 | depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC | 743 | depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC |
744 | select HAVE_PERF_COUNTERS if (!M386 && !M486) | ||
731 | 745 | ||
732 | config X86_IO_APIC | 746 | config X86_IO_APIC |
733 | def_bool y | 747 | def_bool y |
@@ -777,10 +791,26 @@ config X86_MCE | |||
777 | to disable it. MCE support simply ignores non-MCE processors like | 791 | to disable it. MCE support simply ignores non-MCE processors like |
778 | the 386 and 486, so nearly everyone can say Y here. | 792 | the 386 and 486, so nearly everyone can say Y here. |
779 | 793 | ||
794 | config X86_OLD_MCE | ||
795 | depends on X86_32 && X86_MCE | ||
796 | bool "Use legacy machine check code (will go away)" | ||
797 | default n | ||
798 | select X86_ANCIENT_MCE | ||
799 | ---help--- | ||
800 | Use the old i386 machine check code. This is merely intended for | ||
801 | testing in a transition period. Try this if you run into any machine | ||
802 | check related software problems, but report the problem to | ||
803 | linux-kernel. When in doubt say no. | ||
804 | |||
805 | config X86_NEW_MCE | ||
806 | depends on X86_MCE | ||
807 | bool | ||
808 | default y if (!X86_OLD_MCE && X86_32) || X86_64 | ||
809 | |||
780 | config X86_MCE_INTEL | 810 | config X86_MCE_INTEL |
781 | def_bool y | 811 | def_bool y |
782 | prompt "Intel MCE features" | 812 | prompt "Intel MCE features" |
783 | depends on X86_64 && X86_MCE && X86_LOCAL_APIC | 813 | depends on X86_NEW_MCE && X86_LOCAL_APIC |
784 | ---help--- | 814 | ---help--- |
785 | Additional support for intel specific MCE features such as | 815 | Additional support for intel specific MCE features such as |
786 | the thermal monitor. | 816 | the thermal monitor. |
@@ -788,19 +818,36 @@ config X86_MCE_INTEL | |||
788 | config X86_MCE_AMD | 818 | config X86_MCE_AMD |
789 | def_bool y | 819 | def_bool y |
790 | prompt "AMD MCE features" | 820 | prompt "AMD MCE features" |
791 | depends on X86_64 && X86_MCE && X86_LOCAL_APIC | 821 | depends on X86_NEW_MCE && X86_LOCAL_APIC |
792 | ---help--- | 822 | ---help--- |
793 | Additional support for AMD specific MCE features such as | 823 | Additional support for AMD specific MCE features such as |
794 | the DRAM Error Threshold. | 824 | the DRAM Error Threshold. |
795 | 825 | ||
826 | config X86_ANCIENT_MCE | ||
827 | def_bool n | ||
828 | depends on X86_32 | ||
829 | prompt "Support for old Pentium 5 / WinChip machine checks" | ||
830 | ---help--- | ||
831 | Include support for machine check handling on old Pentium 5 or WinChip | ||
832 | systems. These typically need to be enabled explicitely on the command | ||
833 | line. | ||
834 | |||
796 | config X86_MCE_THRESHOLD | 835 | config X86_MCE_THRESHOLD |
797 | depends on X86_MCE_AMD || X86_MCE_INTEL | 836 | depends on X86_MCE_AMD || X86_MCE_INTEL |
798 | bool | 837 | bool |
799 | default y | 838 | default y |
800 | 839 | ||
840 | config X86_MCE_INJECT | ||
841 | depends on X86_NEW_MCE | ||
842 | tristate "Machine check injector support" | ||
843 | ---help--- | ||
844 | Provide support for injecting machine checks for testing purposes. | ||
845 | If you don't know what a machine check is and you don't do kernel | ||
846 | QA it is safe to say n. | ||
847 | |||
801 | config X86_MCE_NONFATAL | 848 | config X86_MCE_NONFATAL |
802 | tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" | 849 | tristate "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" |
803 | depends on X86_32 && X86_MCE | 850 | depends on X86_OLD_MCE |
804 | ---help--- | 851 | ---help--- |
805 | Enabling this feature starts a timer that triggers every 5 seconds which | 852 | Enabling this feature starts a timer that triggers every 5 seconds which |
806 | will look at the machine check registers to see if anything happened. | 853 | will look at the machine check registers to see if anything happened. |
@@ -813,11 +860,15 @@ config X86_MCE_NONFATAL | |||
813 | 860 | ||
814 | config X86_MCE_P4THERMAL | 861 | config X86_MCE_P4THERMAL |
815 | bool "check for P4 thermal throttling interrupt." | 862 | bool "check for P4 thermal throttling interrupt." |
816 | depends on X86_32 && X86_MCE && (X86_UP_APIC || SMP) | 863 | depends on X86_OLD_MCE && X86_MCE && (X86_UP_APIC || SMP) |
817 | ---help--- | 864 | ---help--- |
818 | Enabling this feature will cause a message to be printed when the P4 | 865 | Enabling this feature will cause a message to be printed when the P4 |
819 | enters thermal throttling. | 866 | enters thermal throttling. |
820 | 867 | ||
868 | config X86_THERMAL_VECTOR | ||
869 | def_bool y | ||
870 | depends on X86_MCE_P4THERMAL || X86_MCE_INTEL | ||
871 | |||
821 | config VM86 | 872 | config VM86 |
822 | bool "Enable VM86 support" if EMBEDDED | 873 | bool "Enable VM86 support" if EMBEDDED |
823 | default y | 874 | default y |
@@ -1454,9 +1505,7 @@ config KEXEC_JUMP | |||
1454 | 1505 | ||
1455 | config PHYSICAL_START | 1506 | config PHYSICAL_START |
1456 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) | 1507 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) |
1457 | default "0x1000000" if X86_NUMAQ | 1508 | default "0x1000000" |
1458 | default "0x200000" if X86_64 | ||
1459 | default "0x100000" | ||
1460 | ---help--- | 1509 | ---help--- |
1461 | This gives the physical address where the kernel is loaded. | 1510 | This gives the physical address where the kernel is loaded. |
1462 | 1511 | ||
@@ -1475,15 +1524,15 @@ config PHYSICAL_START | |||
1475 | to be specifically compiled to run from a specific memory area | 1524 | to be specifically compiled to run from a specific memory area |
1476 | (normally a reserved region) and this option comes handy. | 1525 | (normally a reserved region) and this option comes handy. |
1477 | 1526 | ||
1478 | So if you are using bzImage for capturing the crash dump, leave | 1527 | So if you are using bzImage for capturing the crash dump, |
1479 | the value here unchanged to 0x100000 and set CONFIG_RELOCATABLE=y. | 1528 | leave the value here unchanged to 0x1000000 and set |
1480 | Otherwise if you plan to use vmlinux for capturing the crash dump | 1529 | CONFIG_RELOCATABLE=y. Otherwise if you plan to use vmlinux |
1481 | change this value to start of the reserved region (Typically 16MB | 1530 | for capturing the crash dump change this value to start of |
1482 | 0x1000000). In other words, it can be set based on the "X" value as | 1531 | the reserved region. In other words, it can be set based on |
1483 | specified in the "crashkernel=YM@XM" command line boot parameter | 1532 | the "X" value as specified in the "crashkernel=YM@XM" |
1484 | passed to the panic-ed kernel. Typically this parameter is set as | 1533 | command line boot parameter passed to the panic-ed |
1485 | crashkernel=64M@16M. Please take a look at | 1534 | kernel. Please take a look at Documentation/kdump/kdump.txt |
1486 | Documentation/kdump/kdump.txt for more details about crash dumps. | 1535 | for more details about crash dumps. |
1487 | 1536 | ||
1488 | Usage of bzImage for capturing the crash dump is recommended as | 1537 | Usage of bzImage for capturing the crash dump is recommended as |
1489 | one does not have to build two kernels. Same kernel can be used | 1538 | one does not have to build two kernels. Same kernel can be used |
@@ -1496,8 +1545,8 @@ config PHYSICAL_START | |||
1496 | Don't change this unless you know what you are doing. | 1545 | Don't change this unless you know what you are doing. |
1497 | 1546 | ||
1498 | config RELOCATABLE | 1547 | config RELOCATABLE |
1499 | bool "Build a relocatable kernel (EXPERIMENTAL)" | 1548 | bool "Build a relocatable kernel" |
1500 | depends on EXPERIMENTAL | 1549 | default y |
1501 | ---help--- | 1550 | ---help--- |
1502 | This builds a kernel image that retains relocation information | 1551 | This builds a kernel image that retains relocation information |
1503 | so it can be loaded someplace besides the default 1MB. | 1552 | so it can be loaded someplace besides the default 1MB. |
@@ -1512,12 +1561,16 @@ config RELOCATABLE | |||
1512 | it has been loaded at and the compile time physical address | 1561 | it has been loaded at and the compile time physical address |
1513 | (CONFIG_PHYSICAL_START) is ignored. | 1562 | (CONFIG_PHYSICAL_START) is ignored. |
1514 | 1563 | ||
1564 | # Relocation on x86-32 needs some additional build support | ||
1565 | config X86_NEED_RELOCS | ||
1566 | def_bool y | ||
1567 | depends on X86_32 && RELOCATABLE | ||
1568 | |||
1515 | config PHYSICAL_ALIGN | 1569 | config PHYSICAL_ALIGN |
1516 | hex | 1570 | hex |
1517 | prompt "Alignment value to which kernel should be aligned" if X86_32 | 1571 | prompt "Alignment value to which kernel should be aligned" if X86_32 |
1518 | default "0x100000" if X86_32 | 1572 | default "0x1000000" |
1519 | default "0x200000" if X86_64 | 1573 | range 0x2000 0x1000000 |
1520 | range 0x2000 0x400000 | ||
1521 | ---help--- | 1574 | ---help--- |
1522 | This value puts the alignment restrictions on physical address | 1575 | This value puts the alignment restrictions on physical address |
1523 | where kernel is loaded and run from. Kernel is compiled for an | 1576 | where kernel is loaded and run from. Kernel is compiled for an |