]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix dn unlocking on export_reverse
authorSage Weil <sage@newdream.net>
Wed, 13 Apr 2011 19:03:31 +0000 (12:03 -0700)
committerSage Weil <sage@newdream.net>
Wed, 13 Apr 2011 20:58:19 +0000 (13:58 -0700)
Triggered by mds_kill_import_at 5.  We were clearing the export_locks
prior to calling export_unlock (der!).

Signed-off-by: Sage Weil <sage@newdream.net>
src/mds/Migrator.cc

index aa33ee687009654b57fbb967e77509a10b2aaa6a..95e165d4a902364193597f4c64bfdbd05fd79932 100644 (file)
@@ -266,7 +266,6 @@ void Migrator::handle_mds_failure_or_stop(int who)
        export_state.erase(dir); // clean up
        export_locks.erase(dir);
        dir->state_clear(CDir::STATE_EXPORTING);
-       export_unlock(dir);
        break;
 
       case EXPORT_LOGGINGFINISH:
@@ -1305,6 +1304,8 @@ void Migrator::export_reverse(CDir *dir)
   // unfreeze
   dir->unfreeze_tree();
 
+  export_unlock(dir);
+
   cache->show_cache();
 }