Whamcloud - gitweb
LU-1267 lfsck: framework (3) for MDT-OST consistency
[fs/lustre-release.git] / lustre / utils / wirecheck.c
index 2211b0f..0536384 100644 (file)
@@ -27,7 +27,7 @@
  * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2011, 2012, Intel Corporation.
+ * Copyright (c) 2011, 2013, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
@@ -210,6 +210,8 @@ check_lustre_mdt_attrs(void)
 
        CHECK_VALUE_X(LMAC_HSM);
        CHECK_VALUE_X(LMAC_SOM);
+       CHECK_VALUE_X(LMAC_NOT_IN_OI);
+       CHECK_VALUE_X(LMAC_FID_ON_OST);
 }
 
 static void
@@ -241,8 +243,7 @@ check_ost_id(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(ost_id);
-       CHECK_MEMBER(ost_id, oi_id);
-       CHECK_MEMBER(ost_id, oi_seq);
+       CHECK_MEMBER(ost_id, oi);
 
        CHECK_VALUE(LUSTRE_FID_INIT_OID);
 
@@ -262,6 +263,7 @@ check_ost_id(void)
        CHECK_VALUE_64X(FID_SEQ_SPECIAL);
        CHECK_VALUE_64X(FID_SEQ_QUOTA);
        CHECK_VALUE_64X(FID_SEQ_QUOTA_GLB);
+       CHECK_VALUE_64X(FID_SEQ_ROOT);
        CHECK_VALUE_64X(FID_SEQ_NORMAL);
        CHECK_VALUE_64X(FID_SEQ_LOV_DEFAULT);
 
@@ -520,6 +522,8 @@ check_obd_connect_data(void)
        CHECK_DEFINE_64X(OBD_CONNECT_LIGHTWEIGHT);
        CHECK_DEFINE_64X(OBD_CONNECT_SHORTIO);
        CHECK_DEFINE_64X(OBD_CONNECT_PINGLESS);
+       CHECK_DEFINE_64X(OBD_CONNECT_FLOCK_DEAD);
+       CHECK_DEFINE_64X(OBD_CONNECT_OPEN_BY_FID);
 
        CHECK_VALUE_X(OBD_CKSUM_CRC32);
        CHECK_VALUE_X(OBD_CKSUM_ADLER);
@@ -532,8 +536,7 @@ check_obdo(void)
        BLANK_LINE();
        CHECK_STRUCT(obdo);
        CHECK_MEMBER(obdo, o_valid);
-       CHECK_MEMBER(obdo, o_id);
-       CHECK_MEMBER(obdo, o_seq);
+       CHECK_MEMBER(obdo, o_oi);
        CHECK_MEMBER(obdo, o_parent_seq);
        CHECK_MEMBER(obdo, o_size);
        CHECK_MEMBER(obdo, o_mtime);
@@ -593,6 +596,7 @@ check_obdo(void)
        CHECK_DEFINE_64X(OBD_MD_MDS);
        CHECK_DEFINE_64X(OBD_MD_REINT);
        CHECK_DEFINE_64X(OBD_MD_MEA);
+       CHECK_DEFINE_64X(OBD_MD_TSTATE);
        CHECK_DEFINE_64X(OBD_MD_FLXATTR);
        CHECK_DEFINE_64X(OBD_MD_FLXATTRLS);
        CHECK_DEFINE_64X(OBD_MD_FLXATTRRM);
@@ -629,6 +633,8 @@ check_obdo(void)
        CHECK_CVALUE_X(OBD_FL_MMAP);
        CHECK_CVALUE_X(OBD_FL_RECOV_RESEND);
        CHECK_CVALUE_X(OBD_FL_NOSPC_BLK);
+       CHECK_CVALUE_X(OBD_FL_FLUSH);
+       CHECK_CVALUE_X(OBD_FL_SHORT_IO);
        CHECK_CVALUE_X(OBD_FL_LOCAL_MASK);
 }
 
@@ -637,8 +643,7 @@ check_lov_ost_data_v1(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(lov_ost_data_v1);
-       CHECK_MEMBER(lov_ost_data_v1, l_object_id);
-       CHECK_MEMBER(lov_ost_data_v1, l_object_seq);
+       CHECK_MEMBER(lov_ost_data_v1, l_ost_oi);
        CHECK_MEMBER(lov_ost_data_v1, l_ost_gen);
        CHECK_MEMBER(lov_ost_data_v1, l_ost_idx);
 }
