]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: fix add_cap cap update
authorSage Weil <sage@newdream.net>
Fri, 9 Jan 2009 17:45:59 +0000 (09:45 -0800)
committerSage Weil <sage@newdream.net>
Fri, 9 Jan 2009 17:45:59 +0000 (09:45 -0800)
We want to _set_ cap->issued, and add bits to cap->implemented.  This
mirrors what we see in handle_cap_grant.  Note that this is dependent
on that fact that (currently, at least!) we should never see
a revocation here.

src/kernel/caps.c

index 82a530920b07436aa7a67b436bdd3aebfcc71da4..146cce3837b2f4d38a304fce6c916ddf307f9753 100644 (file)
@@ -243,7 +243,7 @@ retry:
        dout(10, "add_cap inode %p (%llx.%llx) cap %s now %s seq %d mds%d\n",
             inode, ceph_vinop(inode), ceph_cap_string(issued),
             ceph_cap_string(issued|cap->issued), seq, mds);
-       cap->issued |= issued;
+       cap->issued = issued;
        cap->implemented |= issued;
        cap->seq = seq;
        cap->mseq = mseq;