diff options
author | Xiubo Li <xiubli@redhat.com> | 2022-03-22 11:03:13 +0800 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2022-04-25 10:45:15 +0200 |
commit | 396ea1681892211dd3fbc1a58bfc2c2c971433e3 (patch) | |
tree | 7be9891f5ff91d2daaa1e7015d264d4d734cf372 | |
parent | 7f47f7f3b3c33fd2b4a662cd43cd1af96e1a297e (diff) | |
download | linux-stable-396ea1681892211dd3fbc1a58bfc2c2c971433e3.tar.gz linux-stable-396ea1681892211dd3fbc1a58bfc2c2c971433e3.tar.bz2 linux-stable-396ea1681892211dd3fbc1a58bfc2c2c971433e3.zip |
ceph: remove incorrect session state check
Once the session is opened the s->s_ttl will be set, and when receiving
a new mdsmap and the MDS map is changed, it will be possibly will close
some sessions and open new ones. And then some sessions will be in
CLOSING state evening without unmounting.
URL: https://tracker.ceph.com/issues/54979
Signed-off-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
-rw-r--r-- | fs/ceph/mds_client.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index fa38c013126d..00c3de177dd6 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c @@ -4434,8 +4434,6 @@ static void maybe_recover_session(struct ceph_mds_client *mdsc) bool check_session_state(struct ceph_mds_session *s) { - struct ceph_fs_client *fsc = s->s_mdsc->fsc; - switch (s->s_state) { case CEPH_MDS_SESSION_OPEN: if (s->s_ttl && time_after(jiffies, s->s_ttl)) { @@ -4444,10 +4442,6 @@ bool check_session_state(struct ceph_mds_session *s) } break; case CEPH_MDS_SESSION_CLOSING: - /* Should never reach this when not force unmounting */ - WARN_ON_ONCE(s->s_ttl && - READ_ONCE(fsc->mount_state) != CEPH_MOUNT_SHUTDOWN); - fallthrough; case CEPH_MDS_SESSION_NEW: case CEPH_MDS_SESSION_RESTARTING: case CEPH_MDS_SESSION_CLOSED: |