@@ -712,8 +717,7 @@ check_obd_ioobj(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(obd_ioobj);
-       CHECK_MEMBER(obd_ioobj, ioo_id);
-       CHECK_MEMBER(obd_ioobj, ioo_seq);
+       CHECK_MEMBER(obd_ioobj, ioo_oid);
        CHECK_MEMBER(obd_ioobj, ioo_max_brw);
        CHECK_MEMBER(obd_ioobj, ioo_bufcnt);
 }
@@ -839,6 +843,9 @@ check_niobuf_remote(void)
        CHECK_DEFINE_X(OBD_BRW_SRVLOCK);
        CHECK_DEFINE_X(OBD_BRW_ASYNC);
        CHECK_DEFINE_X(OBD_BRW_MEMALLOC);
+       CHECK_DEFINE_X(OBD_BRW_OVER_USRQUOTA);
+       CHECK_DEFINE_X(OBD_BRW_OVER_GRPQUOTA);
+       CHECK_DEFINE_X(OBD_BRW_SOFT_SYNC);
 }
 
 static void
@@ -873,7 +880,7 @@ check_mdt_body(void)
        CHECK_MEMBER(mdt_body, atime);
        CHECK_MEMBER(mdt_body, ctime);
        CHECK_MEMBER(mdt_body, blocks);
-       CHECK_MEMBER(mdt_body, unused1);
+       CHECK_MEMBER(mdt_body, t_state);
        CHECK_MEMBER(mdt_body, fsuid);
        CHECK_MEMBER(mdt_body, fsgid);
        CHECK_MEMBER(mdt_body, capability);
@@ -1176,8 +1183,8 @@ check_mdt_rec_reint(void)
        CHECK_MEMBER(mdt_rec_reint, rr_bias);
        CHECK_MEMBER(mdt_rec_reint, rr_mode);
        CHECK_MEMBER(mdt_rec_reint, rr_flags);
-       CHECK_MEMBER(mdt_rec_reint, rr_padding_2);
-       CHECK_MEMBER(mdt_rec_reint, rr_padding_3);
+       CHECK_MEMBER(mdt_rec_reint, rr_flags_h);
+       CHECK_MEMBER(mdt_rec_reint, rr_umask);
        CHECK_MEMBER(mdt_rec_reint, rr_padding_4);
 }
 
@@ -1200,20 +1207,6 @@ check_lmv_desc(void)
 }
 
 static void
