Whamcloud - gitweb
LU-3781 mdt: Atomically update MDT exp_connect_data
[fs/lustre-release.git] / lustre / mdt / mdt_handler.c
index a3b2a1d..9108cfb 100644 (file)
@@ -1620,6 +1620,8 @@ int mdt_connect(struct mdt_thread_info *info)
        reply = req_capsule_server_get(info->mti_pill, &RMF_CONNECT_DATA);
        spin_lock(&exp->exp_lock);
        *exp_connect_flags_ptr(exp) = reply->ocd_connect_flags;
+       exp->exp_mdt_data.med_ibits_known = reply->ocd_ibits_known;
+       exp->exp_connect_data.ocd_brw_size = reply->ocd_brw_size;
        spin_unlock(&exp->exp_lock);
 
        rc = mdt_init_idmap(info);
@@ -5421,8 +5423,6 @@ static int mdt_connect_internal(struct obd_export *exp,
        }
 
        data->ocd_version = LUSTRE_VERSION_CODE;
-       exp->exp_connect_data = *data;
-       exp->exp_mdt_data.med_ibits_known = data->ocd_ibits_known;
 
        if ((data->ocd_connect_flags & OBD_CONNECT_FID) == 0) {
                CWARN("%s: MDS requires FID support, but client not\n",