diff options
Diffstat (limited to 'mm/debug-pagealloc.c')
| -rw-r--r-- | mm/debug-pagealloc.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mm/debug-pagealloc.c b/mm/debug-pagealloc.c index 5bf5906ce13b..feae18981174 100644 --- a/mm/debug-pagealloc.c +++ b/mm/debug-pagealloc.c @@ -6,6 +6,14 @@ #include <linux/poison.h> #include <linux/ratelimit.h> +#ifndef mark_addr_rdonly +#define mark_addr_rdonly(a) +#endif + +#ifndef mark_addr_rdwrite +#define mark_addr_rdwrite(a) +#endif + static bool page_poisoning_enabled __read_mostly; static bool need_page_poisoning(void) @@ -59,6 +67,7 @@ static void poison_page(struct page *page) set_page_poison(page); memset(addr, PAGE_POISON, PAGE_SIZE); + mark_addr_rdonly(addr); kunmap_atomic(addr); } @@ -113,6 +122,7 @@ static void unpoison_page(struct page *page) addr = kmap_atomic(page); check_poison_mem(addr, PAGE_SIZE); + mark_addr_rdwrite(addr); clear_page_poison(page); kunmap_atomic(addr); } |
