]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
[S390] outstanding interrupts vs. smp_send_stop
authorMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 27 Dec 2011 10:27:22 +0000 (11:27 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 27 Dec 2011 10:27:13 +0000 (11:27 +0100)
commit85ac7ca5972d63d23aa5ea75c3834a33b951f89d
tree851ff1a5500bce5964336960594cb72bff369d13
parent3a3954ceae756ed2a5d53b45c67db6dde3c0c126
[S390] outstanding interrupts vs. smp_send_stop

The panic function will first print the panic message to the console,
then stop additional cpus with smp_send_stop and finally call the
function on the panic notifier list.
In case of an I/O based console the panic message will cause I/O to
be started and a function on the panic notifier list will wait for the
completion of the I/O. That does not work if an I/O completion interrupt
has already been delivered to a cpu that is then stopped by smp_send_stop.
To break this cyclic dependency add code to smp_send_stop that gives
the additional cpu the opportunity to complete outstanding interrupts.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/sigp.h
arch/s390/kernel/smp.c