]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: retain comments
authorSage Weil <sage@newdream.net>
Mon, 19 Jan 2009 20:21:33 +0000 (12:21 -0800)
committerSage Weil <sage@newdream.net>
Mon, 19 Jan 2009 20:21:33 +0000 (12:21 -0800)
src/kernel/caps.c

index 4680e81c104a6522f9aaf9761fd0e0a22c0b5ad1..009fa4801a2caec908485fc0096451eadef7c309 100644 (file)
@@ -745,7 +745,13 @@ retry_locked:
        
        retain = want;
        if (!mdsc->stopping) {
-               retain |= CEPH_CAP_PIN | CEPH_CAP_ANY_RDCACHE;
+               /*
+                * we cannot retain anything outside of
+                * (wanted|EXPIREABLE), or else we run the risk of the
+                * MDS' wanted value getting out of sync, and we have
+                * no mechanism to adjust that (besides open()).
+                */
+               retain |= CEPH_CAP_EXPIREABLE;
 
                /* keep any EXCL bits too, while we are holding caps anyway */
                if (want || S_ISDIR(inode->i_mode))