]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cephfs: session tracker accounts for killing sessions 62631/head
authorAbhishek Lekshmanan <abhishek.lekshmanan@cern.ch>
Wed, 2 Apr 2025 13:57:42 +0000 (15:57 +0200)
committerAbhishek Lekshmanan <abhishek.lekshmanan@cern.ch>
Tue, 22 Apr 2025 09:31:55 +0000 (11:31 +0200)
Fixes: https://tracker.ceph.com/issues/70770
Signed-off-by: Abhishek Lekshmanan <abhishek.lekshmanan@cern.ch>
src/mds/SessionMap.cc

index b9d4ef8e08fb67b935cea6f4b8cc26a3140856cf..0a473b3cbcf06832a22cc5c4eb9aa2ef0429b29b 100644 (file)
@@ -1091,9 +1091,11 @@ int Session::check_access(CInode *in, unsigned mask,
 
 // track total and per session load
 void SessionMap::hit_session(Session *session) {
-  uint64_t sessions = get_session_count_in_state(Session::STATE_OPEN) +
+  uint64_t sessions = get_session_count_in_state(Session::STATE_OPENING) +
+                      get_session_count_in_state(Session::STATE_OPEN) +
                       get_session_count_in_state(Session::STATE_STALE) +
-                      get_session_count_in_state(Session::STATE_CLOSING);
+                      get_session_count_in_state(Session::STATE_CLOSING) +
+                      get_session_count_in_state(Session::STATE_KILLING);
   ceph_assert(sessions != 0);
 
   double total_load = total_load_avg.hit();