Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / mm / page_alloc.c
index 3beeb8d..7a2c89b 100644 (file)
@@ -1204,8 +1204,10 @@ static void kernel_init_free_pages(struct page *page, int numpages)
 
        /* s390's use of memset() could override KASAN redzones. */
        kasan_disable_current();
-       for (i = 0; i < numpages; i++)
+       for (i = 0; i < numpages; i++) {
+               page_kasan_tag_reset(page + i);
                clear_highpage(page + i);
+       }
        kasan_enable_current();
 }
 
@@ -7671,6 +7673,11 @@ unsigned long free_reserved_area(void *start, void *end, int poison, const char
                 * alias for the memset().
                 */
                direct_map_addr = page_address(page);
+               /*
+                * Perform a kasan-unchecked memset() since this memory
+                * has not been initialized.
+                */
+               direct_map_addr = kasan_reset_tag(direct_map_addr);
                if ((unsigned int)poison <= 0xFF)
                        memset(direct_map_addr, poison, PAGE_SIZE);