linux-kernel-test/fs/ext4
Theodore Ts'o 786ec7915e ext4: Clear the EXT4_EOFBLOCKS_FL flag only when warranted
Dimitry Monakhov discovered an edge case where it was possible for the
EXT4_EOFBLOCKS_FL flag could get cleared unnecessarily.  This is true;
I have a test case that can be exercised via downloading and
decompressing the file:

wget ftp://ftp.kernel.org/pub/linux/kernel/people/tytso/ext4-testcases/eofblocks-fl-test-case.img.bz2
bunzip2 eofblocks-fl-test-case.img
dd if=/dev/zero of=eofblocks-fl-test-case.img bs=1k seek=17925 bs=1k count=1 conv=notrunc

However, triggering it in real life is highly unlikely since it
requires an extremely fragmented sparse file with a hole in exactly
the right place in the extent tree.  (It actually took quite a bit of
work to generate this test case.)  Still, it's nice to get even
extreme corner cases to be correct, so this patch makes sure that we
don't clear the EXT4_EOFBLOCKS_FL incorrectly even in this corner
case.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2010-05-17 00:00:00 -04:00
..
acl.c sanitize xattr handler prototypes 2009-12-16 12:16:49 -05:00
acl.h ext[234]: move over to 'check_acl' permission model 2009-09-08 11:09:04 -07:00
balloc.c ext4: don't use quota reservation for speculative metadata 2010-05-16 11:00:00 -04:00
bitmap.c ext4: Change unsigned long to unsigned int 2008-11-05 00:14:04 -05:00
block_validity.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dir.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
ext4_extents.h ext4: Calculate metadata requirements more accurately 2010-01-01 02:41:30 -05:00
ext4_jbd2.c ext4: Fix BUG_ON at fs/buffer.c:652 in no journal mode 2010-02-16 15:06:29 -05:00
ext4_jbd2.h ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
ext4.h ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
extents.c ext4: Clear the EXT4_EOFBLOCKS_FL flag only when warranted 2010-05-17 00:00:00 -04:00
file.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
fsync.c ext4: check missed return value in ext4_sync_file() 2010-05-10 00:00:00 -04:00
hash.c ext4: Add support for non-native signed/unsigned htree hash algorithms 2008-10-28 13:21:44 -04:00
ialloc.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
inode.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
ioctl.c ext4: allow defrag (EXT4_IOC_MOVE_EXT) in 32bit compat mode 2010-05-15 00:00:00 -04:00
Kconfig ext4: Don't ask about supporting ext2/3 in ext4 if ext4 is not configured 2009-12-21 10:54:09 -05:00
Makefile ext4: online defrag -- Add EXT4_IOC_MOVE_EXT ioctl 2009-06-17 19:24:03 -04:00
mballoc.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
mballoc.h ext4: consolidate in_range() definitions 2010-03-03 23:55:01 -05:00
migrate.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
move_extent.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
namei.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
resize.c ext4: check s_log_groups_per_flex in online resize code 2010-05-16 01:00:00 -04:00
super.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
symlink.c ext4: symlink must be handled via filesystem specific operation 2010-05-16 02:00:00 -04:00
xattr_security.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
xattr_trusted.c sanitize xattr handler prototypes 2009-12-16 12:16:49 -05:00
xattr_user.c sanitize xattr handler prototypes 2009-12-16 12:16:49 -05:00
xattr.c ext4: Use bitops to read/modify i_flags in struct ext4_inode_info 2010-05-16 22:00:00 -04:00
xattr.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00