We should drop the ->s_umount mutex if an error occurs after the
sget()/grab_super() call. This was introduced when adding support
for multiple instances of devpts and noticed during a code review/reorg.
Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 
 fail:
        dput(mnt->mnt_sb->s_root);
+       up_write(&mnt->mnt_sb->s_umount);
        deactivate_super(mnt->mnt_sb);
        return err;
 }
        err = mknod_ptmx(mnt->mnt_sb);
        if (err) {
                dput(mnt->mnt_sb->s_root);
+               up_write(&mnt->mnt_sb->s_umount);
                deactivate_super(mnt->mnt_sb);
        }