linux-stable-rt/fs/ext4
Aneesh Kumar K.V b939e3766e ext4: Use the ext4_ext_actual_len() helper function
ext4 uses the high bit of the extent length to encode whether the extent
is intialized or not. The helper function ext4_ext_get_actual_len should
be used to get the actual length of the extent.

This addresses the kernel bug documented here: 
     http://bugzilla.kernel.org/show_bug.cgi?id=9732

kernel BUG at fs/ext4/extents.c:1056!
....
Call Trace:
[<ffffffff88366073>] :ext4dev:ext4_ext_get_blocks+0x5ba/0x8c1
[<ffffffff81053c91>] lock_release_holdtime+0x27/0x49
[<ffffffff812748f6>] _spin_unlock+0x17/0x20
[<ffffffff883400a6>] :jbd2:start_this_handle+0x4e0/0x4fe
[<ffffffff88366564>] :ext4dev:ext4_fallocate+0x175/0x39a
[<ffffffff81053c91>] lock_release_holdtime+0x27/0x49
[<ffffffff81056480>] __lock_acquire+0x4e7/0xc4d
[<ffffffff81053c91>] lock_release_holdtime+0x27/0x49
[<ffffffff810a8de7>] sys_fallocate+0xe4/0x10d
[<ffffffff8100c043>] tracesys+0xd5/0xda

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2008-01-28 23:58:27 -05:00
..
Makefile ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
acl.c
acl.h
balloc.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
bitmap.c fs: mark nibblemap const 2007-10-17 08:42:47 -07:00
dir.c ext4: Introduce ext4_lblk_t 2008-01-28 23:58:27 -05:00
ext4_jbd2.c
extents.c ext4: Use the ext4_ext_actual_len() helper function 2008-01-28 23:58:27 -05:00
file.c ext4: store maxbytes for bitmapped files and return EFBIG as appropriate 2008-01-28 23:58:27 -05:00
fsync.c ext4: sparse fixes 2007-10-17 18:50:03 -04:00
group.h ext4: add ext4_group_t, and change all group variables to this type. 2008-01-28 23:58:27 -05:00
hash.c
ialloc.c ext4: fix up EXT4FS_DEBUG builds 2008-01-28 23:58:27 -05:00
inode.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
ioctl.c ext4: Add EXT4_IOC_MIGRATE ioctl 2008-01-28 23:58:26 -05:00
mballoc.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
migrate.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
namei.c ext4: remove unused code from ext4_find_entry() 2008-01-28 23:58:27 -05:00
namei.h
resize.c ext4: fix up EXT4FS_DEBUG builds 2008-01-28 23:58:27 -05:00
super.c ext4: Check for return value from sb_set_blocksize 2008-01-28 23:58:27 -05:00
symlink.c
xattr.c ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
xattr.h
xattr_security.c
xattr_trusted.c
xattr_user.c