diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2008-12-17 12:30:36 +1100 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2008-12-17 12:30:36 +1100 |
commit | c321e6cfe7fb3a36d8d83e7e6ac1c16a13525ec7 (patch) | |
tree | 4fce55981544078d63562d4373d201451296cf7e /include | |
parent | 7bdd4a8f745329e3df7fbdb45ef0dc325d14b064 (diff) | |
parent | 8b26e74530949d70e00e6ee6feac40f654608c5a (diff) |
Merge commit 'safe-poison-pointers/auto-safe-poison-pointers-next'
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/poison.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/include/linux/poison.h b/include/linux/poison.h index 9f31683728fd..603d3bda31d9 100644 --- a/include/linux/poison.h +++ b/include/linux/poison.h @@ -2,13 +2,25 @@ #define _LINUX_POISON_H /********** include/linux/list.h **********/ + +/* + * Architectures might want to move the poison pointer offset + * into some well-recognized area such as 0xdead000000000000, + * that is also not mappable by user-space exploits: + */ +#ifdef CONFIG_ILLEGAL_POINTER_VALUE +# define POISON_POINTER_DELTA CONFIG_ILLEGAL_POINTER_VALUE +#else +# define POISON_POINTER_DELTA 0 +#endif + /* * These are non-NULL pointers that will result in page faults * under normal circumstances, used to verify that nobody uses * non-initialized list entries. */ -#define LIST_POISON1 ((void *) 0x00100100) -#define LIST_POISON2 ((void *) 0x00200200) +#define LIST_POISON1 ((void *) 0x00100100 + POISON_POINTER_DELTA) +#define LIST_POISON2 ((void *) 0x00200200 + POISON_POINTER_DELTA) /********** include/linux/timer.h **********/ /* |