]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge commit 'v2.6.28-rc8' into x86/doc
authorIngo Molnar <mingo@elte.hu>
Tue, 16 Dec 2008 21:04:48 +0000 (22:04 +0100)
committerIngo Molnar <mingo@elte.hu>
Tue, 16 Dec 2008 21:04:48 +0000 (22:04 +0100)
1  2 
arch/x86/Kconfig
arch/x86/include/asm/msr.h

diff --combined arch/x86/Kconfig
index bacac556b18909f0379b8d1acb2f05fa5bb7a01a,ac22bb7719f730e6b8d12b305ec9e08952a513a4..e795b5ba25b2a9cd18d08ad15f5eb9cfc16f8b83
@@@ -28,7 -28,7 +28,7 @@@ config X8
        select HAVE_KRETPROBES
        select HAVE_FTRACE_MCOUNT_RECORD
        select HAVE_DYNAMIC_FTRACE
-       select HAVE_FTRACE
+       select HAVE_FUNCTION_TRACER
        select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
        select HAVE_ARCH_KGDB if !X86_VOYAGER
        select HAVE_ARCH_TRACEHOOK
@@@ -167,9 -167,12 +167,12 @@@ config GENERIC_PENDING_IR
  config X86_SMP
        bool
        depends on SMP && ((X86_32 && !X86_VOYAGER) || X86_64)
-       select USE_GENERIC_SMP_HELPERS
        default y
  
+ config USE_GENERIC_SMP_HELPERS
+       def_bool y
+       depends on SMP
  config X86_32_SMP
        def_bool y
        depends on X86_32 && SMP
@@@ -231,6 -234,10 +234,10 @@@ config SM
  
          If you don't know what to do here, say N.
  
+ config X86_HAS_BOOT_CPU_ID
+       def_bool y
+       depends on X86_VOYAGER
  config X86_FIND_SMP_CONFIG
        def_bool y
        depends on X86_MPPARSE || X86_VOYAGER
@@@ -951,26 -958,22 +958,26 @@@ config ARCH_PHYS_ADDR_T_64BI
  
  # Common NUMA Features
  config NUMA
 -      bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)"
 +      bool "Numa Memory Allocation and Scheduler Support"
        depends on SMP
        depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL)
        default n if X86_PC
        default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP)
        help
          Enable NUMA (Non Uniform Memory Access) support.
 +
          The kernel will try to allocate memory used by a CPU on the
          local memory controller of the CPU and add some more
          NUMA awareness to the kernel.
  
 -        For 32-bit this is currently highly experimental and should be only
 -        used for kernel development. It might also cause boot failures.
 -        For 64-bit this is recommended on all multiprocessor Opteron systems.
 -        If the system is EM64T, you should say N unless your system is
 -        EM64T NUMA.
 +        For 64-bit this is recommended if the system is Intel Core i7
 +        (or later), AMD Opteron, or EM64T NUMA.
 +
 +        For 32-bit this is only needed on (rare) 32-bit-only platforms
 +        that support NUMA topologies, such as NUMAQ / Summit, or if you
 +        boot a 32-bit kernel on a 64-bit NUMA platform.
 +
 +        Otherwise, you should say N.
  
  comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI"
        depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI)
@@@ -1494,7 -1497,7 +1501,7 @@@ config HAVE_ARCH_EARLY_PFN_TO_NI
        def_bool X86_64
        depends on NUMA
  
- menu "Power management options"
+ menu "Power management and ACPI options"
        depends on !X86_VOYAGER
  
  config ARCH_HIBERNATION_HEADER
@@@ -1894,6 -1897,10 +1901,10 @@@ config SYSVIPC_COMPA
  endmenu
  
  
+ config HAVE_ATOMIC_IOMAP
+       def_bool y
+       depends on X86_32
  source "net/Kconfig"
  
  source "drivers/Kconfig"
index 478a9245aae137117b3d13240697a5625522c26c,c2a812ebde890e590794ea1e2d8a39d5cec49e9f..397efa375581188a81a82f644b00b006cd4a2e54
@@@ -22,10 -22,10 +22,10 @@@ static inline unsigned long long native
  }
  
  /*
 - * i386 calling convention returns 64-bit value in edx:eax, while
 - * x86_64 returns at rax. Also, the "A" constraint does not really
 - * mean rdx:rax in x86_64, so we need specialized behaviour for each
 - * architecture
 + * both i386 and x86_64 returns 64-bit value in edx:eax, but gcc's "A"
 + * constraint has different meanings. For i386, "A" means exactly
 + * edx:eax, while for x86_64 it doesn't mean rdx:rax or edx:eax. Instead,
 + * it means rax *or* rdx.
   */
  #ifdef CONFIG_X86_64
  #define DECLARE_ARGS(val, low, high)  unsigned low, high
@@@ -108,9 -108,7 +108,7 @@@ static __always_inline unsigned long lo
  {
        DECLARE_ARGS(val, low, high);
  
-       rdtsc_barrier();
        asm volatile("rdtsc" : EAX_EDX_RET(val, low, high));
-       rdtsc_barrier();
  
        return EAX_EDX_VAL(val, low, high);
  }