X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ceph%2Fsrc%2Fmds%2FMutation.h;h=b963dee08420c6d4d51eeda3bb613dad3c7ee458;hb=aee94f6923ba628a85d855d0c5316d0da78bfa2a;hp=09ebe7052a90f79655a57a1358a67f31d40e2bbf;hpb=27f45121cc74e31203777ad565f78d8aad9b92a2;p=ceph.git diff --git a/ceph/src/mds/Mutation.h b/ceph/src/mds/Mutation.h index 09ebe7052..b963dee08 100644 --- a/ceph/src/mds/Mutation.h +++ b/ceph/src/mds/Mutation.h @@ -221,7 +221,7 @@ public: } virtual void dump(ceph::Formatter *f) const {} - void _dump_op_descriptor_unlocked(std::ostream& stream) const override; + void _dump_op_descriptor(std::ostream& stream) const override; metareqid_t reqid; __u32 attempt = 0; // which attempt for this request @@ -396,7 +396,9 @@ struct MDRequestImpl : public MutationImpl { std::unique_ptr release_batch_op(); void print(std::ostream &out) const override; - void dump(ceph::Formatter *f) const override; + void dump_with_mds_lock(ceph::Formatter* f) const { + return _dump(f, true); + } ceph::cref_t release_client_request(); void reset_peer_request(const ceph::cref_t& req=nullptr); @@ -416,6 +418,7 @@ struct MDRequestImpl : public MutationImpl { CInode *in[2] = {}; CDentry *straydn = nullptr; snapid_t snapid = CEPH_NOSNAP; + snapid_t snapid_diff_other = CEPH_NOSNAP; CInode *tracei = nullptr; CDentry *tracedn = nullptr; @@ -452,10 +455,11 @@ struct MDRequestImpl : public MutationImpl { bool waited_for_osdmap = false; protected: - void _dump(ceph::Formatter *f) const override; - void _dump_op_descriptor_unlocked(std::ostream& stream) const override; -private: - mutable ceph::spinlock msg_lock; + void _dump(ceph::Formatter *f) const override { + _dump(f, false); + } + void _dump(ceph::Formatter *f, bool has_mds_lock) const; + void _dump_op_descriptor(std::ostream& stream) const override; }; struct MDPeerUpdate {