vserver 2.0 rc7
[linux-2.6.git] / arch / x86_64 / Kconfig
index 7bb22c5..4268bee 100644 (file)
@@ -41,38 +41,17 @@ config RWSEM_GENERIC_SPINLOCK
 config RWSEM_XCHGADD_ALGORITHM
        bool
 
 config RWSEM_XCHGADD_ALGORITHM
        bool
 
-config X86_CMPXCHG
+config GENERIC_CALIBRATE_DELAY
        bool
        default y
 
        bool
        default y
 
-config EARLY_PRINTK
+config X86_CMPXCHG
        bool
        default y
        bool
        default y
-       help
-         Write kernel log output directly into the VGA buffer or to a serial
-         port.
 
 
-         This is useful for kernel debugging when your machine crashes very
-         early before the console code is initialized. For normal operation
-         it is not recommended because it looks ugly and doesn't cooperate
-         with klogd/syslogd or the X server. You should normally N here,
-         unless you want to debug such a crash.
-
-config HPET_TIMER
+config EARLY_PRINTK
        bool
        default y
        bool
        default y
-       help
-         Use the IA-PC HPET (High Precision Event Timer) to manage
-         time in preference to the PIT and RTC, if a HPET is
-         present.  The HPET provides a stable time base on SMP
-         systems, unlike the RTC, but it is more expensive to access,
-         as it is off-chip.  You can find the HPET spec at
-         <http://www.intel.com/labs/platcomp/hpet/hpetspec.htm>.
-
-         If unsure, say Y.
-
-config HPET_EMULATE_RTC
-       def_bool HPET_TIMER && RTC=y
 
 config GENERIC_ISA_DMA
        bool
 
 config GENERIC_ISA_DMA
        bool
@@ -97,10 +76,11 @@ config MK8
          Optimize for AMD Opteron/Athlon64/Hammer/K8 CPUs.
 
 config MPSC
          Optimize for AMD Opteron/Athlon64/Hammer/K8 CPUs.
 
 config MPSC
-       bool "Intel x86-64"
+       bool "Intel EM64T"
        help
        help
-         Optimize for Intel IA32 with 64bit extension CPUs
-         (Prescott/Nocona/Potomac)
+         Optimize for Intel Pentium 4 and Xeon CPUs with Intel
+         Extended Memory 64 Technology(EM64T). For details see
+         <http://www.intel.com/technology/64bitextensions/>.
 
 config GENERIC_CPU
        bool "Generic-x86-64"
 
 config GENERIC_CPU
        bool "Generic-x86-64"
@@ -243,10 +223,21 @@ config PREEMPT
          Say Y here if you are feeling brave and building a kernel for a
          desktop, embedded or real-time system.  Say N if you are unsure.
 
          Say Y here if you are feeling brave and building a kernel for a
          desktop, embedded or real-time system.  Say N if you are unsure.
 
+config PREEMPT_BKL
+       bool "Preempt The Big Kernel Lock"
+       depends on PREEMPT
+       default y
+       help
+         This option reduces the latency of the kernel by making the
+         big kernel lock preemptible.
+
+         Say Y here if you are building a kernel for a desktop system.
+         Say N if you are unsure.
+
 config SCHED_SMT
        bool "SMT (Hyperthreading) scheduler support"
        depends on SMP
 config SCHED_SMT
        bool "SMT (Hyperthreading) scheduler support"
        depends on SMP
-       default off
+       default n
        help
          SMT scheduler support improves the CPU scheduler's decision making
          when dealing with Intel Pentium 4 chips with HyperThreading at a
        help
          SMT scheduler support improves the CPU scheduler's decision making
          when dealing with Intel Pentium 4 chips with HyperThreading at a
@@ -255,6 +246,7 @@ config SCHED_SMT
 
 config K8_NUMA
        bool "K8 NUMA support"
 
 config K8_NUMA
        bool "K8 NUMA support"
+       select NUMA
        depends on SMP
        help
          Enable NUMA (Non Unified Memory Architecture) support for
        depends on SMP
        help
          Enable NUMA (Non Unified Memory Architecture) support for
@@ -264,38 +256,75 @@ config K8_NUMA
          This code is recommended on all multiprocessor Opteron systems
          and normally doesn't hurt on others.
 
          This code is recommended on all multiprocessor Opteron systems
          and normally doesn't hurt on others.
 
+config NUMA_EMU
+       bool "NUMA emulation support"
+       select NUMA
+       depends on SMP
+       help
+         Enable NUMA emulation. A flat machine will be split
+         into virtual nodes when booted with "numa=fake=N", where N is the
+         number of nodes. This is only useful for debugging.
+
 config DISCONTIGMEM
        bool
 config DISCONTIGMEM
        bool
-       depends on K8_NUMA
+       depends on NUMA
        default y
 
 config NUMA
        bool
        default y
 
 config NUMA
        bool
-       depends on K8_NUMA
-       default y
+       default n
 
 config HAVE_DEC_LOCK
        bool
        depends on SMP
        default y
 
 
 config HAVE_DEC_LOCK
        bool
        depends on SMP
        default y
 
