summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include
diff options
context:
space:
mode:
authorGavin Shan <shangw@linux.vnet.ibm.com>2013-06-20 07:21:00 +0200
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-06-20 09:06:01 +0200
commitc86085580d5f60d2d3cea9c60d50e284558d3de7 (patch)
tree64a22c76cceb3d9c5e458a2d7c114bf40aae7a07 /arch/powerpc/include
parentpowerpc/eeh: Delay EEH probe during hotplug (diff)
downloadlinux-c86085580d5f60d2d3cea9c60d50e284558d3de7.tar.xz
linux-c86085580d5f60d2d3cea9c60d50e284558d3de7.zip
powerpc/eeh: Single kthread to handle events
We possiblly have multiple kthreads running for multiple EEH errors (events) and use one spinlock to make the process of handling those EEH events serialized. That's unnecessary and the patch creates only one kthread, which is started during EEH core initialization time in eeh_init(). A new semaphore introduced to count the number of existing EEH events in the queue and the kthread waiting on the semaphore. Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include')
-rw-r--r--arch/powerpc/include/asm/eeh_event.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/eeh_event.h b/arch/powerpc/include/asm/eeh_event.h
index de67d830151b..de92c86221e7 100644
--- a/arch/powerpc/include/asm/eeh_event.h
+++ b/arch/powerpc/include/asm/eeh_event.h
@@ -31,6 +31,7 @@ struct eeh_event {
struct eeh_pe *pe; /* EEH PE */
};
+int eeh_event_init(void);
int eeh_send_failure_event(struct eeh_pe *pe);
void eeh_handle_event(struct eeh_pe *pe);