diff options
Diffstat (limited to 'mm/page_poison.c')
| -rw-r--r-- | mm/page_poison.c | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/mm/page_poison.c b/mm/page_poison.c index f0c15e9017c0..21d4f97cb49b 100644 --- a/mm/page_poison.c +++ b/mm/page_poison.c @@ -6,6 +6,7 @@  #include <linux/page_ext.h>  #include <linux/poison.h>  #include <linux/ratelimit.h> +#include <linux/kasan.h>  static bool want_page_poisoning __read_mostly; @@ -40,7 +41,10 @@ static void poison_page(struct page *page)  {  	void *addr = kmap_atomic(page); +	/* KASAN still think the page is in-use, so skip it. */ +	kasan_disable_current();  	memset(addr, PAGE_POISON, PAGE_SIZE); +	kasan_enable_current();  	kunmap_atomic(addr);  }  |