Whamcloud - gitweb
LU-7543 obd: reserve connection flag OBD_CONNECT_LOCK_AHEAD
[fs/lustre-release.git] / lustre / utils / wirecheck.c
index 558bcb0..eaec094 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, 2014, Intel Corporation.
+ * Copyright (c) 2011, 2015, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
@@ -35,9 +35,9 @@
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <sys/types.h>
 #include <sys/wait.h>
-#include <libcfs/libcfs.h>
 #include <lustre/lustre_idl.h>
 #include <lustre/lustre_lfsck_user.h>
 #include <lustre_disk.h>
@@ -209,25 +209,11 @@ check_lustre_mdt_attrs(void)
        CHECK_VALUE_X(LMAI_RELEASED);
 
        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
-check_som_attrs(void)
-{
-       BLANK_LINE();
-       CHECK_STRUCT(som_attrs);
-       CHECK_MEMBER(som_attrs, som_compat);
-       CHECK_MEMBER(som_attrs, som_incompat);
-       CHECK_MEMBER(som_attrs, som_ioepoch);
-       CHECK_MEMBER(som_attrs, som_size);
-       CHECK_MEMBER(som_attrs, som_blocks);
-       CHECK_MEMBER(som_attrs, som_mountid);
-}
-
-static void
 check_hsm_attrs(void)
 {
        BLANK_LINE();
@@ -250,8 +236,8 @@ check_ost_id(void)
        CHECK_VALUE(FID_SEQ_OST_MDT0);
        CHECK_VALUE(FID_SEQ_LLOG);
        CHECK_VALUE(FID_SEQ_ECHO);
-       CHECK_VALUE(FID_SEQ_OST_MDT1);
-       CHECK_VALUE(FID_SEQ_OST_MAX);
+       CHECK_VALUE(FID_SEQ_UNUSED_START);
+       CHECK_VALUE(FID_SEQ_UNUSED_END);
        CHECK_VALUE(FID_SEQ_RSVD);
        CHECK_VALUE(FID_SEQ_IGIF);
        CHECK_VALUE_64X(FID_SEQ_IGIF_MAX);
@@ -264,6 +250,9 @@ check_ost_id(void)
        CHECK_VALUE_64X(FID_SEQ_QUOTA);
        CHECK_VALUE_64X(FID_SEQ_QUOTA_GLB);
        CHECK_VALUE_64X(FID_SEQ_ROOT);
+       CHECK_VALUE_64X(FID_SEQ_LAYOUT_RBTREE);
+       CHECK_VALUE_64X(FID_SEQ_UPDATE_LOG);
+       CHECK_VALUE_64X(FID_SEQ_UPDATE_LOG_DIR);
        CHECK_VALUE_64X(FID_SEQ_NORMAL);
        CHECK_VALUE_64X(FID_SEQ_LOV_DEFAULT);
 
@@ -337,9 +326,7 @@ check_lustre_msg_v2(void)
        CHECK_MEMBER(lustre_msg_v2, lm_padding_3);
        CHECK_MEMBER(lustre_msg_v2, lm_buflens[0]);
 
-       CHECK_DEFINE_X(LUSTRE_MSG_MAGIC_V1);
        CHECK_DEFINE_X(LUSTRE_MSG_MAGIC_V2);
-       CHECK_DEFINE_X(LUSTRE_MSG_MAGIC_V1_SWABBED);
        CHECK_DEFINE_X(LUSTRE_MSG_MAGIC_V2_SWABBED);
 }
 
@@ -354,7 +341,9 @@ check_ptlrpc_body(void)
        CHECK_MEMBER(ptlrpc_body, pb_opc);
        CHECK_MEMBER(ptlrpc_body, pb_status);
        CHECK_MEMBER(ptlrpc_body, pb_last_xid);
-       CHECK_MEMBER(ptlrpc_body, pb_last_seen);
+       CHECK_MEMBER(ptlrpc_body, pb_tag);
+       CHECK_MEMBER(ptlrpc_body, pb_padding0);
+       CHECK_MEMBER(ptlrpc_body, pb_padding1);
        CHECK_MEMBER(ptlrpc_body, pb_last_committed);
        CHECK_MEMBER(ptlrpc_body, pb_transno);
        CHECK_MEMBER(ptlrpc_body, pb_flags);
@@ -366,8 +355,11 @@ check_ptlrpc_body(void)
        CHECK_MEMBER(ptlrpc_body, pb_slv);
        CHECK_CVALUE(PTLRPC_NUM_VERSIONS);
        CHECK_MEMBER(ptlrpc_body, pb_pre_versions);
