[Cbe-oss-dev] Hardware watchpoints cause kernel hang

Masato Noguchi Masato.Noguchi at jp.sony.com
Fri Feb 16 19:55:42 EST 2007


<Paul_Rasmussen at playstation.sony.com> wrote: (2007/02/16 11:15)
(snip...)
> For starters, the source code I have access to doesn't match your patch.

I guess paul uses oldtime kernel based on 2.6.16.
For your convenience, I attached modified patch agaist for it.

And, I confirmed that arnd's patch fixes the bug on PS3 by using 
a ppu-gdb from BSC (it can reproduce the bug.)


Arnd, Thanks for your clarification.



Signed-off-by: Arnd Bergmann <arnd.bergmann at de.ibm.com>
Signed-off-by: Masato Noguchi <Masato.Noguchi at jp.sony.com>

---
Index: linux/arch/powerpc/platforms/ps3pf/setup.c
===================================================================
--- linux.orig/arch/powerpc/platforms/ps3pf/setup.c
+++ linux/arch/powerpc/platforms/ps3pf/setup.c
@@ -1018,6 +1018,16 @@ static void __init ps3pf_progress(char *
 	printk("*** %04x : %s\n", hex, s ? s : "");
 }
 
+static int ps3pf_set_dabr(unsigned long dabr)
+{
+	enum {
+		DABRX_KERNEL = 2,
+		DABRX_USER = 1,
+	};
+	if (lv1_set_dabr(dabr, DABRX_KERNEL | DABRX_USER))
+		return -1;
+	return 0;
+}
 
 /*
  * Called very early, MMU is off, device-tree isn't unflattened
@@ -1359,6 +1369,7 @@ struct machdep_calls __initdata ps3pf_md
 	.get_boot_time		= ps3pf_get_boot_time,
 	.set_rtc_time		= ps3pf_set_rtc_time,
 	.get_rtc_time		= ps3pf_get_rtc_time,
+	.set_dabr		= ps3pf_set_dabr,
 	.calibrate_decr		= ps3pf_calibrate_decr,
 	.progress		= ps3pf_progress,
 #ifdef CONFIG_KEXEC




More information about the cbe-oss-dev mailing list