]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ext4: Do not zero out uninitialized extents beyond i_size
authorDmitry Monakhov <dmonakhov@openvz.org>
Mon, 31 May 2010 02:49:53 +0000 (22:49 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 2 Aug 2010 17:21:19 +0000 (10:21 -0700)
commitff2d83ca9df8202d9d8cff73c695ec1f0a596028
treec3147b683878eaa6398136aeabdbfead19b4cadc
parent342c35e4f561cefbd927248fbcd45bf68afc12a9
ext4: Do not zero out uninitialized extents beyond i_size

commit 21ca087a3891efab4d45488db8febee474d26c68 upstream (as of v2.6.34-git13)

The extents code will sometimes zero out blocks and mark them as
initialized instead of splitting an extent into several smaller ones.
This optimization however, causes problems if the extent is beyond
i_size because fsck will complain if there are uninitialized blocks
after i_size as this can not be distinguished from an inode that has
an incorrect i_size field.

https://bugzilla.kernel.org/show_bug.cgi?id=15742

Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/ext4/extents.c