diff options
author | Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> | 2008-02-25 15:41:35 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2008-02-25 15:41:35 -0500 |
commit | 2c98615d3b64ce7888cd46cc668023f456daf287 (patch) | |
tree | 5fc26fc832d2afa658e706106d6e793a493eef0a /fs/ext4/extents.c | |
parent | f5ab0d1f8f7df937778c60c3da6f4ef939a54a7b (diff) |
ext4: Don't mark filesystem error if fallocate fails
If we fail to allocate blocks don't call ext4_error. Also don't hide
errors from ext4_get_blocks_wrap
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/extents.c')
-rw-r--r-- | fs/ext4/extents.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index bcf5d040e328..9ae6e67090cd 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c | |||
@@ -2661,13 +2661,14 @@ retry: | |||
2661 | ret = ext4_get_blocks_wrap(handle, inode, block, | 2661 | ret = ext4_get_blocks_wrap(handle, inode, block, |
2662 | max_blocks, &map_bh, | 2662 | max_blocks, &map_bh, |
2663 | EXT4_CREATE_UNINITIALIZED_EXT, 0); | 2663 | EXT4_CREATE_UNINITIALIZED_EXT, 0); |
2664 | WARN_ON(ret <= 0); | ||
2665 | if (ret <= 0) { | 2664 | if (ret <= 0) { |
2666 | ext4_error(inode->i_sb, "ext4_fallocate", | 2665 | #ifdef EXT4FS_DEBUG |
2667 | "ext4_ext_get_blocks returned error: " | 2666 | WARN_ON(ret <= 0); |
2668 | "inode#%lu, block=%u, max_blocks=%lu", | 2667 | printk(KERN_ERR "%s: ext4_ext_get_blocks " |
2668 | "returned error inode#%lu, block=%u, " | ||
2669 | "max_blocks=%lu", __func__, | ||
2669 | inode->i_ino, block, max_blocks); | 2670 | inode->i_ino, block, max_blocks); |
2670 | ret = -EIO; | 2671 | #endif |
2671 | ext4_mark_inode_dirty(handle, inode); | 2672 | ext4_mark_inode_dirty(handle, inode); |
2672 | ret2 = ext4_journal_stop(handle); | 2673 | ret2 = ext4_journal_stop(handle); |
2673 | break; | 2674 | break; |