On Fri, Apr 25, 2008 at 12:36:33PM -0700, Christoph Lameter wrote:On Fri, 25 Apr 2008, Andi Kleen wrote:
Good idea! Do you have a patch?And we should really add a lot more sanity checking there.A debug mode for virt_to_page(),__pa,__va et.al. would probably make sense
and would have caught it.
I used to have that partly in the x86-64 port with VIRTUAL_BUG_ON.
Yes. Appended. But it just enables the old NUMA VIRTUAL_BUG_ON()s, more work could be done e.g. by instrumenting pa/va and the non NUMA and i386 case too.
--- linux.orig/include/asm-x86/mmzone_64.h--
+++ linux/include/asm-x86/mmzone_64.h
@@ -7,7 +7,11 @@
#ifdef CONFIG_NUMA
+#ifdef CONFIG_DEBUG_VIRTUAL
+#define VIRTUAL_BUG_ON(x) BUG_ON(x)
+#else
#define VIRTUAL_BUG_ON(x)
+#endif
#include <asm/smp.h>