aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/powernv/setup.c
diff options
context:
space:
mode:
authorVasant Hegde <hegdevasant@linux.vnet.ibm.com>2014-01-15 01:02:04 -0500
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2014-01-15 01:21:18 -0500
commitf7d98d18a01ece2863984d4fb5ae949b18b02715 (patch)
tree062fe89b801c7c017da5fc6403cab2f473492cb4 /arch/powerpc/platforms/powernv/setup.c
parentcb5b242c8c14a4b1dcd358400da28208fde78947 (diff)
powerpc/powernv: Call OPAL sync before kexec'ing
Its possible that OPAL may be writing to host memory during kexec (like dump retrieve scenario). In this situation we might end up corrupting host memory. This patch makes OPAL sync call to make sure OPAL stops writing to host memory before kexec'ing. Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/platforms/powernv/setup.c')
-rw-r--r--arch/powerpc/platforms/powernv/setup.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/powernv/setup.c b/arch/powerpc/platforms/powernv/setup.c
index 19884b2a51b4..a932feb2901c 100644
--- a/arch/powerpc/platforms/powernv/setup.c
+++ b/arch/powerpc/platforms/powernv/setup.c
@@ -145,8 +145,10 @@ static void pnv_shutdown(void)
145 /* Let the PCI code clear up IODA tables */ 145 /* Let the PCI code clear up IODA tables */
146 pnv_pci_shutdown(); 146 pnv_pci_shutdown();
147 147
148 /* And unregister all OPAL interrupts so they don't fire 148 /*
149 * up while we kexec 149 * Stop OPAL activity: Unregister all OPAL interrupts so they
150 * don't fire up while we kexec and make sure all potentially
151 * DMA'ing ops are complete (such as dump retrieval).
150 */ 152 */
151 opal_shutdown(); 153 opal_shutdown();
152} 154}