• David S. Miller's avatar
    sparc64: Do not disable interrupts in nmi_cpu_busy() · 3554b332
    David S. Miller authored
    [ Upstream commit 58556104
    
     ]
    
    nmi_cpu_busy() is a SMP function call that just makes sure that all of the
    cpus are spinning using cpu cycles while the NMI test runs.
    
    It does not need to disable IRQs because we just care about NMIs executing
    which will even with 'normal' IRQs disabled.
    
    It is not legal to enable hard IRQs in a SMP cross call, in fact this bug
    triggers the BUG check in irq_work_run_list():
    
    	BUG_ON(!irqs_disabled());
    
    Because now irq_work_run() is invoked from the tail of
    generic_smp_call_function_single_interrupt().
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    Signed-off-by: default avatarKamal Mostafa <kamal@canonical.com>
    3554b332
nmi.c 6.13 KB