]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
client: don't hang when MDS sessions are evicted
authorRishabh Dave <ridave@redhat.com>
Tue, 24 Apr 2018 08:55:44 +0000 (08:55 +0000)
committerRishabh Dave <ridave@redhat.com>
Mon, 30 Apr 2018 12:01:52 +0000 (12:01 +0000)
Currently, a filesystem client hangs if a request is made after it's
eviction. Prevent the client from hanging and allow a manual unmount
in such cases.

Fixes: http://tracker.ceph.com/issues/10915
Signed-off-by: Rishabh Dave <ridave@redhat.com>
src/client/Client.cc

index 9f82607609b90757728c58ec6300d00b3ede8b42..4b980d99afae5f0214e086f5d3941301330225a8 100644 (file)
@@ -13512,6 +13512,7 @@ void Client::ms_handle_remote_reset(Connection *con)
 
        case MetaSession::STATE_OPEN:
          {
+           objecter->maybe_request_map(); /* to check if we are blacklisted */
            const md_config_t *conf = cct->_conf;
            if (conf->client_reconnect_stale) {
              ldout(cct, 1) << "reset from mds we were open; close mds session for reconnect" << dendl;