-# actually 64 maximum, but you need to fix the APIC code first
-# to use clustered mode or whatever your big iron needs
 config NR_CPUS
 config NR_CPUS
-       int "Maximum number of CPUs (2-8)"
-       range 2 8
+       int "Maximum number of CPUs (2-256)"
+       range 2 256
        depends on SMP
        default "8"
        help
          This allows you to specify the maximum number of CPUs which this
        depends on SMP
        default "8"
        help
          This allows you to specify the maximum number of CPUs which this
-         kernel will support.  The maximum supported value is 32 and the
-         minimum value which makes sense is 2.
+         kernel will support. Current maximum is 256 CPUs due to
+         APIC addressing limits. Less depending on the hardware.
 
          This is purely to save memory - each supported CPU requires
          memory in the static kernel configuration.
 
 
          This is purely to save memory - each supported CPU requires
          memory in the static kernel configuration.
 
+config HPET_TIMER
+       bool
+       default y
+       help
+         Use the IA-PC HPET (High Precision Event Timer) to manage
+         time in preference to the PIT and RTC, if a HPET is
+         present.  The HPET provides a stable time base on SMP
+         systems, unlike the TSC, but it is more expensive to access,
+         as it is off-chip.  You can find the HPET spec at
+         <http://www.intel.com/labs/platcomp/hpet/hpetspec.htm>.
+
+config X86_PM_TIMER
+       bool "PM timer"
+       depends on ACPI
+       default y
+       help
+         Support the ACPI PM timer for time keeping. This is slow,
+         but is useful on some chipsets without HPET on systems with more
+         than one CPU. On a single processor or single socket multi core
+         system it is normally not required.
+         When the PM timer is active 64bit vsyscalls are disabled
+         and should not be enabled (/proc/sys/kernel/vsyscall64 should
+         not be changed).
+         The kernel selects the PM timer only as a last resort, so it is
+         useful to enable just in case.
+
+config HPET_EMULATE_RTC
+       bool "Provide RTC interrupt"
+       depends on HPET_TIMER && RTC=y
+
 config GART_IOMMU
        bool "IOMMU support"
 config GART_IOMMU
        bool "IOMMU support"
+       depends on PCI
        help
          Support the K8 IOMMU. Needed to run systems with more than 4GB of memory
          properly with 32-bit PCI devices that do not support DAC (Double Address
        help
          Support the K8 IOMMU. Needed to run systems with more than 4GB of memory
          properly with 32-bit PCI devices that do not support DAC (Double Address
@@ -327,8 +356,48 @@ config X86_MCE
           machine check error logs. See
           ftp://ftp.x86-64.org/pub/linux/tools/mcelog
 
           machine check error logs. See
           ftp://ftp.x86-64.org/pub/linux/tools/mcelog
 
+config X86_MCE_INTEL
+       bool "Intel MCE features"
+       depends on X86_MCE && X86_LOCAL_APIC
+       default y
+       help
+          Additional support for intel specific MCE features such as
+          the thermal monitor.
+
+config SECCOMP
+       bool "Enable seccomp to safely compute untrusted bytecode"
+       depends on PROC_FS
+       default y
+       help
+         This kernel feature is useful for number crunching applications
+         that may need to compute untrusted bytecode during their
+         execution. By using pipes or other transports made available to
+         the process as file descriptors supporting the read/write
+         syscalls, it's possible to isolate those applications in
+         their own address space using seccomp. Once seccomp is
+         enabled via /proc/<pid>/seccomp, it cannot be disabled
+         and the task is only allowed to execute a few safe syscalls
+         defined by each seccomp mode.
+
+         If unsure, say Y. Only embedded should say N here.
+
 endmenu
 
 endmenu
 
+#
+# Use the generic interrupt handling code in kernel/irq/:
+#
+config GENERIC_HARDIRQS
+       bool
+       default y
+
+config GENERIC_IRQ_PROBE
+       bool
+       default y
+
+# we have no ISA slots, but we do have ISA-style DMA.
+config ISA_DMA_API
+       bool
+       default y
 
 menu "Power management options"
 
 
 menu "Power management options"
 
@@ -353,7 +422,7 @@ config PCI_DIRECT
 
 config PCI_MMCONFIG
        bool "Support mmconfig PCI config space access"
 
 config PCI_MMCONFIG
        bool "Support mmconfig PCI config space access"
-       depends on PCI
+       depends on PCI && ACPI
        select ACPI_BOOT
 
 config UNORDERED_IO
        select ACPI_BOOT
 
 config UNORDERED_IO
@@ -366,6 +435,8 @@ config UNORDERED_IO
         from i386. Requires that the driver writer used memory barriers
         properly.
 
         from i386. Requires that the driver writer used memory barriers
         properly.
 
+source "drivers/pci/pcie/Kconfig"
+
 source "drivers/pci/Kconfig"
 
 source "drivers/pcmcia/Kconfig"
 source "drivers/pci/Kconfig"
 
 source "drivers/pcmcia/Kconfig"