mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 20:54:10 +08:00
... and the same failure exits cleanup for ocfs2
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
f56b0fbc64
commit
be0d93f0aa
@ -1154,12 +1154,12 @@ static int ocfs2_fill_super(struct super_block *sb, void *data, int silent)
|
||||
}
|
||||
|
||||
status = ocfs2_mount_volume(sb);
|
||||
if (osb->root_inode)
|
||||
inode = igrab(osb->root_inode);
|
||||
|
||||
if (status < 0)
|
||||
goto read_super_error;
|
||||
|
||||
if (osb->root_inode)
|
||||
inode = igrab(osb->root_inode);
|
||||
|
||||
if (!inode) {
|
||||
status = -EIO;
|
||||
mlog_errno(status);
|
||||
@ -1168,6 +1168,7 @@ static int ocfs2_fill_super(struct super_block *sb, void *data, int silent)
|
||||
|
||||
root = d_alloc_root(inode);
|
||||
if (!root) {
|
||||
iput(inode);
|
||||
status = -ENOMEM;
|
||||
mlog_errno(status);
|
||||
goto read_super_error;
|
||||
@ -1220,9 +1221,6 @@ static int ocfs2_fill_super(struct super_block *sb, void *data, int silent)
|
||||
read_super_error:
|
||||
brelse(bh);
|
||||
|
||||
if (inode)
|
||||
iput(inode);
|
||||
|
||||
if (osb) {
|
||||
atomic_set(&osb->vol_state, VOLUME_DISABLED);
|
||||
wake_up(&osb->osb_mount_event);
|
||||
|
Loading…
Reference in New Issue
Block a user