-       CHECK_MEMBER(ptlrpc_body, pb_padding);
-       CHECK_CVALUE(JOBSTATS_JOBID_SIZE);
+       CHECK_MEMBER(ptlrpc_body, pb_mbits);
+       CHECK_MEMBER(ptlrpc_body, pb_padding64_0);
+       CHECK_MEMBER(ptlrpc_body, pb_padding64_1);
+       CHECK_MEMBER(ptlrpc_body, pb_padding64_2);
+       CHECK_CVALUE(LUSTRE_JOBID_SIZE);
        CHECK_MEMBER(ptlrpc_body, pb_jobid);
 
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_handle);
@@ -376,7 +368,9 @@ check_ptlrpc_body(void)
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_opc);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_status);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_last_xid);
-       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_last_seen);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_tag);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding0);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding1);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_last_committed);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_transno);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_flags);
@@ -387,7 +381,10 @@ check_ptlrpc_body(void)
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_limit);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_slv);
        CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_pre_versions);
-       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_mbits);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding64_0);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding64_1);
+       CHECK_MEMBER_SAME(ptlrpc_body_v3, ptlrpc_body_v2, pb_padding64_2);
 
        CHECK_VALUE(MSG_PTLRPC_BODY_OFF);
        CHECK_VALUE(REQ_REC_OFF);
@@ -455,6 +452,8 @@ check_obd_connect_data(void)
        CHECK_MEMBER(obd_connect_data, ocd_max_easize);
        CHECK_MEMBER(obd_connect_data, ocd_instance);
        CHECK_MEMBER(obd_connect_data, ocd_maxbytes);
+       CHECK_MEMBER(obd_connect_data, ocd_maxmodrpcs);
+       CHECK_MEMBER(obd_connect_data, padding0);
        CHECK_MEMBER(obd_connect_data, padding1);
        CHECK_MEMBER(obd_connect_data, padding2);
        CHECK_MEMBER(obd_connect_data, padding3);
@@ -526,7 +525,12 @@ check_obd_connect_data(void)
        CHECK_DEFINE_64X(OBD_CONNECT_OPEN_BY_FID);
        CHECK_DEFINE_64X(OBD_CONNECT_LFSCK);
        CHECK_DEFINE_64X(OBD_CONNECT_UNLINK_CLOSE);
+       CHECK_DEFINE_64X(OBD_CONNECT_MULTIMODRPCS);
        CHECK_DEFINE_64X(OBD_CONNECT_DIR_STRIPE);
+       CHECK_DEFINE_64X(OBD_CONNECT_SUBTREE);
+       CHECK_DEFINE_64X(OBD_CONNECT_LOCK_AHEAD);
+       CHECK_DEFINE_64X(OBD_CONNECT_BULK_MBITS);
+       CHECK_DEFINE_64X(OBD_CONNECT_OBDOPACK);
 
        CHECK_VALUE_X(OBD_CKSUM_CRC32);
        CHECK_VALUE_X(OBD_CKSUM_ADLER);
@@ -587,7 +591,6 @@ check_obdo(void)
        CHECK_DEFINE_64X(OBD_MD_FLHANDLE);
        CHECK_DEFINE_64X(OBD_MD_FLCKSUM);
        CHECK_DEFINE_64X(OBD_MD_FLQOS);
-       CHECK_DEFINE_64X(OBD_MD_FLCOOKIE);
        CHECK_DEFINE_64X(OBD_MD_FLGROUP);
        CHECK_DEFINE_64X(OBD_MD_FLFID);
        CHECK_DEFINE_64X(OBD_MD_FLEPOCH);
@@ -711,6 +714,8 @@ check_lmv_mds_md_v1(void)
        CHECK_CDEFINE(LMV_HASH_TYPE_MASK);
        CHECK_CDEFINE(LMV_HASH_FLAG_MIGRATION);
        CHECK_CDEFINE(LMV_HASH_FLAG_DEAD);
+       CHECK_CDEFINE(LMV_HASH_FLAG_BAD_TYPE);
+       CHECK_CDEFINE(LMV_HASH_FLAG_LOST_LMV);
 }
 
 static void
@@ -921,7 +926,7 @@ check_mdt_body(void)
        CHECK_MEMBER(mdt_body, mbo_eadatasize);
        CHECK_MEMBER(mdt_body, mbo_aclsize);
        CHECK_MEMBER(mdt_body, mbo_max_mdsize);
