Re: [PATCH] Make LIST_POISON less deadly

From: Avi Kivity
Date: Mon May 19 2008 - 09:25:05 EST

Ingo Molnar wrote:
+ * Define LIST_POISON[12] as pointers that cannot be dereferenced.
+ */
+#ifdef CONFIG_X86_84
+# undef LIST_POISON1
+# undef LIST_POISON2
+# define LIST_POISON1 ((void *)0x8001000100010001L)
+# define LIST_POISON2 ((void *)0x8002000200020002L)

i'd suggest to add an ARCH_ILLEGAL_POINTER define instead, which defaults to zero and gets added to pointer-ish poison values. That makes it both simpler and also it does not need any include/asm changes because ARCH_ILLEGAL_POINTER can be set from the Kconfig space.


How much unmapped space do we have on i386 or other archs? The deltas added to ARCH_ILLEGAL_POINTER will have to be limited to that.

Maybe have ARCH_ILLEGAL_POINTER_BASE and ARCH_ILLEGAL_POINTER_RANGE, defaulting to 0 and (say) 4MB, and use the range to mask the deltas to avoid overflows into legal pointer range.

error compiling committee.c: too many arguments to function

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at