projects/linux·commit 3647d2d7

Merge tag 'ceph-for-6.2-rc8' of https://github.com/ceph/ceph-client

3647d2d7 · Linus Torvalds <[email protected]> · 2023-02-10 09:04:00 -08:00

Pull ceph fix from Ilya Dryomov:
 "A fix for a pretty embarrassing omission in the session flush handler
  from Xiubo, marked for stable"

* tag 'ceph-for-6.2-rc8' of https://github.com/ceph/ceph-client:
  ceph: flush cap releases when the session is flushed
Commit
3647d2d70640ff85be60793fa4b204bdae26ca44
Parents
29716680 · e7d84c6a

Merge commit. Changes below are compared with the first parent: 29716680.

Changes

1 files changed · +6 −0

FileStatusAddDelContent
fs/ceph/mds_client.cmodified+6−0View file

fs/ceph/mds_client.c

View file
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index e163f58..27a245d 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -3685,6 +3685,12 @@ static void handle_session(struct ceph_mds_session *session,
break;
case CEPH_SESSION_FLUSHMSG:
+ /* flush cap releases */
+ spin_lock(&session->s_cap_lock);
+ if (session->s_num_cap_releases)
+ ceph_flush_cap_releases(mdsc, session);
+ spin_unlock(&session->s_cap_lock);
+
send_flushmsg_ack(mdsc, session, seq);
break;