diff --git a/mm/shmem.c b/mm/shmem.c index 1609a8daba26..342d1bc72867 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -2394,8 +2394,10 @@ int shmem_mfill_atomic_pte(struct mm_struct *dst_mm, /* don't free the page */ goto out_unacct_blocks; } + + flush_dcache_page(page); } else { /* ZEROPAGE */ - clear_highpage(page); + clear_user_highpage(page, dst_addr); } } else { page = *pagep;