x86/uv: Fix UV2 BAU legacy mode

The SGI Altix UV2 BAU (Broadcast Assist Unit) as used for
tlb-shootdown (selective broadcast mode) always uses UV2
broadcast descriptor format. There is no need to clear the
'legacy' (UV1) mode, because the hardware always uses UV2 mode
for selective broadcast.

But the BIOS uses general broadcast and legacy mode, and the
hardware pays attention to the legacy mode bit for general
broadcast. So the kernel must not clear that mode bit.

Signed-off-by: Cliff Wickman <cpw@sgi.com>
Cc: <stable@kernel.org>
Link: http://lkml.kernel.org/r/E1SccoO-0002Lh-Cb@eag09.americas.sgi.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>

authored by Cliff Wickman and committed by Ingo Molnar d5d2d2ee bd2753b2

-2
-1
arch/x86/include/asm/uv/uv_bau.h
··· 149 149 /* 4 bits of software ack period */ 150 150 #define UV2_ACK_MASK 0x7UL 151 151 #define UV2_ACK_UNITS_SHFT 3 152 - #define UV2_LEG_SHFT UV2H_LB_BAU_MISC_CONTROL_USE_LEGACY_DESCRIPTOR_FORMATS_SHFT 153 152 #define UV2_EXT_SHFT UV2H_LB_BAU_MISC_CONTROL_ENABLE_EXTENDED_SB_STATUS_SHFT 154 153 155 154 /*
-1
arch/x86/platform/uv/tlb_uv.c
··· 1295 1295 */ 1296 1296 mmr_image |= (1L << SOFTACK_MSHIFT); 1297 1297 if (is_uv2_hub()) { 1298 - mmr_image &= ~(1L << UV2_LEG_SHFT); 1299 1298 mmr_image |= (1L << UV2_EXT_SHFT); 1300 1299 } 1301 1300 write_mmr_misc_control(pnode, mmr_image);