mirror of https://gitee.com/openkylin/linux.git
GFS2: d_splice_alias() can't return error
unless it was given an IS_ERR(inode), which isn't the case here. So clean up the unnecessary error handling in gfs2_create_inode(). This paves the way for real fixes (hence the stable Cc). Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com> Cc: stable@vger.kernel.org
This commit is contained in:
parent
272b98c645
commit
0d0d110720
|
@ -584,7 +584,7 @@ static int gfs2_create_inode(struct inode *dir, struct dentry *dentry,
|
|||
if (!IS_ERR(inode)) {
|
||||
d = d_splice_alias(inode, dentry);
|
||||
error = 0;
|
||||
if (file && !IS_ERR(d)) {
|
||||
if (file) {
|
||||
if (d == NULL)
|
||||
d = dentry;
|
||||
if (S_ISREG(inode->i_mode))
|
||||
|
@ -593,8 +593,6 @@ static int gfs2_create_inode(struct inode *dir, struct dentry *dentry,
|
|||
error = finish_no_open(file, d);
|
||||
}
|
||||
gfs2_glock_dq_uninit(ghs);
|
||||
if (IS_ERR(d))
|
||||
return PTR_ERR(d);
|
||||
return error;
|
||||
} else if (error != -ENOENT) {
|
||||
goto fail_gunlock;
|
||||
|
|
Loading…
Reference in New Issue