From: Yan, Zheng Date: Thu, 6 Dec 2018 09:22:25 +0000 (+0800) Subject: client: avoid unnecessary wakeup when handling RENEWCAPS X-Git-Tag: v12.2.12~111^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8eff9621abc5c9933975d4ad40551dbf10be31ef;p=ceph.git client: avoid unnecessary wakeup when handling RENEWCAPS Signed-off-by: "Yan, Zheng" (cherry picked from commit c744bc1673ca0b4e50f41516fdf49c8560db073a) --- diff --git a/src/client/Client.cc b/src/client/Client.cc index 3350da6bb1d..f26c85d4531 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -2087,9 +2087,11 @@ void Client::handle_client_session(MClientSession *m) case CEPH_SESSION_RENEWCAPS: if (session->cap_renew_seq == m->get_seq()) { + bool was_stale = ceph_clock_now() >= session->cap_ttl; session->cap_ttl = session->last_cap_renew_request + mdsmap->get_session_timeout(); - wake_up_session_caps(session, false); + if (was_stale) + wake_up_session_caps(session, false); } break;