ocfs2: Clear slot map when umounting a local volume
authorMark Fasheh <mark.fasheh@oracle.com>
Thu, 4 Oct 2007 21:47:09 +0000 (14:47 -0700)
committerMark Fasheh <mark.fasheh@oracle.com>
Fri, 12 Oct 2007 18:54:33 +0000 (11:54 -0700)
This is technically harmless (recovery will clean it out later), but leaves
a bogus entry in the slot_map which really shouldn't be there.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
fs/ocfs2/super.c

index c034b5129c1e6a2d1823b68888b1ad89fe907248..19436d1ff57f1b53db11e867470386318fa93a98 100644 (file)
@@ -1209,12 +1209,13 @@ static void ocfs2_dismount_volume(struct super_block *sb, int mnt_err)
                tmp = ocfs2_request_umount_vote(osb);
                if (tmp < 0)
                        mlog_errno(tmp);
+       }
 
-               if (osb->slot_num != OCFS2_INVALID_SLOT)
-                       ocfs2_put_slot(osb);
+       if (osb->slot_num != OCFS2_INVALID_SLOT)
+               ocfs2_put_slot(osb);
 
+       if (osb->dlm)
                ocfs2_super_unlock(osb, 1);
-       }
 
        ocfs2_release_system_inodes(osb);