ext4: Allow indirect-block file to grow the file size to max file size
authorKazuya Mio <k-mio@sx.jp.nec.com>
Mon, 11 Apr 2011 02:06:36 +0000 (22:06 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 11 Apr 2011 02:06:36 +0000 (22:06 -0400)
commitf80da1e70f1ffec3825aa0a1d0801f4896e002b6
tree42976f4e0fc07da78ffce618b7e98b87d82a2bff
parentbe4f27d324e8ddd57cc0d4d604fe85ee0425cba9
ext4: Allow indirect-block file to grow the file size to max file size

We can create 4402345721856 byte file with indirect block mapping.
However, if we grow an indirect-block file to the size with ftruncate(),
we can see an ext4 warning. The following patch fixes this problem.

How to reproduce:
# dd if=/dev/zero of=/mnt/mp1/hoge bs=1 count=0 seek=4402345721856
0+0 records in
0+0 records out
0 bytes (0 B) copied, 0.000221428 s, 0.0 kB/s
# tail -n 1 /var/log/messages
Nov 25 15:10:27 test kernel: EXT4-fs warning (device sda8): ext4_block_to_path:345: block 1074791436 > max in inode 12

Signed-off-by: Kazuya Mio <k-mio@sx.jp.nec.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/inode.c