• Ashok Raj's avatar
    [PATCH] x86: convert bigsmp to use flat physical mode · 1855a2c4
    Ashok Raj authored
    When we bring up a new CPU via INIT/startup IPI messages, the CPU that's
    coming up sends a xTPR message to the chipset.  Intel chipsets (at least)
    don't provide any architectural guarantee on what the chipset will do with
    this message.  For example, the E850x chipsets uses this xTPR message to
    interpret the interrupt operating mode of the platform.  When the CPU
    coming online sends this message, it always indicates that it is in logical
    flat mode.  For the CPU hotplug case, the platform may already be
    functioning in cluster APIC mode at this time, the chipset can get confused
    and mishandle I/O device and IPI interrupt routing.
    
    The situation eventually gets corrected when the new CPU sends another xTPR
    update when we switch it to cluster mode, but there's a window during which
    the chipset may be in an inconsistent state.  This patch avoids this
    problem by using the flat physical interrupt delivery mode instead of
    cluster mode for bigsmp (>8 cpu) support.
    Signed-off-by: default avatarAshok Raj <ashok.raj@intel.com>
    Signed-off-by: default avatarVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Cc: Andi Kleen <ak@muc.de>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    1855a2c4
mach_apic.h 3.39 KB