• Cliff Wickman's avatar
    x86: Fix UV BAU activation descriptor init · 0e2595cd
    Cliff Wickman authored
    The UV tlb shootdown code has a serious initialization error.
    
    An array of structures [32*8] is initialized as if it were [32].
    The array is indexed by (cpu number on the blade)*8, so the short
    initialization works for up to 4 cpus on a blade.
    But above that, we provide an invalid opcode to the hub's
    broadcast assist unit.
    
    This patch changes the allocation of the array to use its symbolic
    dimensions for better clarity. And initializes all 32*8 entries.
    
    Shortened 'UV_ACTIVATION_DESCRIPTOR_SIZE' to 'UV_ADP_SIZE' per Ingo's
    recommendation.
    
    Tested on the UV simulator.
    Signed-off-by: default avatarCliff Wickman <cpw@sgi.com>
    Cc: <stable@kernel.org>
    LKML-Reference: <E1M6lZR-0007kV-Aq@eag09.americas.sgi.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    0e2595cd
uv_bau.h 10.5 KB