summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>2008-01-29 05:58:27 +0100
committerTheodore Ts'o <tytso@mit.edu>2008-01-29 05:58:27 +0100
commit221879c927df05280283a4de6124806c17cc44d4 (patch)
treec9d1a53dc45c5d7dbe2456cbaee6eb56ed967bb2 /fs
parentjbd2: Fix assertion failure in fs/jbd2/checkpoint.c (diff)
downloadlinux-221879c927df05280283a4de6124806c17cc44d4.tar.xz
linux-221879c927df05280283a4de6124806c17cc44d4.zip
ext4: Check for the correct error return from
ext4_ext_get_blocks returns negative values on error. We should check for <= 0 Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Diffstat (limited to '')
-rw-r--r--fs/ext4/extents.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index 754c0d36d162..8593e59020fe 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -2462,12 +2462,12 @@ retry:
ret = ext4_ext_get_blocks(handle, inode, block,
max_blocks, &map_bh,
EXT4_CREATE_UNINITIALIZED_EXT, 0);
- WARN_ON(!ret);
- if (!ret) {
+ WARN_ON(ret <= 0);
+ if (ret <= 0) {
ext4_error(inode->i_sb, "ext4_fallocate",
- "ext4_ext_get_blocks returned 0! inode#%lu"
- ", block=%u, max_blocks=%lu",
- inode->i_ino, block, max_blocks);
+ "ext4_ext_get_blocks returned error: "
+ "inode#%lu, block=%u, max_blocks=%lu",
+ inode->i_ino, block, max_blocks);
ret = -EIO;
ext4_mark_inode_dirty(handle, inode);
ret2 = ext4_journal_stop(handle);