Patch "ceph: reinitialize mds feature bit even when session in open" has been added to the 6.7-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    ceph: reinitialize mds feature bit even when session in open

to the 6.7-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-reinitialize-mds-feature-bit-even-when-session-.patch
and it can be found in the queue-6.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 2a782fb64ef5c708df3bba1ca1b3ff2d68c54139
Author: Venky Shankar <vshankar@xxxxxxxxxx>
Date:   Mon Nov 6 10:02:32 2023 +0530

    ceph: reinitialize mds feature bit even when session in open
    
    [ Upstream commit f48e0342a74d7770cdf1d11894bdc3b6d989b29e ]
    
    Following along the same lines as per the user-space fix. Right
    now this isn't really an issue with the ceph kernel driver because
    of the feature bit laginess, however, that can change over time
    (when the new snaprealm info type is ported to the kernel driver)
    and depending on the MDS version that's being upgraded can cause
    message decoding issues - so, fix that early on.
    
    Link: http://tracker.ceph.com/issues/63188
    Signed-off-by: Venky Shankar <vshankar@xxxxxxxxxx>
    Reviewed-by: Xiubo Li <xiubli@xxxxxxxxxx>
    Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index d95eb525519a..558c3af44449 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -4128,12 +4128,12 @@ static void handle_session(struct ceph_mds_session *session,
 			pr_info_client(cl, "mds%d reconnect success\n",
 				       session->s_mds);
 
+		session->s_features = features;
 		if (session->s_state == CEPH_MDS_SESSION_OPEN) {
 			pr_notice_client(cl, "mds%d is already opened\n",
 					 session->s_mds);
 		} else {
 			session->s_state = CEPH_MDS_SESSION_OPEN;
-			session->s_features = features;
 			renewed_caps(mdsc, session, 0);
 			if (test_bit(CEPHFS_FEATURE_METRIC_COLLECT,
 				     &session->s_features))




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux