]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: root snaprealm starts with seq 1
authorSage Weil <sage@newdream.net>
Wed, 13 Aug 2008 17:33:12 +0000 (10:33 -0700)
committerSage Weil <sage@newdream.net>
Wed, 13 Aug 2008 19:37:21 +0000 (12:37 -0700)
src/TODO
src/mds/MDCache.cc
src/mds/SnapServer.cc

index 3313d6118aeb2edc23fe14dc3bdf4c906ea26dfd..dd87cca1d943da69ef61cfc1522c593f5fb060b1 100644 (file)
--- a/src/TODO
+++ b/src/TODO
@@ -34,6 +34,10 @@ snaps on osd
 - garbage collection
 - efficient recovery of clones
 
+snaps on kclient
+- cap import
+- replace mdsc->lock with a mutex
+  - snaprealm mutex, too!  with another weird inversion/acquisition lameness in check_caps, too.
 
 userspace client
 - handle session STALE
index bf117ac92d55c0d6b65c02199e8f82733a25af79..58a42cfdeeb49147ef6eec029a61c6835bc5ae04 100644 (file)
@@ -225,8 +225,9 @@ CInode *MDCache::create_root_inode()
   root->inode_auth = pair<int,int>(0, CDIR_AUTH_UNKNOWN);
 
   root->open_snaprealm();  // empty snaprealm
+  root->snaprealm->seq = 1;
   
-  add_inode( root );
+  add_inode(root);
 
   return root;
 }
index d6eb9a4259890b8870336010727f9e788f3b6878..fe0f5aca4e6e8542a8bd6a4b8fcbe5de212f09b5 100644 (file)
@@ -34,7 +34,7 @@ void SnapServer::init_inode()
 
 void SnapServer::reset_state()
 {
-  last_snap = 0;
+  last_snap = 1;  /* snapid 1 reserved for initial root snaprealm */
   snaps.clear();
   pending_purge.clear();
 }