[PATCH] ppc64: PCI error event dispatcher
authorLinas Vepstas <linas@linas.org>
Fri, 4 Nov 2005 00:50:04 +0000 (18:50 -0600)
committerPaul Mackerras <paulus@samba.org>
Thu, 10 Nov 2005 00:38:05 +0000 (11:38 +1100)
commit172ca9261800bacbbc7d320d9924d9b482dff8de
tree7abd6ddf1e6b9a147a0826c374f0d1bca80806d3
parent7f79da7accd63a6adb84f4602f66779f6a701e7b
[PATCH] ppc64: PCI error event dispatcher

12-eeh-event-dispatcher.patch

ppc64: EEH Recovery dispatcher thread

This patch adds a mechanism to create recovery threads when an
EEH event is received.  Since an EEH freeze state may be detected
within an interrupt context, we need to get out of the interrupt
context before starting recovery. This dispatcher does this in
two steps: first, it uses a workqueue to get out, and then
lanuches a kernel thread, so that the recovery routine can
sleep for exteded periods without upseting the keventd.

A kernel thread is created with each EEH event, rather than
having one long-running daemon started at boot time.  This is
because it is anticipated that EEH events will be very rare
(very very rare, ideally) and so its pointless to cluter the
process tables with a daemon that will almost never run.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/platforms/pseries/Makefile
arch/powerpc/platforms/pseries/eeh.c
arch/powerpc/platforms/pseries/eeh_event.c [new file with mode: 0644]
include/asm-powerpc/eeh_event.h [new file with mode: 0644]
include/asm-ppc64/eeh.h