Commit cc8e8342 authored by Yan, Zheng's avatar Yan, Zheng Committed by Ilya Dryomov

ceph: fix mds cluster availability check

We should apply the check after getting the initial mdsmap.

Fixes: e9e427f0 ("ceph: check availability of mds cluster on mount")
Link: http://tracker.ceph.com/issues/18161Signed-off-by: default avatarYan, Zheng <zyan@redhat.com>
parent a121103c
...@@ -2106,6 +2106,11 @@ static int __do_request(struct ceph_mds_client *mdsc, ...@@ -2106,6 +2106,11 @@ static int __do_request(struct ceph_mds_client *mdsc,
dout("do_request mdsmap err %d\n", err); dout("do_request mdsmap err %d\n", err);
goto finish; goto finish;
} }
if (mdsc->mdsmap->m_epoch == 0) {
dout("do_request no mdsmap, waiting for map\n");
list_add(&req->r_wait, &mdsc->waiting_for_map);
goto finish;
}
if (!(mdsc->fsc->mount_options->flags & if (!(mdsc->fsc->mount_options->flags &
CEPH_MOUNT_OPT_MOUNTWAIT) && CEPH_MOUNT_OPT_MOUNTWAIT) &&
!ceph_mdsmap_is_cluster_available(mdsc->mdsmap)) { !ceph_mdsmap_is_cluster_available(mdsc->mdsmap)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment