diff options
author | Wang Shilong <wangsl-fnst@cn.fujitsu.com> | 2013-01-16 00:20:01 -0500 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2013-01-21 05:19:57 -0500 |
commit | c04e88e271ab67de1409c3b4a4e80dbe13eac7b0 (patch) | |
tree | 31c46c27fedef5d19cecaaccf2abdd2e0a00c981 /fs/ext3/inode.c | |
parent | ab6a773dbcbd2bba3ead8676ae21ce5adbbdc035 (diff) |
Ext3: return ENOMEM rather than EIO if sb_getblk fails
It will be better to use ENOMEM rather than EIO, because the only
reason that sb_getblk fails is that allocation fails.
Signed-off-by: Wang Shilong <wangsl-fnst@cn.fujitsu.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext3/inode.c')
-rw-r--r-- | fs/ext3/inode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c index d7df06839f6a..d512c4bc4ad7 100644 --- a/fs/ext3/inode.c +++ b/fs/ext3/inode.c | |||
@@ -1083,7 +1083,7 @@ struct buffer_head *ext3_getblk(handle_t *handle, struct inode *inode, | |||
1083 | struct buffer_head *bh; | 1083 | struct buffer_head *bh; |
1084 | bh = sb_getblk(inode->i_sb, dummy.b_blocknr); | 1084 | bh = sb_getblk(inode->i_sb, dummy.b_blocknr); |
1085 | if (unlikely(!bh)) { | 1085 | if (unlikely(!bh)) { |
1086 | *errp = -EIO; | 1086 | *errp = -ENOMEM; |
1087 | goto err; | 1087 | goto err; |
1088 | } | 1088 | } |
1089 | if (buffer_new(&dummy)) { | 1089 | if (buffer_new(&dummy)) { |
@@ -2738,7 +2738,7 @@ static int __ext3_get_inode_loc(struct inode *inode, | |||
2738 | "unable to read inode block - " | 2738 | "unable to read inode block - " |
2739 | "inode=%lu, block="E3FSBLK, | 2739 | "inode=%lu, block="E3FSBLK, |
2740 | inode->i_ino, block); | 2740 | inode->i_ino, block); |
2741 | return -EIO; | 2741 | return -ENOMEM; |
2742 | } | 2742 | } |
2743 | if (!buffer_uptodate(bh)) { | 2743 | if (!buffer_uptodate(bh)) { |
2744 | lock_buffer(bh); | 2744 | lock_buffer(bh); |