f2fs: fix not to allocate unnecessary blocks during fallocate
authorJaegeuk Kim <jaegeuk@kernel.org>
Fri, 13 Jun 2014 04:07:31 +0000 (13:07 +0900)
committerJaegeuk Kim <jaegeuk@kernel.org>
Mon, 23 Jun 2014 01:05:08 +0000 (10:05 +0900)
commit98397ff3cddcfdedd2ba1701bd30a73c1d733769
tree2f3180fcfe2057df1c849482cebd7d1b6fe1c179
parentead432756ab2c76b1f1de742a1c8a06992cb98eb
f2fs: fix not to allocate unnecessary blocks during fallocate

This patch fixes the fallocate bug like below. (See xfstests/255)

In fallocate(fd, 0, 20480),
expand_inode_data processes
for (index = pg_start; index <= pg_end; index++) {
f2fs_reserve_block();
...
}

So, even though fallocate requests 20480, 5 blocks, f2fs allocates 6 blocks
including pg_end.
So, this patch adds one condition to avoid block allocation.

Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/file.c