Loading arch/mips/kernel/smp.c +13 −1 Original line number Diff line number Diff line Loading @@ -121,7 +121,19 @@ struct call_data_struct *call_data; * or are or have executed. * * You must not call this function with disabled interrupts or from a * hardware interrupt handler or from a bottom half handler. * hardware interrupt handler or from a bottom half handler: * * CPU A CPU B * Disable interrupts * smp_call_function() * Take call_lock * Send IPIs * Wait for all cpus to acknowledge IPI * CPU A has not responded, spin waiting * for cpu A to respond, holding call_lock * smp_call_function() * Spin waiting for call_lock * Deadlock Deadlock */ int smp_call_function (void (*func) (void *info), void *info, int retry, int wait) Loading Loading
arch/mips/kernel/smp.c +13 −1 Original line number Diff line number Diff line Loading @@ -121,7 +121,19 @@ struct call_data_struct *call_data; * or are or have executed. * * You must not call this function with disabled interrupts or from a * hardware interrupt handler or from a bottom half handler. * hardware interrupt handler or from a bottom half handler: * * CPU A CPU B * Disable interrupts * smp_call_function() * Take call_lock * Send IPIs * Wait for all cpus to acknowledge IPI * CPU A has not responded, spin waiting * for cpu A to respond, holding call_lock * smp_call_function() * Spin waiting for call_lock * Deadlock Deadlock */ int smp_call_function (void (*func) (void *info), void *info, int retry, int wait) Loading