nfs_write_end(): fix handling of short copies
What matters when deciding if we should make a page uptodate is not how much we _wanted_ to copy, but how much we actually have copied. As it is, on architectures that do not zero tail on short copy we can leave uninitialized data in page marked uptodate. Cc: stable@vger.kernel.org Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Родитель
e5517c2a5a
Коммит
c0cf3ef5e0
|
@ -374,7 +374,7 @@ static int nfs_write_end(struct file *file, struct address_space *mapping,
|
|||
*/
|
||||
if (!PageUptodate(page)) {
|
||||
unsigned pglen = nfs_page_length(page);
|
||||
unsigned end = offset + len;
|
||||
unsigned end = offset + copied;
|
||||
|
||||
if (pglen == 0) {
|
||||
zero_user_segments(page, 0, offset,
|
||||
|
|
Загрузка…
Ссылка в новой задаче