From 8eff9621abc5c9933975d4ad40551dbf10be31ef Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Thu, 6 Dec 2018 17:22:25 +0800 Subject: [PATCH] client: avoid unnecessary wakeup when handling RENEWCAPS Signed-off-by: "Yan, Zheng" (cherry picked from commit c744bc1673ca0b4e50f41516fdf49c8560db073a) --- 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 3350da6bb1d28..f26c85d453165 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; -- 2.39.5