This is a note to let you know that I've just added the patch titled ceph: flush cap releases when the session is flushed to the 6.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: ceph-flush-cap-releases-when-the-session-is-flushed.patch and it can be found in the queue-6.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From e7d84c6a1296d059389f7342d9b4b7defb518d3a Mon Sep 17 00:00:00 2001 From: Xiubo Li <xiubli@xxxxxxxxxx> Date: Tue, 7 Feb 2023 13:04:52 +0800 Subject: ceph: flush cap releases when the session is flushed From: Xiubo Li <xiubli@xxxxxxxxxx> commit e7d84c6a1296d059389f7342d9b4b7defb518d3a upstream. MDS expects the completed cap release prior to responding to the session flush for cache drop. Cc: stable@xxxxxxxxxxxxxxx Link: http://tracker.ceph.com/issues/38009 Signed-off-by: Xiubo Li <xiubli@xxxxxxxxxx> Reviewed-by: Venky Shankar <vshankar@xxxxxxxxxx> Reviewed-by: Jeff Layton <jlayton@xxxxxxxxxx> Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- fs/ceph/mds_client.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c @@ -3662,6 +3662,12 @@ static void handle_session(struct ceph_m 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; Patches currently in stable-queue which might be from xiubli@xxxxxxxxxx are queue-6.1/ceph-flush-cap-releases-when-the-session-is-flushed.patch