From: Andrew Morton Cc: Anton Altaparmakov Cc: Nate Diller Signed-off-by: Andrew Morton --- fs/ntfs/aops.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff -puN fs/ntfs/aops.c~ntfs-use-zero_user_page-fix fs/ntfs/aops.c --- a/fs/ntfs/aops.c~ntfs-use-zero_user_page-fix +++ a/fs/ntfs/aops.c @@ -86,19 +86,15 @@ static void ntfs_end_buffer_async_read(s } /* Check for the current buffer head overflowing. */ if (unlikely(file_ofs + bh->b_size > init_size)) { - u8 *kaddr; int ofs; ofs = 0; if (file_ofs < init_size) ofs = init_size - file_ofs; local_irq_save(flags); - kaddr = kmap_atomic(page, KM_BIO_SRC_IRQ); - memset(kaddr + bh_offset(bh) + ofs, 0, - bh->b_size - ofs); - kunmap_atomic(kaddr, KM_BIO_SRC_IRQ); + zero_user_page(page, bh_offset(bh) + ofs, + bh->b_size - ofs, KM_BIO_SRC_IRQ); local_irq_restore(flags); - flush_dcache_page(page); } } else { clear_buffer_uptodate(bh); _