-check_lmv_stripe_md(void)
-{
-       BLANK_LINE();
-       CHECK_STRUCT(lmv_stripe_md);
-       CHECK_MEMBER(lmv_stripe_md, mea_magic);
-       CHECK_MEMBER(lmv_stripe_md, mea_count);
-       CHECK_MEMBER(lmv_stripe_md, mea_master);
-       CHECK_MEMBER(lmv_stripe_md, mea_padding);
-       CHECK_CVALUE(LOV_MAXPOOLNAME);
-       CHECK_MEMBER(lmv_stripe_md, mea_pool_name[LOV_MAXPOOLNAME]);
-       CHECK_MEMBER(lmv_stripe_md, mea_ids[0]);
-}
-
-static void
 check_lov_desc(void)
 {
        BLANK_LINE();
@@ -1410,8 +1403,7 @@ check_llog_logid(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(llog_logid);
-       CHECK_MEMBER(llog_logid, lgl_oid);
-       CHECK_MEMBER(llog_logid, lgl_oseq);
+       CHECK_MEMBER(llog_logid, lgl_oi);
        CHECK_MEMBER(llog_logid, lgl_ogen);
 
        CHECK_CVALUE(OST_SZ_REC);
@@ -1501,8 +1493,7 @@ check_llog_setattr64_rec(void)
        BLANK_LINE();
        CHECK_STRUCT(llog_setattr64_rec);
        CHECK_MEMBER(llog_setattr64_rec, lsr_hdr);
-       CHECK_MEMBER(llog_setattr64_rec, lsr_oid);
-       CHECK_MEMBER(llog_setattr64_rec, lsr_oseq);
+       CHECK_MEMBER(llog_setattr64_rec, lsr_oi);
        CHECK_MEMBER(llog_setattr64_rec, lsr_uid);
        CHECK_MEMBER(llog_setattr64_rec, lsr_uid_h);
        CHECK_MEMBER(llog_setattr64_rec, lsr_gid);
@@ -1953,8 +1944,7 @@ static void check_layout_intent(void)
        CHECK_VALUE(LAYOUT_INTENT_RESTORE);
 }
 
-static void
-check_hsm_state_set(void)
+static void check_hsm_state_set(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(hsm_state_set);
@@ -1964,8 +1954,7 @@ check_hsm_state_set(void)
        CHECK_MEMBER(hsm_state_set, hss_clearmask);
 }
 
-static void
-check_hsm_current_action(void)
+static void check_hsm_current_action(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(hsm_current_action);
@@ -1974,8 +1963,7 @@ check_hsm_current_action(void)
        CHECK_MEMBER(hsm_current_action, hca_location);
 }
 
-static void
-check_hsm_request(void)
+static void check_hsm_request(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(hsm_request);
@@ -1988,8 +1976,7 @@ check_hsm_request(void)
        CHECK_VALUE_X(HSM_GHOST_COPY);
 }
 
-static void
-check_hsm_user_request(void)
+static void check_hsm_user_request(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(hsm_user_request);
@@ -1997,6 +1984,21 @@ check_hsm_user_request(void)
        CHECK_MEMBER(hsm_user_request, hur_user_item);
 }
 
+static void check_hsm_user_import(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(hsm_user_import);
+       CHECK_MEMBER(hsm_user_import, hui_size);
+       CHECK_MEMBER(hsm_user_import, hui_uid);
+       CHECK_MEMBER(hsm_user_import, hui_gid);
+       CHECK_MEMBER(hsm_user_import, hui_mode);
+       CHECK_MEMBER(hsm_user_import, hui_atime);
+       CHECK_MEMBER(hsm_user_import, hui_atime_ns);
+       CHECK_MEMBER(hsm_user_import, hui_mtime);
+       CHECK_MEMBER(hsm_user_import, hui_mtime_ns);
+       CHECK_MEMBER(hsm_user_import, hui_archive_id);
+}
+
 static void check_update_buf(void)
 {
        BLANK_LINE();
@@ -2026,6 +2028,34 @@ static void check_update(void)
        CHECK_MEMBER(update, u_bufs);
 }
 
+static void check_lfsck_request(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(lfsck_request);
+       CHECK_MEMBER(lfsck_request, lr_event);
+       CHECK_MEMBER(lfsck_request, lr_index);
+       CHECK_MEMBER(lfsck_request, lr_flags);
+       CHECK_MEMBER(lfsck_request, lr_valid);
+       CHECK_MEMBER(lfsck_request, lr_speed);
+       CHECK_MEMBER(lfsck_request, lr_version);
+       CHECK_MEMBER(lfsck_request, lr_active);
+       CHECK_MEMBER(lfsck_request, lr_param);
+       CHECK_MEMBER(lfsck_request, lr_async_windows);
+       CHECK_MEMBER(lfsck_request, lr_padding_1);
+       CHECK_MEMBER(lfsck_request, lr_fid);
+       CHECK_MEMBER(lfsck_request, lr_padding_2);
+       CHECK_MEMBER(lfsck_request, lr_padding_3);
+}
+
+static void check_lfsck_reply(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(lfsck_reply);
+       CHECK_MEMBER(lfsck_reply, lr_status);
+       CHECK_MEMBER(lfsck_reply, lr_padding_1);
+       CHECK_MEMBER(lfsck_reply, lr_padding_2);
+}
+
 static void system_string(char *cmdline, char *str, int len)
 {
        int   fds[2];
@@ -2221,6 +2251,7 @@ main(int argc, char **argv)
        CHECK_VALUE_64X(MDS_ATTR_BLOCKS);
 
        CHECK_VALUE(FLD_QUERY);
+       CHECK_VALUE(FLD_READ);
        CHECK_VALUE(FLD_FIRST_OPC);
        CHECK_VALUE(FLD_LAST_OPC);
 
@@ -2348,7 +2379,6 @@ main(int argc, char **argv)
        check_mdt_rec_setxattr();
        check_mdt_rec_reint();
        check_lmv_desc();
-       check_lmv_stripe_md();
        check_lov_desc();
        check_ldlm_res_id();
        check_ldlm_extent();
@@ -2414,11 +2444,15 @@ main(int argc, char **argv)
        check_hsm_current_action();
        check_hsm_request();
        check_hsm_user_request();
+       check_hsm_user_import();
 
        check_update_buf();
        check_update_reply();
        check_update();
 
+       check_lfsck_request();
+       check_lfsck_reply();
+
        printf("}\n\n");
 
        return 0;