From: Yan, Zheng Date: Wed, 2 Jan 2019 07:48:04 +0000 (+0800) Subject: mds: remove wrong assertion in Locker::snapflush_nudge X-Git-Tag: v14.1.0~467^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=75a872734cbbf2e8e9f24bf2ace3bdbf26bf7e75;p=ceph-ci.git mds: remove wrong assertion in Locker::snapflush_nudge head inode gets unpinned when snapflush starts. It might get trimmed before snapflush finishes. Fixes: http://tracker.ceph.com/issues/37721 Signed-off-by: "Yan, Zheng" --- diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc index e103a5ee029..3356a86a39c 100644 --- a/src/mds/Locker.cc +++ b/src/mds/Locker.cc @@ -2561,7 +2561,11 @@ void Locker::snapflush_nudge(CInode *in) return; CInode *head = mdcache->get_inode(in->ino()); - ceph_assert(head); + // head inode gets unpinned when snapflush starts. It might get trimmed + // before snapflush finishes. + if (!head) + return; + ceph_assert(head->is_auth()); if (head->client_need_snapflush.empty()) return;