GFS2: Fix error path ref counting for root inode

We were keeping hold of an extra ref to the root inode in one
of the error paths, that resulted in a hang.

Reported-by: Nate Straz <nstraz@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Tested-by: Robert Peterson <rpeterso@redhat.com>
This commit is contained in:
Steven Whitehouse 2009-01-20 16:39:23 +00:00 committed by Steven Whitehouse
parent ac2425e7d3
commit e7c8707ea2

View file

@ -1258,6 +1258,8 @@ static int fill_super(struct super_block *sb, void *data, int silent)
dput(sdp->sd_root_dir);
if (sdp->sd_master_dir)
dput(sdp->sd_master_dir);
if (sb->s_root)
dput(sb->s_root);
sb->s_root = NULL;
fail_locking:
init_locking(sdp, &mount_gh, UNDO);