-       CHECK_MEMBER(mdt_body, mbo_max_cookiesize);
+       CHECK_MEMBER(mdt_body, mbo_unused3);
        CHECK_MEMBER(mdt_body, mbo_uid_h);
        CHECK_MEMBER(mdt_body, mbo_gid_h);
        CHECK_MEMBER(mdt_body, mbo_padding_5);
@@ -933,9 +938,6 @@ check_mdt_body(void)
 
        CHECK_VALUE_O(MDS_FMODE_CLOSED);
        CHECK_VALUE_O(MDS_FMODE_EXEC);
-       CHECK_VALUE_O(MDS_FMODE_EPOCH);
-       CHECK_VALUE_O(MDS_FMODE_TRUNC);
-       CHECK_VALUE_O(MDS_FMODE_SOM);
 
        CHECK_VALUE_O(MDS_OPEN_CREATED);
        CHECK_VALUE_O(MDS_OPEN_CROSS);
@@ -961,8 +963,13 @@ check_mdt_body(void)
        CHECK_DEFINE_X(LUSTRE_SYNC_FL);
        CHECK_DEFINE_X(LUSTRE_IMMUTABLE_FL);
        CHECK_DEFINE_X(LUSTRE_APPEND_FL);
+       CHECK_DEFINE_X(LUSTRE_NODUMP_FL);
        CHECK_DEFINE_X(LUSTRE_NOATIME_FL);
+       CHECK_DEFINE_X(LUSTRE_INDEX_FL);
        CHECK_DEFINE_X(LUSTRE_DIRSYNC_FL);
+       CHECK_DEFINE_X(LUSTRE_TOPDIR_FL);
+       CHECK_DEFINE_X(LUSTRE_DIRECTIO_FL);
+       CHECK_DEFINE_X(LUSTRE_INLINE_DATA_FL);
 
        CHECK_DEFINE_X(MDS_INODELOCK_LOOKUP);
        CHECK_DEFINE_X(MDS_INODELOCK_UPDATE);
@@ -975,10 +982,10 @@ check_mdt_ioepoch(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(mdt_ioepoch);
-       CHECK_MEMBER(mdt_ioepoch, handle);
-       CHECK_MEMBER(mdt_ioepoch, ioepoch);
-       CHECK_MEMBER(mdt_ioepoch, flags);
-       CHECK_MEMBER(mdt_ioepoch, padding);
+       CHECK_MEMBER(mdt_ioepoch, mio_handle);
+       CHECK_MEMBER(mdt_ioepoch, mio_unused1);
+       CHECK_MEMBER(mdt_ioepoch, mio_unused2);
+       CHECK_MEMBER(mdt_ioepoch, mio_padding);
 }
 
 static void
@@ -1297,6 +1304,20 @@ check_ldlm_intent(void)
        BLANK_LINE();
        CHECK_STRUCT(ldlm_intent);
        CHECK_MEMBER(ldlm_intent, opc);
+       CHECK_VALUE(IT_OPEN);
+       CHECK_VALUE(IT_CREAT);
+       CHECK_VALUE(IT_READDIR);
+       CHECK_VALUE(IT_GETATTR);
+       CHECK_VALUE(IT_LOOKUP);
+       CHECK_VALUE(IT_UNLINK);
+       CHECK_VALUE(IT_TRUNC);
+       CHECK_VALUE(IT_GETXATTR);
+       CHECK_VALUE(IT_EXEC);
+       CHECK_VALUE(IT_PIN);
+       CHECK_VALUE(IT_LAYOUT);
+       CHECK_VALUE(IT_QUOTA_DQACQ);
+       CHECK_VALUE(IT_QUOTA_CONN);
+       CHECK_VALUE(IT_SETXATTR);
 }
 
 static void
@@ -1305,7 +1326,7 @@ check_ldlm_resource_desc(void)
        BLANK_LINE();
        CHECK_STRUCT(ldlm_resource_desc);
        CHECK_MEMBER(ldlm_resource_desc, lr_type);
-       CHECK_MEMBER(ldlm_resource_desc, lr_padding);
+       CHECK_MEMBER(ldlm_resource_desc, lr_pad);
        CHECK_MEMBER(ldlm_resource_desc, lr_name);
 }
 
@@ -1558,20 +1579,20 @@ check_changelog_rec(void)
 }
 
 static void
