diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c index 21b3d5b9be6030e9f0037b50d5f0e52b953f0fb1..4e6d8a3f727df2dde1b7e790f9abe3643c8d1f32 100644 --- a/fs/ocfs2/namei.c +++ b/fs/ocfs2/namei.c @@ -200,8 +200,10 @@ static struct inode *ocfs2_get_init_inode(struct inode *dir, umode_t mode) mode = mode_strip_sgid(&nop_mnt_idmap, dir, mode); inode_init_owner(&nop_mnt_idmap, inode, dir, mode); status = dquot_initialize(inode); - if (status) + if (status) { + iput(inode); return ERR_PTR(status); + } return inode; }