[PATCH] powerpc: Fix oops if scan_dispatch_log is called too early

Anton Blanchard anton at samba.org
Fri Apr 8 17:44:21 EST 2011

We currently enable interrupts before the dispatch log for the boot
cpu is setup. If a timer interrupt comes in early enough we oops in

Unable to handle kernel paging request for data at address 0x00000010



The patch below adds a check to scan_dispatch_log to ensure the
dispatch log has been allocated.

Signed-off-by: Anton Blanchard <anton at samba.org>
Cc: <stable at kernel.org>

Index: powerpc.git/arch/powerpc/kernel/time.c
--- powerpc.git.orig/arch/powerpc/kernel/time.c	2011-04-05 18:38:40.814489516 +1000
+++ powerpc.git/arch/powerpc/kernel/time.c	2011-04-08 12:16:41.864748155 +1000
@@ -229,6 +229,9 @@ static u64 scan_dispatch_log(u64 stop_tb
 	u64 stolen = 0;
 	u64 dtb;
+	if (!dtl)
+		return 0;
 	if (i == vpa->dtl_idx)
 		return 0;
 	while (i < vpa->dtl_idx) {

More information about the Linuxppc-dev mailing list