-check_changelog_rec_ext(void)
+check_changelog_ext_rename(void)
 {
        BLANK_LINE();
-       CHECK_STRUCT(changelog_ext_rec);
-       CHECK_MEMBER(changelog_ext_rec, cr_namelen);
-       CHECK_MEMBER(changelog_ext_rec, cr_flags);
-       CHECK_MEMBER(changelog_ext_rec, cr_type);
-       CHECK_MEMBER(changelog_ext_rec, cr_index);
-       CHECK_MEMBER(changelog_ext_rec, cr_prev);
-       CHECK_MEMBER(changelog_ext_rec, cr_time);
-       CHECK_MEMBER(changelog_ext_rec, cr_tfid);
-       CHECK_MEMBER(changelog_ext_rec, cr_pfid);
-       CHECK_MEMBER(changelog_ext_rec, cr_sfid);
-       CHECK_MEMBER(changelog_ext_rec, cr_spfid);
+       CHECK_STRUCT(changelog_ext_rename);
+       CHECK_MEMBER(changelog_ext_rename, cr_sfid);
+       CHECK_MEMBER(changelog_ext_rename, cr_spfid);
+}
+
+static void
+check_changelog_ext_jobid(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(changelog_ext_jobid);
+       CHECK_MEMBER(changelog_ext_jobid, cr_jobid);
 }
 
 static void
@@ -1590,7 +1611,7 @@ check_llog_changelog_rec(void)
        CHECK_STRUCT(llog_changelog_rec);
        CHECK_MEMBER(llog_changelog_rec, cr_hdr);
        CHECK_MEMBER(llog_changelog_rec, cr);
-       CHECK_MEMBER(llog_changelog_rec, cr_tail);
+       CHECK_MEMBER(llog_changelog_rec, cr_do_not_use);
 }
 
 static void
@@ -1637,9 +1658,6 @@ check_llog_log_hdr(void)
        CHECK_MEMBER(llog_log_hdr, llh_flags);
        CHECK_MEMBER(llog_log_hdr, llh_cat_idx);
        CHECK_MEMBER(llog_log_hdr, llh_tgtuuid);
-       CHECK_MEMBER(llog_log_hdr, llh_reserved);
-       CHECK_MEMBER(llog_log_hdr, llh_bitmap);
-       CHECK_MEMBER(llog_log_hdr, llh_tail);
 }
 
 static void
@@ -1690,6 +1708,8 @@ check_llogd_body(void)
        CHECK_CVALUE(LLOG_CHANGELOG_REPL_CTXT);
        CHECK_CVALUE(LLOG_CHANGELOG_USER_ORIG_CTXT);
        CHECK_CVALUE(LLOG_AGENT_ORIG_CTXT);
+       CHECK_CVALUE(LLOG_UPDATELOG_ORIG_CTXT);
+       CHECK_CVALUE(LLOG_UPDATELOG_REPL_CTXT);
        CHECK_CVALUE(LLOG_MAX_CTXTS);
 }
 
@@ -1708,9 +1728,9 @@ check_ll_fiemap_info_key(void)
 {
        BLANK_LINE();
        CHECK_STRUCT(ll_fiemap_info_key);
-       CHECK_MEMBER(ll_fiemap_info_key, name[8]);
-       CHECK_MEMBER(ll_fiemap_info_key, oa);
-       CHECK_MEMBER(ll_fiemap_info_key, fiemap);
+       CHECK_MEMBER(ll_fiemap_info_key, lfik_name[8]);
+       CHECK_MEMBER(ll_fiemap_info_key, lfik_oa);
+       CHECK_MEMBER(ll_fiemap_info_key, lfik_fiemap);
 }
 
 static void
