From f02b77787e55d0dcfd34597615702bb6402828e7 Mon Sep 17 00:00:00 2001 From: Ramana Raja Date: Wed, 21 Sep 2022 16:31:05 -0400 Subject: [PATCH] cephfs: add additional logging to track change_attr of inodes Signed-off-by: Ramana Raja --- src/client/Client.cc | 3 ++- src/client/Inode.cc | 1 + src/mds/CInode.cc | 4 +++- src/messages/MClientCaps.h | 4 +++- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/client/Client.cc b/src/client/Client.cc index fd3f83ac9172..12996e8294df 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -1108,6 +1108,7 @@ Inode * Client::add_update_inode(InodeStat *st, utime_t from, } /* always take a newer change attr */ + ldout(cct, 12) << __func__ << " client inode change_attr: " << in->change_attr << " , mds inodestat change_attr: " << st->change_attr << dendl; if (st->change_attr > in->change_attr) in->change_attr = st->change_attr; @@ -8334,7 +8335,7 @@ void Client::fill_statx(Inode *in, unsigned int mask, struct ceph_statx *stx) { ldout(cct, 10) << __func__ << " on " << in->ino << " snap/dev" << in->snapid << " mode 0" << oct << in->mode << dec - << " mtime " << in->mtime << " ctime " << in->ctime << dendl; + << " mtime " << in->mtime << " ctime " << in->ctime << " change_attr " << in->change_attr << dendl; memset(stx, 0, sizeof(struct ceph_statx)); /* diff --git a/src/client/Inode.cc b/src/client/Inode.cc index ce58a2f14023..0c19bef5e181 100644 --- a/src/client/Inode.cc +++ b/src/client/Inode.cc @@ -56,6 +56,7 @@ ostream& operator<<(ostream &out, const Inode &in) << " btime=" << in.btime << " mtime=" << in.mtime << " ctime=" << in.ctime + << " change_attr=" << in.change_attr << " caps=" << ccap_string(in.caps_issued()); if (!in.caps.empty()) { out << "("; diff --git a/src/mds/CInode.cc b/src/mds/CInode.cc index e286f24d940e..4a429f15f2e8 100644 --- a/src/mds/CInode.cc +++ b/src/mds/CInode.cc @@ -3800,7 +3800,9 @@ int CInode::encode_inodestat(bufferlist& bl, Session *session, dout(20) << " pfile " << pfile << " pauth " << pauth << " plink " << plink << " pxattr " << pxattr << " plocal " << plocal + << " mtime " << any_i->mtime << " ctime " << any_i->ctime + << " change_attr " << any_i->change_attr << " valid=" << valid << dendl; // file @@ -4148,7 +4150,7 @@ void CInode::encode_cap_message(const ref_t &m, Capability *cap) dout(20) << __func__ << " pfile " << pfile << " pauth " << pauth << " plink " << plink << " pxattr " << pxattr - << " ctime " << i->ctime << dendl; + << " mtime " << i->mtime << " ctime " << i->ctime << " change_attr " << i->change_attr << dendl; i = pfile ? pi:oi; m->set_layout(i->layout); diff --git a/src/messages/MClientCaps.h b/src/messages/MClientCaps.h index 1489f97df0b5..9d343a4af6b7 100644 --- a/src/messages/MClientCaps.h +++ b/src/messages/MClientCaps.h @@ -194,7 +194,9 @@ public: out << " size " << size << "/" << max_size; if (truncate_seq) out << " ts " << truncate_seq << "/" << truncate_size; - out << " mtime " << mtime; + out << " mtime " << mtime + << " ctime " << ctime + << " change_attr " << change_attr; if (time_warp_seq) out << " tws " << time_warp_seq; -- 2.47.3