Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sun, 15 Jan 2012 19:26:09 +0000 (11:26 -0800)]
* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86, atomic: atomic64_read() take a const pointer
  x86, UV: Update Boot messages for SGI UV2 platform

arch/x86/include/asm/atomic64_32.h
arch/x86/kernel/apic/x2apic_uv_x.c

index 24098aa..fa13f0e 100644 (file)
@@ -82,7 +82,7 @@ static inline void atomic64_set(atomic64_t *v, long long i)
  *
  * Atomically reads the value of @v and returns it.
  */
-static inline long long atomic64_read(atomic64_t *v)
+static inline long long atomic64_read(const atomic64_t *v)
 {
        long long r;
        asm volatile(ATOMIC64_ALTERNATIVE(read)
index 9d59bba..79b05b8 100644 (file)
@@ -769,7 +769,12 @@ void __init uv_system_init(void)
        for(i = 0; i < UVH_NODE_PRESENT_TABLE_DEPTH; i++)
                uv_possible_blades +=
                  hweight64(uv_read_local_mmr( UVH_NODE_PRESENT_TABLE + i * 8));
-       printk(KERN_DEBUG "UV: Found %d blades\n", uv_num_possible_blades());
+
+       /* uv_num_possible_blades() is really the hub count */
+       printk(KERN_INFO "UV: Found %d blades, %d hubs\n",
+                       is_uv1_hub() ? uv_num_possible_blades() :
+                       (uv_num_possible_blades() + 1) / 2,
+                       uv_num_possible_blades());
 
        bytes = sizeof(struct uv_blade_info) * uv_num_possible_blades();
        uv_blade_info = kzalloc(bytes, GFP_KERNEL);