@@ -1832,14 +1852,14 @@ static void
 check_ll_user_fiemap(void)
 {
        BLANK_LINE();
-       CHECK_STRUCT(ll_user_fiemap);
-       CHECK_MEMBER(ll_user_fiemap, fm_start);
-       CHECK_MEMBER(ll_user_fiemap, fm_length);
-       CHECK_MEMBER(ll_user_fiemap, fm_flags);
-       CHECK_MEMBER(ll_user_fiemap, fm_mapped_extents);
-       CHECK_MEMBER(ll_user_fiemap, fm_extent_count);
-       CHECK_MEMBER(ll_user_fiemap, fm_reserved);
-       CHECK_MEMBER(ll_user_fiemap, fm_extents);
+       CHECK_STRUCT(fiemap);
+       CHECK_MEMBER(fiemap, fm_start);
+       CHECK_MEMBER(fiemap, fm_length);
+       CHECK_MEMBER(fiemap, fm_flags);
+       CHECK_MEMBER(fiemap, fm_mapped_extents);
+       CHECK_MEMBER(fiemap, fm_extent_count);
+       CHECK_MEMBER(fiemap, fm_reserved);
+       CHECK_MEMBER(fiemap, fm_extents);
 
        CHECK_CDEFINE(FIEMAP_FLAG_SYNC);
        CHECK_CDEFINE(FIEMAP_FLAG_XATTR);
@@ -1850,12 +1870,12 @@ static void
 check_ll_fiemap_extent(void)
 {
        BLANK_LINE();
-       CHECK_STRUCT(ll_fiemap_extent);
-       CHECK_MEMBER(ll_fiemap_extent, fe_logical);
-       CHECK_MEMBER(ll_fiemap_extent, fe_physical);
-       CHECK_MEMBER(ll_fiemap_extent, fe_length);
-       CHECK_MEMBER(ll_fiemap_extent, fe_flags);
-       CHECK_MEMBER(ll_fiemap_extent, fe_device);
+       CHECK_STRUCT(fiemap_extent);
+       CHECK_MEMBER(fiemap_extent, fe_logical);
+       CHECK_MEMBER(fiemap_extent, fe_physical);
+       CHECK_MEMBER(fiemap_extent, fe_length);
+       CHECK_MEMBER(fiemap_extent, fe_flags);
+       CHECK_MEMBER(fiemap_extent, fe_device);
 
        CHECK_CDEFINE(FIEMAP_EXTENT_LAST);
        CHECK_CDEFINE(FIEMAP_EXTENT_UNKNOWN);
@@ -2075,7 +2095,7 @@ static void check_object_update(void)
        CHECK_STRUCT(object_update);
        CHECK_MEMBER(object_update, ou_type);
        CHECK_MEMBER(object_update, ou_params_count);
-       CHECK_MEMBER(object_update, ou_master_index);
+       CHECK_MEMBER(object_update, ou_result_size);
        CHECK_MEMBER(object_update, ou_flags);
        CHECK_MEMBER(object_update, ou_padding1);
        CHECK_MEMBER(object_update, ou_batchid);
@@ -2113,6 +2133,25 @@ static void check_object_update_reply(void)
        CHECK_MEMBER(object_update_reply, ourp_lens);
 }
 
+static void check_out_update_header(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(out_update_header);
+       CHECK_MEMBER(out_update_header, ouh_magic);
+       CHECK_MEMBER(out_update_header, ouh_count);
+       CHECK_MEMBER(out_update_header, ouh_inline_length);
+       CHECK_MEMBER(out_update_header, ouh_reply_size);
+       CHECK_MEMBER(out_update_header, ouh_inline_data);
+}
+
+static void check_out_update_buffer(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(out_update_buffer);
+       CHECK_MEMBER(out_update_buffer, oub_size);
+       CHECK_MEMBER(out_update_buffer, oub_padding);
+}
+
 static void check_lfsck_request(void)
 {
        BLANK_LINE();
@@ -2130,8 +2169,8 @@ static void check_lfsck_request(void)
        CHECK_MEMBER(lfsck_request, lr_fid);
        CHECK_MEMBER(lfsck_request, lr_fid2);
        CHECK_MEMBER(lfsck_request, lr_fid3);
+       CHECK_MEMBER(lfsck_request, lr_padding_1);
        CHECK_MEMBER(lfsck_request, lr_padding_2);
-       CHECK_MEMBER(lfsck_request, lr_padding_3);
 
        CHECK_VALUE_X(LFSCK_TYPE_SCRUB);
        CHECK_VALUE_X(LFSCK_TYPE_LAYOUT);
@@ -2148,10 +2187,16 @@ static void check_lfsck_request(void)
        CHECK_VALUE(LE_PEER_EXIT);
        CHECK_VALUE(LE_CONDITIONAL_DESTROY);
        CHECK_VALUE(LE_PAIRS_VERIFY);
-       CHECK_VALUE(LE_CREATE_ORPHAN);
+       CHECK_VALUE(LE_SKIP_NLINK_DECLARE);
+       CHECK_VALUE(LE_SKIP_NLINK);
+       CHECK_VALUE(LE_SET_LMV_MASTER);
+       CHECK_VALUE(LE_SET_LMV_SLAVE);
 
        CHECK_VALUE_X(LEF_TO_OST);
        CHECK_VALUE_X(LEF_FROM_OST);
+       CHECK_VALUE_X(LEF_SET_LMV_HASH);
+       CHECK_VALUE_X(LEF_SET_LMV_ALL);
+       CHECK_VALUE_X(LEF_RECHECK_NAME_HASH);
 }
 
 static void check_lfsck_reply(void)
@@ -2163,6 +2208,52 @@ static void check_lfsck_reply(void)
        CHECK_MEMBER(lfsck_reply, lr_padding_2);
 }
 
