From: Yan, Zheng Date: Thu, 6 Dec 2018 09:22:25 +0000 (+0800) Subject: client: avoid unnecessary wakeup when handling RENEWCAPS X-Git-Tag: v13.2.7~27^2~6 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=af08c79cdd15ff282f180a9bcfd13b675c3ebcc7;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 55d293b11fc..8517ecc4b7a 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -2100,9 +2100,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;