ceph: scattered page writeback
[deliverable/linux.git] / fs / ceph / mds_client.c
index 911d64d865f176aa4ce28832207abb8651a4fec8..b43399d22e23ec7c49eda6d7e8d211614d38072a 100644 (file)
@@ -3764,7 +3764,6 @@ void ceph_mdsc_handle_map(struct ceph_mds_client *mdsc, struct ceph_msg *msg)
        dout("handle_map epoch %u len %d\n", epoch, (int)maplen);
 
        /* do we need it? */
-       ceph_monc_got_mdsmap(&mdsc->fsc->client->monc, epoch);
        mutex_lock(&mdsc->mutex);
        if (mdsc->mdsmap && epoch <= mdsc->mdsmap->m_epoch) {
                dout("handle_map epoch %u <= our %u\n",
@@ -3791,6 +3790,8 @@ void ceph_mdsc_handle_map(struct ceph_mds_client *mdsc, struct ceph_msg *msg)
        mdsc->fsc->sb->s_maxbytes = mdsc->mdsmap->m_max_file_size;
 
        __wake_requests(mdsc, &mdsc->waiting_for_map);
+       ceph_monc_got_map(&mdsc->fsc->client->monc, CEPH_SUB_MDSMAP,
+                         mdsc->mdsmap->m_epoch);
 
        mutex_unlock(&mdsc->mutex);
        schedule_delayed(mdsc);
This page took 0.024213 seconds and 5 git commands to generate.