+static void check_update_params(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(update_params);
+       CHECK_MEMBER(update_params, up_params);
+}
+
+static void check_update_op(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(update_op);
+       CHECK_MEMBER(update_op, uop_fid);
+       CHECK_MEMBER(update_op, uop_type);
+       CHECK_MEMBER(update_op, uop_param_count);
+       CHECK_MEMBER(update_op, uop_params_off);
+}
+
+static void check_update_ops(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(update_ops);
+       CHECK_MEMBER(update_ops, uops_op);
+}
+
+static void check_update_records(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(update_records);
+       CHECK_MEMBER(update_records, ur_master_transno);
+       CHECK_MEMBER(update_records, ur_batchid);
+       CHECK_MEMBER(update_records, ur_flags);
+       CHECK_MEMBER(update_records, ur_index);
+       CHECK_MEMBER(update_records, ur_update_count);
+       CHECK_MEMBER(update_records, ur_param_count);
+
+       CHECK_VALUE_X(UPDATE_RECORD_CONTINUE);
+}
+
+static void check_llog_update_record(void)
+{
+       BLANK_LINE();
+       CHECK_STRUCT(llog_update_record);
+       CHECK_MEMBER(llog_update_record, lur_hdr);
+       CHECK_MEMBER(llog_update_record, lur_update_rec);
+}
+
 static void system_string(char *cmdline, char *str, int len)
 {
        int   fds[2];
@@ -2329,18 +2420,6 @@ main(int argc, char **argv)
        CHECK_VALUE(MDS_STATUS_CONN);
        CHECK_VALUE(MDS_STATUS_LOV);
 
-       CHECK_VALUE(LUSTRE_BFLAG_UNCOMMITTED_WRITES);
-
-       CHECK_VALUE_X(MF_SOM_CHANGE);
-       CHECK_VALUE_X(MF_EPOCH_OPEN);
-       CHECK_VALUE_X(MF_EPOCH_CLOSE);
-       CHECK_VALUE_X(MF_MDC_CANCEL_FID1);
-       CHECK_VALUE_X(MF_MDC_CANCEL_FID2);
-       CHECK_VALUE_X(MF_MDC_CANCEL_FID3);
-       CHECK_VALUE_X(MF_MDC_CANCEL_FID4);
-       CHECK_VALUE_X(MF_SOM_AU);
-       CHECK_VALUE_X(MF_GETATTR_LOCK);
-
        CHECK_VALUE_64X(MDS_ATTR_MODE);
        CHECK_VALUE_64X(MDS_ATTR_UID);
        CHECK_VALUE_64X(MDS_ATTR_GID);
@@ -2459,8 +2538,11 @@ main(int argc, char **argv)
        CHECK_VALUE(OUT_INDEX_LOOKUP);
        CHECK_VALUE(OUT_INDEX_INSERT);
        CHECK_VALUE(OUT_INDEX_DELETE);
+       CHECK_VALUE(OUT_WRITE);
+       CHECK_VALUE(OUT_XATTR_DEL);
+       CHECK_VALUE(OUT_PUNCH);
+       CHECK_VALUE(OUT_READ);
 
-       check_som_attrs();
        check_hsm_attrs();
        check_ost_id();
        check_lu_dirent();
@@ -2519,7 +2601,8 @@ main(int argc, char **argv)
        check_llog_setattr64_rec();
        check_llog_size_change_rec();
        check_changelog_rec();
-       check_changelog_rec_ext();
+       check_changelog_ext_rename();
+       check_changelog_ext_jobid();
        check_changelog_setinfo();
        check_llog_changelog_rec();
        check_llog_changelog_user_rec();
@@ -2560,10 +2643,18 @@ main(int argc, char **argv)
        check_object_update_request();
        check_object_update_result();
        check_object_update_reply();
+       check_out_update_header();
+       check_out_update_buffer();
 
        check_lfsck_request();
        check_lfsck_reply();
 
+       check_update_params();
+       check_update_op();
+       check_update_ops();
+       check_update_records();
+       check_llog_update_record();
+
        printf("}\n\n");
 
        return 0;