ext4: Fix insertion point of extent in mext_insert_across_blocks()
authorAkira Fujita <a-fujita@rs.jp.nec.com>
Thu, 4 Mar 2010 05:31:06 +0000 (00:31 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 4 Mar 2010 05:31:06 +0000 (00:31 -0500)
commit5fd5249aa36fad98c9fd5edced352939e54f9324
treeee8add19d98cc2fc47133b3346b5e55ecc68478e
parent731eb1a03a8445cde2cb23ecfb3580c6fa7bb690
ext4: Fix insertion point of extent in mext_insert_across_blocks()

If the leaf node has 2 extent space or fewer and EXT4_IOC_MOVE_EXT
ioctl is called with the file offset where after the 2nd extent
covers, mext_insert_across_blocks() always tries to insert extent into
the first extent.  As a result, the file gets corrupted because of
wrong extent order.  The patch fixes this problem.

Signed-off-by: Akira Fujita <a-fujita@rs.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/move_extent.c