linux/fs/ext4
Aneesh Kumar K.V d03856bd5e ext4: Fix data corruption when writing to prealloc area
Inserting an extent can cause a new entry in the already existing index
block. That doesn't increase the depth of the instead. Instead it adds a
new leaf block. Now with the new leaf block the path information
corresponding to the logical block should be fetched from the new block.
The old path will be pointing to the old leaf block.

We need to recalucate the path information on extent insert
even if depth doesn't change. Without this change, the extent merge
after converting an unwritten extent to initialized extent takes the wrong
extent and cause data corruption.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2008-08-02 18:51:32 -04:00
..
acl.c [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
acl.h [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
balloc.c ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
bitmap.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
dir.c ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
ext4.h ext4: delayed allocation i_blocks fix for stat 2008-07-11 19:27:31 -04:00
ext4_extents.h ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
ext4_i.h ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
ext4_jbd2.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
ext4_jbd2.h ext4: Use new framework for data=ordered mode in JBD2 2008-07-11 19:27:31 -04:00
ext4_sb.h ext4: New inode allocation for FLEX_BG meta-data groups. 2008-07-11 19:27:31 -04:00
extents.c ext4: Fix data corruption when writing to prealloc area 2008-08-02 18:51:32 -04:00
file.c ext4: delayed allocation i_blocks fix for stat 2008-07-11 19:27:31 -04:00
fsync.c ext4: call blkdev_issue_flush on fsync 2008-07-11 19:27:31 -04:00
group.h ext4: Rename read_block_bitmap() to ext4_read_block_bitmap() 2008-07-11 19:27:31 -04:00
hash.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
ialloc.c ext4: do not set extents feature from the kernel 2008-07-11 19:27:31 -04:00
inode.c vfs: pagecache usage optimization for pagesize!=blocksize 2008-07-28 16:30:21 -07:00
ioctl.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
Makefile ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
mballoc.c ext4: delayed allocation ENOSPC handling 2008-07-14 17:52:37 -04:00
mballoc.h ext4: Move mballoc headers/structures to a seperate header file mballoc.h 2008-04-29 22:01:31 -04:00
migrate.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
namei.c ext4: cleanup never-used magic numbers from htree code 2008-07-11 19:27:31 -04:00
namei.h [PATCH] ext4: rename ext4 symbols to avoid duplication of ext3 symbols 2006-10-11 11:14:15 -07:00
resize.c ext4: fix online resize with mballoc 2008-07-11 19:27:31 -04:00
super.c SL*B: drop kmem cache argument from constructor 2008-07-26 12:00:07 -07:00
symlink.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
xattr.c ext4: Use inode preallocation with -o noextents 2008-07-11 19:27:31 -04:00
xattr.h ext4: make ext4_xattr_list() static 2008-04-17 10:38:59 -04:00
xattr_security.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
xattr_trusted.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr_user.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00