x86: SGI UV: Fix BAU initialization
authorCliff Wickman <cpw@sgi.com>
Thu, 19 Nov 2009 23:12:43 +0000 (17:12 -0600)
committerIngo Molnar <mingo@elte.hu>
Mon, 23 Nov 2009 18:12:50 +0000 (19:12 +0100)
A memory mapped register that affects the SGI UV Broadcast
Assist Unit's interrupt handling may sometimes be unintialized.

Remove the condition on its initialization, as that condition
can be randomly satisfied by a hardware reset.

Signed-off-by: Cliff Wickman <cpw@sgi.com>
Cc: <stable@kernel.org>
LKML-Reference: <E1NBGB9-0005nU-Dp@eag09.americas.sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/tlb_uv.c

index 503c1f2e8835a585bf45e3bc4abbdddd2de5d0e0..af21e55569002d5f8168b2ebff47a208ec63a516 100644 (file)
@@ -819,10 +819,8 @@ static int __init uv_init_blade(int blade)
         */
        apicid = blade_to_first_apicid(blade);
        pa = uv_read_global_mmr64(pnode, UVH_BAU_DATA_CONFIG);
-       if ((pa & 0xff) != UV_BAU_MESSAGE) {
-               uv_write_global_mmr64(pnode, UVH_BAU_DATA_CONFIG,
+       uv_write_global_mmr64(pnode, UVH_BAU_DATA_CONFIG,
                                      ((apicid << 32) | UV_BAU_MESSAGE));
-       }
        return 0;
 }