zero out last page for llseek/write
When one llseek's past the end of the file and then writes, every page past the previous end of the file should be cleared. Trevor found that the code, as is, does not assure that the very last page is always cleared. This patch takes care of that. Signed-off-by: Michael Halcrow <mhalcrow@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
e10f281bca
commit
d4c5cdb3e0
1 changed files with 2 additions and 0 deletions
|
@ -422,6 +422,8 @@ static int ecryptfs_prepare_write(struct file *file, struct page *page,
|
|||
goto out;
|
||||
}
|
||||
}
|
||||
if (end_of_prev_pg_pos + 1 > i_size_read(page->mapping->host))
|
||||
zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0);
|
||||
}
|
||||
out:
|
||||
return rc;
|
||||
|
|
Loading…
Reference in a new issue