]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/mds/Capability.h
update ceph source to reef 18.2.1
[ceph.git] / ceph / src / mds / Capability.h
index f7119f002e1381698343a029c2a8ede2b6b4cf7d..3fd6d2ce6d4f0d5924d839099098bd618da68dab 100644 (file)
@@ -182,34 +182,7 @@ public:
     inc_last_seq();
     return last_sent;
   }
-  int confirm_receipt(ceph_seq_t seq, unsigned caps) {
-    int was_revoking = (_issued & ~_pending);
-    if (seq == last_sent) {
-      _revokes.clear();
-      _issued = caps;
-      // don't add bits
-      _pending &= caps;
-    } else {
-      // can i forget any revocations?
-      while (!_revokes.empty() && _revokes.front().seq < seq)
-       _revokes.pop_front();
-      if (!_revokes.empty()) {
-       if (_revokes.front().seq == seq)
-         _revokes.begin()->before = caps;
-       calc_issued();
-      } else {
-       // seq < last_sent
-       _issued = caps | _pending;
-      }
-    }
-
-    if (was_revoking && _issued == _pending) {
-      item_revoking_caps.remove_myself();
-      item_client_revoking_caps.remove_myself();
-      maybe_clear_notable();
-    }
-    return was_revoking & ~_issued; // return revoked
-  }
+  int confirm_receipt(ceph_seq_t seq, unsigned caps);
   // we may get a release racing with revocations, which means our revokes will be ignored
   // by the client.  clean them out of our _revokes history so we don't wait on them.
   void clean_revoke_from(ceph_seq_t li) {