Whamcloud - gitweb
b=21420 Add mds/mgs stats to HEAD
[fs/lustre-release.git] / lustre / mdt / mdt_lib.c
index de23917..07ce5ab 100644 (file)
@@ -26,7 +26,7 @@
  * GPL HEADER END
  */
 /*
- * Copyright  2008 Sun Microsystems, Inc. All rights reserved
+ * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  */
 /*
@@ -542,7 +542,7 @@ void mdt_dump_lmm(int level, const struct lov_mds_md *lmm)
         for (i = 0, lod = lmm->lmm_objects; i < stripe_count; i++, lod++) {
                 CDEBUG(level, "stripe %u idx %u subobj "LPX64"/"LPX64"\n",
                        i, le32_to_cpu(lod->l_ost_idx),
-                       le64_to_cpu(lod->l_object_gr),
+                       le64_to_cpu(lod->l_object_seq),
                        le64_to_cpu(lod->l_object_id));
         }
 }
@@ -572,10 +572,10 @@ void mdt_shrink_reply(struct mdt_thread_info *info)
         }
 
         CDEBUG(D_INFO, "Shrink to md_size = %d cookie/acl_size = %d"
-                        " MDSCAPA = "LPX64", OSSCAPA = "LPX64"\n",
+                        " MDSCAPA = %llx, OSSCAPA = %llx\n",
                         md_size, acl_size,
-                        body->valid & OBD_MD_FLMDSCAPA,
-                        body->valid & OBD_MD_FLOSSCAPA);
+                        (unsigned long long)(body->valid & OBD_MD_FLMDSCAPA),
+                        (unsigned long long)(body->valid & OBD_MD_FLOSSCAPA));
 /*
             &RMF_MDT_BODY,
             &RMF_MDT_MD,
@@ -1071,8 +1071,7 @@ static int mdt_unlink_unpack(struct mdt_thread_info *info)
         else
                 ma->ma_attr_flags &= ~MDS_VTX_BYPASS;
 
-        if (lustre_msg_get_flags(mdt_info_req(info)->rq_reqmsg) & MSG_REPLAY)
-                info->mti_spec.no_create = 1;
+        info->mti_spec.no_create = !!req_is_replay(mdt_info_req(info));
 
         rc = mdt_dlmreq_unpack(info);
         RETURN(rc);
@@ -1132,8 +1131,7 @@ static int mdt_rename_unpack(struct mdt_thread_info *info)
         else
                 ma->ma_attr_flags &= ~MDS_VTX_BYPASS;
 
-        if (lustre_msg_get_flags(mdt_info_req(info)->rq_reqmsg) & MSG_REPLAY)
-                info->mti_spec.no_create = 1;
+        info->mti_spec.no_create = !!req_is_replay(mdt_info_req(info));
 
         rc = mdt_dlmreq_unpack(info);
         RETURN(rc);
@@ -1175,6 +1173,9 @@ static int mdt_open_unpack(struct mdt_thread_info *info)
                          LA_CTIME | LA_MTIME | LA_ATIME;
         memset(&info->mti_spec.u, 0, sizeof(info->mti_spec.u));
         info->mti_spec.sp_cr_flags = rec->cr_flags;
+        /* Do not trigger ASSERTION if client miss to set such flags. */
+        if (unlikely(info->mti_spec.sp_cr_flags == 0))
+                RETURN(-EPROTO);
         info->mti_replayepoch = rec->cr_ioepoch;
 
         info->mti_spec.sp_ck_split = !!(rec->cr_bias & MDS_CHECK_SPLIT);
@@ -1183,8 +1184,8 @@ static int mdt_open_unpack(struct mdt_thread_info *info)
         if (req_capsule_get_size(pill, &RMF_CAPA1, RCL_CLIENT))
                 mdt_set_capainfo(info, 0, rr->rr_fid1,
                                  req_capsule_client_get(pill, &RMF_CAPA1));
-        if ((lustre_msg_get_flags(req->rq_reqmsg) & MSG_REPLAY) &&
-            (req_capsule_get_size(pill, &RMF_CAPA2, RCL_CLIENT))) {
+        if (req_is_replay(req) &&
+            req_capsule_get_size(pill, &RMF_CAPA2, RCL_CLIENT)) {
 #if 0
                 mdt_set_capainfo(info, 1, rr->rr_fid2,
                                  req_capsule_client_get(pill, &RMF_CAPA2));
@@ -1207,8 +1208,7 @@ static int mdt_open_unpack(struct mdt_thread_info *info)
                                                      RCL_CLIENT);
         if (sp->u.sp_ea.eadatalen) {
                 sp->u.sp_ea.eadata = req_capsule_client_get(pill, &RMF_EADATA);
-                if (lustre_msg_get_flags(req->rq_reqmsg) & MSG_REPLAY)
-                        sp->no_create = 1;
+                sp->no_create = !!req_is_replay(req);
         }
 
         RETURN(0);