From b59318702bdd862400461dba3ac4922a081cb1ea Mon Sep 17 00:00:00 2001 From: shenhang Date: Mon, 16 Sep 2019 19:21:04 +0800 Subject: [PATCH] client: add warning when cap != in->auth_cap. Fixes: https://tracker.ceph.com/issues/41799 Signed-off-by: Shen Hang (cherry picked from commit 387686c560c6266904172732740c62db7582e4ef) --- src/client/Client.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/client/Client.cc b/src/client/Client.cc index 08bfb2f3d5bf..603aae0a8677 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -4025,7 +4025,9 @@ void Client::add_update_cap(Inode *in, MetaSession *mds_session, uint64_t cap_id * don't remove caps. */ if (ceph_seq_cmp(seq, cap.seq) <= 0) { - ceph_assert(&cap == in->auth_cap); + if (&cap != in->auth_cap) + ldout(cct, 0) << "WARNING: " << "inode " << *in << " caps on mds." << mds << " != auth_cap." << dendl; + ceph_assert(cap.cap_id == cap_id); seq = cap.seq; mseq = cap.mseq; -- 2.47.3