diff options
Diffstat (limited to 'fs/ceph/mds_client.c')
-rw-r--r-- | fs/ceph/mds_client.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index 8a285158aecc..8d95b0f051e4 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c | |||
@@ -2782,16 +2782,8 @@ void ceph_mdsc_handle_map(struct ceph_mds_client *mdsc, struct ceph_msg *msg) | |||
2782 | 2782 | ||
2783 | ceph_decode_need(&p, end, sizeof(fsid)+2*sizeof(u32), bad); | 2783 | ceph_decode_need(&p, end, sizeof(fsid)+2*sizeof(u32), bad); |
2784 | ceph_decode_copy(&p, &fsid, sizeof(fsid)); | 2784 | ceph_decode_copy(&p, &fsid, sizeof(fsid)); |
2785 | if (mdsc->client->monc.have_fsid) { | 2785 | if (ceph_check_fsid(mdsc->client, &fsid) < 0) |
2786 | if (ceph_fsid_compare(&fsid, | 2786 | return; |
2787 | &mdsc->client->monc.monmap->fsid)) { | ||
2788 | pr_err("got mdsmap with wrong fsid\n"); | ||
2789 | return; | ||
2790 | } | ||
2791 | } else { | ||
2792 | ceph_fsid_set(&mdsc->client->monc.monmap->fsid, &fsid); | ||
2793 | mdsc->client->monc.have_fsid = true; | ||
2794 | } | ||
2795 | epoch = ceph_decode_32(&p); | 2787 | epoch = ceph_decode_32(&p); |
2796 | maplen = ceph_decode_32(&p); | 2788 | maplen = ceph_decode_32(&p); |
2797 | dout("handle_map epoch %u len %d\n", epoch, (int)maplen); | 2789 | dout("handle_map epoch %u len %d\n", epoch, (int)maplen); |