*/
/*
* This file is part of Lustre, http://www.lustre.org/
- * Lustre is a trademark of Sun Microsystems, Inc.
*/
#include <stdio.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <linux/lustre/lustre_idl.h>
+#include <linux/lustre/lustre_access_log.h>
#include <linux/lustre/lustre_lfsck_user.h>
#include <linux/lustre/lustre_disk.h>
#include <linux/lustre/lustre_cfg.h>
CHECK_VALUE_X(LMAI_REMOTE_PARENT);
CHECK_VALUE_X(LMAI_STRIPED);
CHECK_VALUE_X(LMAI_ORPHAN);
+ CHECK_VALUE_X(LMAI_ENCRYPT);
}
static void
CHECK_DEFINE_64X(OBD_CONNECT2_ASYNC_DISCARD);
CHECK_DEFINE_64X(OBD_CONNECT2_ENCRYPT);
CHECK_DEFINE_64X(OBD_CONNECT2_FIDMAP);
+ CHECK_DEFINE_64X(OBD_CONNECT2_GETATTR_PFID);
+ CHECK_DEFINE_64X(OBD_CONNECT2_LSEEK);
+ CHECK_DEFINE_64X(OBD_CONNECT2_DOM_LVB);
+ CHECK_DEFINE_64X(OBD_CONNECT2_REP_MBITS);
+ CHECK_DEFINE_64X(OBD_CONNECT2_ATOMIC_OPEN_LOCK);
CHECK_VALUE_X(OBD_CKSUM_CRC32);
CHECK_VALUE_X(OBD_CKSUM_ADLER);
CHECK_DEFINE_64X(OBD_MD_SECCTX);
CHECK_DEFINE_64X(OBD_MD_FLLAZYSIZE);
CHECK_DEFINE_64X(OBD_MD_FLLAZYBLOCKS);
+ CHECK_DEFINE_64X(OBD_MD_ENCCTX);
CHECK_CVALUE_X(OBD_FL_INLINEDATA);
CHECK_CVALUE_X(OBD_FL_OBDMDEXISTS);
CHECK_CDEFINE(LMV_MAGIC_V1);
CHECK_CDEFINE(LMV_MAGIC_STRIPE);
CHECK_CDEFINE(LMV_HASH_TYPE_MASK);
+ CHECK_CDEFINE(LMV_HASH_FLAG_FIXED);
+ CHECK_CDEFINE(LMV_HASH_FLAG_MERGE);
+ CHECK_CDEFINE(LMV_HASH_FLAG_SPLIT);
CHECK_CDEFINE(LMV_HASH_FLAG_LOST_LMV);
CHECK_CDEFINE(LMV_HASH_FLAG_BAD_TYPE);
CHECK_CDEFINE(LMV_HASH_FLAG_MIGRATION);
CHECK_MEMBER(obd_statfs, os_spare8);
CHECK_MEMBER(obd_statfs, os_spare9);
- CHECK_VALUE_X(OS_STATE_DEGRADED);
- CHECK_VALUE_X(OS_STATE_READONLY);
- CHECK_VALUE_X(OS_STATE_NOPRECREATE);
- CHECK_VALUE_X(OS_STATE_ENOSPC);
- CHECK_VALUE_X(OS_STATE_ENOINO);
- CHECK_VALUE_X(OS_STATE_SUM);
- CHECK_VALUE_X(OS_STATE_NONROT);
+ CHECK_VALUE_X(OS_STATFS_DEGRADED);
+ CHECK_VALUE_X(OS_STATFS_READONLY);
+ CHECK_VALUE_X(OS_STATFS_NOPRECREATE);
+ CHECK_VALUE_X(OS_STATFS_ENOSPC);
+ CHECK_VALUE_X(OS_STATFS_ENOINO);
+ CHECK_VALUE_X(OS_STATFS_SUM);
+ CHECK_VALUE_X(OS_STATFS_NONROT);
}
static void
CHECK_VALUE_X(MDS_CREATE_VOLATILE);
CHECK_VALUE_X(MDS_OWNEROVERRIDE);
CHECK_VALUE_X(MDS_HSM_RELEASE);
+ CHECK_VALUE_X(MDS_CLOSE_MIGRATE);
CHECK_VALUE_X(MDS_CLOSE_LAYOUT_SWAP);
CHECK_VALUE_X(MDS_CLOSE_LAYOUT_MERGE);
CHECK_VALUE_X(MDS_CLOSE_RESYNC_DONE);
CHECK_MEMBER(mdt_body, mbo_projid);
CHECK_MEMBER(mdt_body, mbo_dom_size);
CHECK_MEMBER(mdt_body, mbo_dom_blocks);
- CHECK_MEMBER(mdt_body, mbo_padding_8);
+ CHECK_MEMBER(mdt_body, mbo_btime);
CHECK_MEMBER(mdt_body, mbo_padding_9);
CHECK_MEMBER(mdt_body, mbo_padding_10);
CHECK_VALUE_X(LUSTRE_TOPDIR_FL);
CHECK_VALUE_X(LUSTRE_INLINE_DATA_FL);
CHECK_VALUE_X(LUSTRE_SET_SYNC_FL);
+ CHECK_VALUE_X(LUSTRE_ENCRYPT_FL);
CHECK_VALUE_X(MDS_INODELOCK_LOOKUP);
CHECK_VALUE_X(MDS_INODELOCK_UPDATE);
CHECK_STRUCT(ldlm_inodebits);
CHECK_MEMBER(ldlm_inodebits, bits);
CHECK_MEMBER(ldlm_inodebits, try_bits);
+ CHECK_MEMBER(ldlm_inodebits, li_gid);
}
static void
CHECK_MEMBER(barrier_lvb, lvb_padding);
}
+#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 18, 53, 0)
+static void
+check_mgs_send_param(void)
+{
+ BLANK_LINE();
+ CHECK_STRUCT(mgs_send_param);
+ CHECK_CVALUE(MGS_PARAM_MAXLEN);
+ CHECK_MEMBER(mgs_send_param, mgs_param[MGS_PARAM_MAXLEN]);
+}
+#endif
+
static void
check_cfg_marker(void)
{
CHECK_MEMBER(llog_logid, lgl_oi);
CHECK_MEMBER(llog_logid, lgl_ogen);
- CHECK_CVALUE(OST_SZ_REC);
- CHECK_CVALUE(MDS_UNLINK_REC);
- CHECK_CVALUE(MDS_UNLINK64_REC);
- CHECK_CVALUE(MDS_SETATTR64_REC);
- CHECK_CVALUE(OBD_CFG_REC);
- CHECK_CVALUE(LLOG_GEN_REC);
- CHECK_CVALUE(CHANGELOG_REC);
- CHECK_CVALUE(CHANGELOG_USER_REC);
- CHECK_CVALUE(HSM_AGENT_REC);
- CHECK_CVALUE(UPDATE_REC);
- CHECK_CVALUE(LLOG_HDR_MAGIC);
- CHECK_CVALUE(LLOG_LOGID_MAGIC);
+ CHECK_CVALUE_X(OST_SZ_REC);
+ CHECK_CVALUE_X(MDS_UNLINK_REC);
+ CHECK_CVALUE_X(MDS_UNLINK64_REC);
+ CHECK_CVALUE_X(MDS_SETATTR64_REC);
+ CHECK_CVALUE_X(OBD_CFG_REC);
+ CHECK_CVALUE_X(LLOG_GEN_REC);
+ CHECK_CVALUE_X(CHANGELOG_REC);
+ CHECK_CVALUE_X(CHANGELOG_USER_REC);
+ CHECK_CVALUE_X(CHANGELOG_USER_REC2);
+ CHECK_CVALUE_X(HSM_AGENT_REC);
+ CHECK_CVALUE_X(UPDATE_REC);
+ CHECK_CVALUE_X(LLOG_HDR_MAGIC);
+ CHECK_CVALUE_X(LLOG_LOGID_MAGIC);
}
static void
CHECK_MEMBER(mgs_config_body, mcb_bits);
CHECK_MEMBER(mgs_config_body, mcb_units);
- CHECK_CVALUE(CONFIG_T_CONFIG);
- CHECK_CVALUE(CONFIG_T_SPTLRPC);
- CHECK_CVALUE(CONFIG_T_RECOVER);
- CHECK_CVALUE(CONFIG_T_PARAMS);
- CHECK_CVALUE(CONFIG_T_NODEMAP);
- CHECK_CVALUE(CONFIG_T_BARRIER);
+ CHECK_CVALUE(MGS_CFG_T_CONFIG);
+ CHECK_CVALUE(MGS_CFG_T_SPTLRPC);
+ CHECK_CVALUE(MGS_CFG_T_RECOVER);
+ CHECK_CVALUE(MGS_CFG_T_PARAMS);
+ CHECK_CVALUE(MGS_CFG_T_NODEMAP);
+ CHECK_CVALUE(MGS_CFG_T_BARRIER);
}
static void
CHECK_CDEFINE(FIEMAP_EXTENT_UNWRITTEN);
CHECK_CDEFINE(FIEMAP_EXTENT_MERGED);
CHECK_CDEFINE(FIEMAP_EXTENT_SHARED);
- CHECK_CDEFINE(FIEMAP_EXTENT_NO_DIRECT);
CHECK_CDEFINE(FIEMAP_EXTENT_NET);
}
CHECK_UNION(nodemap_rec);
}
+static void check_ofd_access_entry_v1(void)
+{
+ BLANK_LINE();
+ CHECK_VALUE_X(OFD_ACCESS_READ);
+ CHECK_VALUE_X(OFD_ACCESS_WRITE);
+ CHECK_STRUCT(ofd_access_entry_v1);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_parent_fid);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_begin);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_end);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_time);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_size);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_segment_count);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_flags);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_reserved1);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_reserved2);
+ CHECK_MEMBER(ofd_access_entry_v1, oae_reserved3);
+}
+
+static void check_lustre_access_log_info_v1(void)
+{
+ BLANK_LINE();
+ CHECK_VALUE_X(LUSTRE_ACCESS_LOG_VERSION_1);
+ CHECK_VALUE_X(LUSTRE_ACCESS_LOG_TYPE_OFD);
+ CHECK_STRUCT(lustre_access_log_info_v1);
+ CHECK_MEMBER(lustre_access_log_info_v1, lali_version);
+ CHECK_MEMBER(lustre_access_log_info_v1, lali_type);
+ CHECK_MEMBER(lustre_access_log_info_v1, lali_name);
+ CHECK_MEMBER(lustre_access_log_info_v1, lali_log_size);
+ CHECK_MEMBER(lustre_access_log_info_v1, lali_entry_size);
+}
+
static void check_lfsck_request(void)
{
BLANK_LINE();
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);
+ CHECK_MEMBER_OFFSET(update_op, uop_params_off);
}
static void check_update_ops(void)
CHECK_VALUE(OST_QUOTA_ADJUST_QUNIT);
CHECK_VALUE(OST_LADVISE);
CHECK_VALUE(OST_FALLOCATE);
+ CHECK_VALUE(OST_SEEK);
CHECK_VALUE(OST_LAST_OPC);
CHECK_DEFINE_64X(OBD_OBJECT_EOF);
check_ldlm_gl_lquota_desc();
check_ldlm_gl_barrier_desc();
check_ldlm_barrier_lvb();
+#if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(2, 18, 53, 0)
+ check_mgs_send_param();
+#endif
check_cfg_marker();
check_llog_logid();
check_llog_catid();
check_nodemap_global_rec();
check_nodemap_rec();
+ check_ofd_access_entry_v1();
+ check_lustre_access_log_info_v1();
+
check_lfsck_request();
check_lfsck_reply();