[PATCH 2/3] powerpc: use is_kdump_kernel()

Milton Miller miltonm at bga.com
Wed Oct 22 16:39:04 EDT 2008


linux/crash_dump.h defines is_kdump_kernel() to be used by code
that needs to know if the previous kernel crashed instead of
a (clean) boot or reboot.

update the just added powerpc code to use it.

Signed-off-by: Milton Miller <miltonm at bga.com>
---
Built and booted CONFIG_KDUMP_KERNEL=y as a normal kernel

Index: next.git/arch/powerpc/kernel/iommu.c
===================================================================
--- next.git.orig/arch/powerpc/kernel/iommu.c	2008-10-22 07:09:59.000000000 -0500
+++ next.git/arch/powerpc/kernel/iommu.c	2008-10-22 07:09:59.000000000 -0500
@@ -32,6 +32,7 @@
 #include <linux/dma-mapping.h>
 #include <linux/bitops.h>
 #include <linux/iommu-helper.h>
+#include <linux/crash_dump.h>
 #include <asm/io.h>
 #include <asm/prom.h>
 #include <asm/iommu.h>
@@ -460,7 +461,7 @@ void iommu_unmap_sg(struct iommu_table *
 
 static void iommu_table_clear(struct iommu_table *tbl)
 {
-	if (!__kdump_flag) {
+	if (!is_kdump_kernel()) {
 		/* Clear the table in case firmware left allocations in it */
 		ppc_md.tce_free(tbl, tbl->it_offset, tbl->it_size);
 		return;
Index: next.git/arch/powerpc/platforms/cell/ras.c
===================================================================
--- next.git.orig/arch/powerpc/platforms/cell/ras.c	2008-10-22 07:09:59.000000000 -0500
+++ next.git/arch/powerpc/platforms/cell/ras.c	2008-10-22 07:18:57.000000000 -0500
@@ -13,15 +13,15 @@
 #include <linux/kernel.h>
 #include <linux/smp.h>
 #include <linux/reboot.h>
+#include <linux/kexec.h>
+#include <linux/crash_dump.h>
 
 #include <asm/reg.h>
 #include <asm/io.h>
 #include <asm/prom.h>
-#include <asm/kexec.h>
 #include <asm/machdep.h>
 #include <asm/rtas.h>
 #include <asm/cell-regs.h>
-#include <asm/kdump.h>
 
 #include "ras.h"
 
@@ -112,7 +112,7 @@ static int __init cbe_ptcal_enable_on_no
 	int ret = -ENOMEM;
 	unsigned long addr;
 
-	if (__kdump_flag)
+	if (is_kdump_kernel())
 		rtas_call(ptcal_stop_tok, 1, 1, NULL, nid);
 
 	area = kmalloc(sizeof(*area), GFP_KERNEL);
Index: next.git/arch/powerpc/platforms/pseries/iommu.c
===================================================================
--- next.git.orig/arch/powerpc/platforms/pseries/iommu.c	2008-10-22 07:09:59.000000000 -0500
+++ next.git/arch/powerpc/platforms/pseries/iommu.c	2008-10-22 07:09:59.000000000 -0500
@@ -32,6 +32,7 @@
 #include <linux/string.h>
 #include <linux/pci.h>
 #include <linux/dma-mapping.h>
+#include <linux/crash_dump.h>
 #include <asm/io.h>
 #include <asm/prom.h>
 #include <asm/rtas.h>
@@ -44,7 +45,6 @@
 #include <asm/tce.h>
 #include <asm/ppc-pci.h>
 #include <asm/udbg.h>
-#include <asm/kdump.h>
 
 #include "plpar_wrappers.h"
 
@@ -292,7 +292,7 @@ static void iommu_table_setparms(struct 
 
 	tbl->it_base = (unsigned long)__va(*basep);
 
-	if (!__kdump_flag)
+	if (!is_kdump_kernel())
 		memset((void *)tbl->it_base, 0, *sizep);
 
 	tbl->it_busno = phb->bus->number;
Index: next.git/arch/powerpc/include/asm/kdump.h
===================================================================
--- next.git.orig/arch/powerpc/include/asm/kdump.h	2008-10-22 07:09:59.000000000 -0500
+++ next.git/arch/powerpc/include/asm/kdump.h	2008-10-22 07:09:59.000000000 -0500
@@ -20,8 +20,6 @@
 
 #ifndef __ASSEMBLY__
 
-extern unsigned long __kdump_flag;
-
 #if defined(CONFIG_CRASH_DUMP) && !defined(CONFIG_RELOCATABLE)
 extern void reserve_kdump_trampoline(void);
 extern void setup_kdump_trampoline(void);



More information about the kexec mailing list