summaryrefslogtreecommitdiffstats
path: root/fs/jbd2
diff options
context:
space:
mode:
authorJan Kara2017-01-27 20:35:38 +0100
committerTheodore Ts'o2017-01-27 20:35:38 +0100
commit3b136499e906460919f0d21a49db1aaccf0ae963 (patch)
tree9da71e2dcd4f4d90b21ed5ec7a4c9cb44c0b0194 /fs/jbd2
parentext4: trim allocation requests to group size (diff)
downloadkernel-qcow2-linux-3b136499e906460919f0d21a49db1aaccf0ae963.tar.gz
kernel-qcow2-linux-3b136499e906460919f0d21a49db1aaccf0ae963.tar.xz
kernel-qcow2-linux-3b136499e906460919f0d21a49db1aaccf0ae963.zip
ext4: fix data corruption in data=journal mode
ext4_journalled_write_end() did not propely handle all the cases when generic_perform_write() did not copy all the data into the target page and could mark buffers with uninitialized contents as uptodate and dirty leading to possible data corruption (which would be quickly fixed by generic_perform_write() retrying the write but still). Fix the problem by carefully handling the case when the page that is written to is not uptodate. CC: stable@vger.kernel.org Reported-by: Al Viro <viro@ZenIV.linux.org.uk> Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/jbd2')
0 files changed, 0 insertions, 0 deletions