Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 221879c9 authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Theodore Ts'o
Browse files

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: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
parent f5a7a6b0
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -2462,11 +2462,11 @@ retry:
		ret = ext4_ext_get_blocks(handle, inode, block,
		ret = ext4_ext_get_blocks(handle, inode, block,
					  max_blocks, &map_bh,
					  max_blocks, &map_bh,
					  EXT4_CREATE_UNINITIALIZED_EXT, 0);
					  EXT4_CREATE_UNINITIALIZED_EXT, 0);
		WARN_ON(!ret);
		WARN_ON(ret <= 0);
		if (!ret) {
		if (ret <= 0) {
			ext4_error(inode->i_sb, "ext4_fallocate",
			ext4_error(inode->i_sb, "ext4_fallocate",
				   "ext4_ext_get_blocks returned 0! inode#%lu"
				    "ext4_ext_get_blocks returned error: "
				   ", block=%u, max_blocks=%lu",
				    "inode#%lu, block=%u, max_blocks=%lu",
				    inode->i_ino, block, max_blocks);
				    inode->i_ino, block, max_blocks);
			ret = -EIO;
			ret = -EIO;
			ext4_mark_inode_dirty(handle, inode);
			ext4_mark_inode_dirty(handle, inode);