]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: alloc auth xlock on versionlock/LocalLock
authorSage Weil <sage@newdream.net>
Fri, 24 Sep 2010 17:19:25 +0000 (10:19 -0700)
committerSage Weil <sage@newdream.net>
Fri, 24 Sep 2010 18:44:22 +0000 (11:44 -0700)
This is done when we do a slave xlock in order do avoid pipelining updates
to the inode, making rollback of complex operations like rename/link
safe.

src/mds/locks.c

index e3bf84a5dcf4c5e141e356ee0d329ff97c036e47..689762903496ddfa2ce2fec50437fe7fd440e476 100644 (file)
@@ -138,7 +138,7 @@ struct sm_t sm_filelock = {
 
 struct sm_state_t locallock[LOCK_MAX] = {
                       // stable     loner  rep state  r     rp   rd   wr   l    x    caps(any,loner,xlocker,replica)
-    [LOCK_LOCK]      = { 0,         false, LOCK_LOCK, ANY,  0,   ANY, 0,   ANY, 0,   0,0,0,0 },
+    [LOCK_LOCK]      = { 0,         false, LOCK_LOCK, ANY,  0,   ANY, 0,   ANY, AUTH,0,0,0,0 },
 };
 
 struct sm_t sm_locallock = {