From 56444fda88f0a2a252963bfd1e57372f20e794b2 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Thu, 7 Oct 2010 17:24:46 -0500 Subject: [PATCH] b=23090 Wirecheck.c is still missing some structs i=andreas.dilger i=robert.read --- lustre/include/lustre/lustre_idl.h | 36 +- lustre/ptlrpc/wiretest.c | 756 +++++++++++++++++++++++++++++++++++++ lustre/utils/checkwirecheck.sh | 42 +++ lustre/utils/wirecheck.c | 321 +++++++++++++++- lustre/utils/wiretest.c | 756 +++++++++++++++++++++++++++++++++++++ 5 files changed, 1892 insertions(+), 19 deletions(-) create mode 100755 lustre/utils/checkwirecheck.sh diff --git a/lustre/include/lustre/lustre_idl.h b/lustre/include/lustre/lustre_idl.h index 6ef74d1..60fd978 100644 --- a/lustre/include/lustre/lustre_idl.h +++ b/lustre/include/lustre/lustre_idl.h @@ -355,7 +355,7 @@ static inline void lustre_lma_swab(struct lustre_mdt_attrs *lma) /** * fid constants */ -enum { +enum fid_oid { /** initial fid id value */ LUSTRE_FID_INIT_OID = 1UL }; @@ -1136,7 +1136,7 @@ extern void lustre_swab_connect(struct obd_connect_data *ocd); * Please update DECLARE_CKSUM_NAME/OBD_CKSUM_ALL in obd.h when adding a new * algorithm and also the OBD_FL_CKSUM* flags. */ -typedef enum { +typedef enum cksum_type { OBD_CKSUM_CRC32 = 0x00000001, OBD_CKSUM_ADLER = 0x00000002, } cksum_type_t; @@ -1146,7 +1146,7 @@ typedef enum { */ /* opcodes */ -typedef enum { +typedef enum ost_cmd { OST_REPLY = 0, /* reply ? */ OST_GETATTR = 1, OST_SETATTR = 2, @@ -1403,7 +1403,7 @@ extern void lustre_swab_ost_lvb(struct ost_lvb *); */ /* opcodes */ -typedef enum { +typedef enum mds_cmd { MDS_GETATTR = 33, MDS_GETATTR_NAME = 34, MDS_CLOSE = 35, @@ -1434,7 +1434,7 @@ typedef enum { * Do not exceed 63 */ -typedef enum { +typedef enum mdt_reint { REINT_SETATTR = 1, REINT_CREATE = 2, REINT_LINK = 3, @@ -1713,7 +1713,7 @@ struct mds_remote_perm { }; /* permissions for md_perm.mp_perm */ -enum { +enum mp_perm { CFS_SETUID_PERM = 0x01, CFS_SETGID_PERM = 0x02, CFS_SETGRP_PERM = 0x04, @@ -1845,7 +1845,7 @@ extern void lustre_swab_mdt_rec_setattr (struct mdt_rec_setattr *sa); /* lfs rgetfacl permission check */ #define MAY_RGETFACL (1 << 14) -enum { +enum op_bias { MDS_CHECK_SPLIT = 1 << 0, MDS_CROSS_REF = 1 << 1, MDS_VTX_BYPASS = 1 << 2, @@ -2128,7 +2128,7 @@ extern void lustre_swab_lov_desc (struct lov_desc *ld); * LDLM requests: */ /* opcodes -- MUST be distinct from OST/MDS opcodes */ -typedef enum { +typedef enum ldlm_cmd { LDLM_ENQUEUE = 101, LDLM_CONVERT = 102, LDLM_CANCEL = 103, @@ -2148,7 +2148,7 @@ struct ldlm_res_id { extern void lustre_swab_ldlm_res_id (struct ldlm_res_id *id); /* lock types */ -typedef enum { +typedef enum ldlm_mode { LCK_MINMODE = 0, LCK_EX = 1, LCK_PW = 2, @@ -2163,7 +2163,7 @@ typedef enum { #define LCK_MODE_NUM 8 -typedef enum { +typedef enum ldlm_type { LDLM_PLAIN = 10, LDLM_EXTENT = 11, LDLM_FLOCK = 12, @@ -2203,7 +2203,7 @@ struct ldlm_flock { * this ever changes we will need to swab the union differently based * on the resource type. */ -typedef union { +typedef union ldlm_policy_data { struct ldlm_extent l_extent; struct ldlm_flock l_flock; struct ldlm_inodebits l_inodebits; @@ -2271,7 +2271,7 @@ extern void lustre_swab_ldlm_reply (struct ldlm_reply *r); /* * Opcodes for mountconf (mgs and mgc) */ -typedef enum { +typedef enum mgs_cmd { MGS_CONNECT = 250, MGS_DISCONNECT, MGS_EXCEPTION, /* node died, etc. */ @@ -2335,7 +2335,7 @@ extern void lustre_swab_cfg_marker(struct cfg_marker *marker, * Opcodes for multiple servers. */ -typedef enum { +typedef enum obd_cmd { OBD_PING = 400, OBD_LOG_CANCEL, OBD_QC_CALLBACK, @@ -2367,7 +2367,7 @@ struct llog_catid { #define LLOG_OP_MAGIC 0x10600000 #define LLOG_OP_MASK 0xfff00000 -typedef enum { +typedef enum llog_op_type { LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000, OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00, OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000, @@ -2731,7 +2731,7 @@ extern struct qunit_data *quota_get_qdata(void *req, int is_req, int is_exp); extern int quota_copy_qdata(void *request, struct qunit_data *qdata, int is_req, int is_exp); -typedef enum { +typedef enum quota_cmd { QUOTA_DQACQ = 601, QUOTA_DQREL = 602, QUOTA_LAST_OPC @@ -2751,7 +2751,7 @@ typedef enum { /* security opcodes */ -typedef enum { +typedef enum sec_cmd { SEC_CTX_INIT = 801, SEC_CTX_INIT_CONT = 802, SEC_CTX_FINI = 803, @@ -2782,7 +2782,7 @@ struct lustre_capa { extern void lustre_swab_lustre_capa(struct lustre_capa *c); /** lustre_capa::lc_opc */ -enum { +enum capa { CAPA_OPC_BODY_WRITE = 1<<0, /**< write object data */ CAPA_OPC_BODY_READ = 1<<1, /**< read object data */ CAPA_OPC_INDEX_LOOKUP = 1<<2, /**< lookup object fid */ @@ -2822,7 +2822,7 @@ static inline int capa_for_oss(struct lustre_capa *c) } /* lustre_capa::lc_hmac_alg */ -enum { +enum capa_mac_alg { CAPA_HMAC_ALG_SHA1 = 1, /**< sha1 algorithm */ CAPA_HMAC_ALG_MAX, }; diff --git a/lustre/ptlrpc/wiretest.c b/lustre/ptlrpc/wiretest.c index e819c88..6f9a54a 100644 --- a/lustre/ptlrpc/wiretest.c +++ b/lustre/ptlrpc/wiretest.c @@ -288,6 +288,122 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(struct obd_uuid) == 40, " found %lld\n", (long long)(int)sizeof(struct obd_uuid)); + /* Checks for struct lu_seq_range */ + LASSERTF((int)sizeof(struct lu_seq_range) == 24, " found %lld\n", + (long long)(int)sizeof(struct lu_seq_range)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_start) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_start)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_start) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_start)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_end) == 8, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_end)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_end) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_end)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_mdt) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_mdt)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_mdt) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_mdt)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_padding)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_padding)); + + /* Checks for struct lustre_mdt_attrs */ + LASSERTF((int)sizeof(struct lustre_mdt_attrs) == 64, " found %lld\n", + (long long)(int)sizeof(struct lustre_mdt_attrs)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_compat) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_compat)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_incompat) == 4, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_incompat)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_self_fid) == 8, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_self_fid)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_flags) == 24, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_flags)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_flags) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_flags)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_ioepoch) == 32, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_ioepoch)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_ioepoch)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_size) == 40, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_size)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_size)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_blocks) == 48, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_blocks)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_blocks)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_mountid) == 56, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_mountid)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_mountid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_mountid)); + + /* Checks for struct lu_dirent */ + LASSERTF((int)sizeof(struct lu_dirent) == 32, " found %lld\n", + (long long)(int)sizeof(struct lu_dirent)); + LASSERTF((int)offsetof(struct lu_dirent, lde_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_fid)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_fid)); + LASSERTF((int)offsetof(struct lu_dirent, lde_hash) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_hash)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_hash) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_hash)); + LASSERTF((int)offsetof(struct lu_dirent, lde_reclen) == 24, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_reclen)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_reclen) == 2, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_reclen)); + LASSERTF((int)offsetof(struct lu_dirent, lde_namelen) == 26, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_namelen)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_namelen) == 2, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_namelen)); + LASSERTF((int)offsetof(struct lu_dirent, lde_attrs) == 28, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_attrs)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_attrs) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_attrs)); + LASSERTF((int)offsetof(struct lu_dirent, lde_name[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_name[0])); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_name[0])); + + /* Checks for struct luda_type */ + LASSERTF((int)sizeof(struct luda_type) == 2, " found %lld\n", + (long long)(int)sizeof(struct luda_type)); + LASSERTF((int)offsetof(struct luda_type, lt_type) == 0, " found %lld\n", + (long long)(int)offsetof(struct luda_type, lt_type)); + LASSERTF((int)sizeof(((struct luda_type *)0)->lt_type) == 2, " found %lld\n", + (long long)(int)sizeof(((struct luda_type *)0)->lt_type)); + + /* Checks for struct lu_dirpage */ + LASSERTF((int)sizeof(struct lu_dirpage) == 24, " found %lld\n", + (long long)(int)sizeof(struct lu_dirpage)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_start) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_hash_start)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_end) == 8, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_hash_end)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_flags) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_flags)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_flags)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_pad0) == 20, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_pad0)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_pad0) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_pad0)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_entries[0]) == 24, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_entries[0])); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0]) == 32, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0])); + /* Checks for struct lustre_handle */ LASSERTF((int)sizeof(struct lustre_handle) == 8, " found %lld\n", (long long)(int)sizeof(struct lustre_handle)); @@ -1013,6 +1129,22 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct ost_body *)0)->oa) == 208, " found %lld\n", (long long)(int)sizeof(((struct ost_body *)0)->oa)); + /* Checks for struct ll_fiemap_info_key */ + LASSERTF((int)sizeof(struct ll_fiemap_info_key) == 248, " found %lld\n", + (long long)(int)sizeof(struct ll_fiemap_info_key)); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, name[0]) == 0, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, name[0])); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->name[0])); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, oa) == 8, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, oa)); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->oa) == 208, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->oa)); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, fiemap) == 216, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, fiemap)); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap) == 32, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap)); + /* Checks for struct ll_fid */ LASSERTF((int)sizeof(struct ll_fid) == 16, " found %lld\n", (long long)(int)sizeof(struct ll_fid)); @@ -1178,6 +1310,162 @@ void lustre_assert_wire_constants(void) CLASSERT(MDS_INODELOCK_UPDATE == 0x000002); CLASSERT(MDS_INODELOCK_OPEN == 0x000004); + /* Checks for struct mdt_body */ + LASSERTF((int)sizeof(struct mdt_body) == 216, " found %lld\n", + (long long)(int)sizeof(struct mdt_body)); + LASSERTF((int)offsetof(struct mdt_body, fid1) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fid1)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fid1) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fid1)); + LASSERTF((int)offsetof(struct mdt_body, fid2) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fid2)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fid2) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fid2)); + LASSERTF((int)offsetof(struct mdt_body, handle) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, handle)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->handle) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->handle)); + LASSERTF((int)offsetof(struct mdt_body, valid) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, valid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->valid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->valid)); + LASSERTF((int)offsetof(struct mdt_body, size) == 48, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, size)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->size)); + LASSERTF((int)offsetof(struct mdt_body, mtime) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, mtime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->mtime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->mtime)); + LASSERTF((int)offsetof(struct mdt_body, atime) == 64, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, atime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->atime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->atime)); + LASSERTF((int)offsetof(struct mdt_body, ctime) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ctime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ctime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ctime)); + LASSERTF((int)offsetof(struct mdt_body, blocks) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, blocks)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->blocks)); + LASSERTF((int)offsetof(struct mdt_body, ioepoch) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ioepoch)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ioepoch)); + LASSERTF((int)offsetof(struct mdt_body, ino) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ino)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ino) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ino)); + LASSERTF((int)offsetof(struct mdt_body, fsuid) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fsuid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fsuid)); + LASSERTF((int)offsetof(struct mdt_body, fsgid) == 108, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fsgid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fsgid)); + LASSERTF((int)offsetof(struct mdt_body, capability) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, capability)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->capability) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->capability)); + LASSERTF((int)offsetof(struct mdt_body, mode) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, mode)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->mode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->mode)); + LASSERTF((int)offsetof(struct mdt_body, uid) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, uid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->uid)); + LASSERTF((int)offsetof(struct mdt_body, gid) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, gid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->gid)); + LASSERTF((int)offsetof(struct mdt_body, flags) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, flags)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->flags)); + LASSERTF((int)offsetof(struct mdt_body, rdev) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, rdev)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->rdev) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->rdev)); + LASSERTF((int)offsetof(struct mdt_body, nlink) == 136, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, nlink)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->nlink) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->nlink)); + LASSERTF((int)offsetof(struct mdt_body, generation) == 140, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, generation)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->generation) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->generation)); + LASSERTF((int)offsetof(struct mdt_body, suppgid) == 144, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, suppgid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->suppgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->suppgid)); + LASSERTF((int)offsetof(struct mdt_body, eadatasize) == 148, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, eadatasize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->eadatasize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->eadatasize)); + LASSERTF((int)offsetof(struct mdt_body, aclsize) == 152, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, aclsize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->aclsize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->aclsize)); + LASSERTF((int)offsetof(struct mdt_body, max_mdsize) == 156, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, max_mdsize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->max_mdsize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->max_mdsize)); + LASSERTF((int)offsetof(struct mdt_body, max_cookiesize) == 160, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, max_cookiesize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->max_cookiesize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->max_cookiesize)); + LASSERTF((int)offsetof(struct mdt_body, padding_4) == 164, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_4)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_4)); + LASSERTF((int)offsetof(struct mdt_body, padding_5) == 168, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_5)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_5) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_5)); + LASSERTF((int)offsetof(struct mdt_body, padding_6) == 176, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_6)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_6) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_6)); + LASSERTF((int)offsetof(struct mdt_body, padding_7) == 184, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_7)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_7) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_7)); + LASSERTF((int)offsetof(struct mdt_body, padding_8) == 192, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_8)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_8) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_8)); + LASSERTF((int)offsetof(struct mdt_body, padding_9) == 200, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_9)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_9) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_9)); + LASSERTF((int)offsetof(struct mdt_body, padding_10) == 208, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_10)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_10) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_10)); + + /* Checks for struct mdt_ioepoch */ + LASSERTF((int)sizeof(struct mdt_ioepoch) == 24, " found %lld\n", + (long long)(int)sizeof(struct mdt_ioepoch)); + LASSERTF((int)offsetof(struct mdt_ioepoch, handle) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, handle)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->handle) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->handle)); + LASSERTF((int)offsetof(struct mdt_ioepoch, ioepoch) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, ioepoch)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->ioepoch)); + LASSERTF((int)offsetof(struct mdt_ioepoch, flags) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, flags)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->flags)); + LASSERTF((int)offsetof(struct mdt_ioepoch, padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, padding)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->padding)); + /* Checks for struct mdt_rec_setattr */ LASSERTF((int)sizeof(struct mdt_rec_setattr) == 136, " found %lld\n", (long long)(int)sizeof(struct mdt_rec_setattr)); @@ -2196,6 +2484,18 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct llog_size_change_rec *)0)->lsc_tail) == 8, " found %lld\n", (long long)(int)sizeof(((struct llog_size_change_rec *)0)->lsc_tail)); + /* Checks for struct changelog_setinfo */ + LASSERTF((int)sizeof(struct changelog_setinfo) == 12, " found %lld\n", + (long long)(int)sizeof(struct changelog_setinfo)); + LASSERTF((int)offsetof(struct changelog_setinfo, cs_recno) == 0, " found %lld\n", + (long long)(int)offsetof(struct changelog_setinfo, cs_recno)); + LASSERTF((int)sizeof(((struct changelog_setinfo *)0)->cs_recno) == 8, " found %lld\n", + (long long)(int)sizeof(((struct changelog_setinfo *)0)->cs_recno)); + LASSERTF((int)offsetof(struct changelog_setinfo, cs_id) == 8, " found %lld\n", + (long long)(int)offsetof(struct changelog_setinfo, cs_id)); + LASSERTF((int)sizeof(((struct changelog_setinfo *)0)->cs_id) == 4, " found %lld\n", + (long long)(int)sizeof(((struct changelog_setinfo *)0)->cs_id)); + /* Checks for struct changelog_rec */ LASSERTF((int)sizeof(struct changelog_rec) == 64, " found %lld\n", (long long)(int)sizeof(struct changelog_rec)); @@ -2248,6 +2548,30 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct llog_changelog_rec *)0)->cr_tail) == 8, " found %lld\n", (long long)(int)sizeof(((struct llog_changelog_rec *)0)->cr_tail)); + /* Checks for struct llog_changelog_user_rec */ + LASSERTF((int)sizeof(struct llog_changelog_user_rec) == 40, " found %lld\n", + (long long)(int)sizeof(struct llog_changelog_user_rec)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_hdr) == 0, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_hdr)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_hdr) == 16, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_hdr)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_id) == 16, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_id)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id) == 4, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_padding)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_endrec) == 24, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_endrec)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_endrec) == 8, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_endrec)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_tail) == 32, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_tail)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_tail) == 8, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_tail)); + /* Checks for struct llog_gen */ LASSERTF((int)sizeof(struct llog_gen) == 16, " found %lld\n", (long long)(int)sizeof(struct llog_gen)); @@ -2425,6 +2749,66 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct qunit_data *)0)->padding) == 8, " found %lld\n", (long long)(int)sizeof(((struct qunit_data *)0)->padding)); + /* Checks for struct lustre_capa */ + LASSERTF((int)sizeof(struct lustre_capa) == 120, " found %lld\n", + (long long)(int)sizeof(struct lustre_capa)); + LASSERTF((int)offsetof(struct lustre_capa, lc_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_fid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_fid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_opc) == 16, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_opc)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_opc) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_opc)); + LASSERTF((int)offsetof(struct lustre_capa, lc_uid) == 24, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_uid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_uid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_uid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_gid) == 32, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_gid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_gid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_gid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_flags) == 40, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_flags)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_flags)); + LASSERTF((int)offsetof(struct lustre_capa, lc_keyid) == 44, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_keyid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_keyid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_keyid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_timeout) == 48, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_timeout)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_timeout) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_timeout)); + LASSERTF((int)offsetof(struct lustre_capa, lc_expiry) == 52, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_expiry)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_expiry) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_expiry)); + LASSERTF((int)offsetof(struct lustre_capa, lc_hmac[0]) == 56, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_hmac[0])); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_hmac[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_hmac[0])); + + /* Checks for struct lustre_capa_key */ + LASSERTF((int)sizeof(struct lustre_capa_key) == 72, " found %lld\n", + (long long)(int)sizeof(struct lustre_capa_key)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_seq) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_seq)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_seq) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_seq)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_keyid) == 8, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_keyid)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_keyid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_keyid)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_padding) == 12, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_padding)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_padding)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_key[0]) == 16, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_key[0])); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_key[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_key[0])); + /* Checks for struct quota_adjust_qunit */ LASSERTF((int)sizeof(struct quota_adjust_qunit) == 32, " found %lld\n", (long long)(int)sizeof(struct quota_adjust_qunit)); @@ -2449,6 +2833,354 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->padding1) == 8, " found %lld\n", (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->padding1)); + /* Checks for struct mds_remote_perm */ + LASSERTF((int)sizeof(struct mds_remote_perm) == 20, " found %lld\n", + (long long)(int)sizeof(struct mds_remote_perm)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_uid) == 0, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_uid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_uid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_gid) == 4, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_gid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_gid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_fsuid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_fsuid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_fsgid) == 12, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_fsgid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_fsgid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_access_perm) == 16, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_access_perm)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_access_perm) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_access_perm)); + + /* Checks for struct mdt_remote_perm */ + LASSERTF((int)sizeof(struct mdt_remote_perm) == 20, " found %lld\n", + (long long)(int)sizeof(struct mdt_remote_perm)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_uid) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_uid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_uid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_gid) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_gid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_gid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_fsuid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsgid) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_fsgid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_access_perm) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_access_perm)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm)); + + /* Checks for struct mdt_rec_setxattr */ + LASSERTF((int)sizeof(struct mdt_rec_setxattr) == 136, " found %lld\n", + (long long)(int)sizeof(struct mdt_rec_setxattr)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_opcode) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_opcode)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_opcode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_opcode)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_cap) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_cap)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_cap) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_cap)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsuid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsuid_h) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsuid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsgid) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsgid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsgid_h) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsgid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid1) == 24, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid1)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid1_h) == 28, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid1_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid2) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid2)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid2_h) == 36, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid2_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fid) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_1) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_1)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_1) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_1)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_2) == 64, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_2)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_2)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_3) == 68, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_3)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_3)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_valid) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_valid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_valid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_valid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_time) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_time)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_time) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_time)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_5) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_5)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_5) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_5)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_6) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_6)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_6) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_6)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_7) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_7)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_7) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_7)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_size) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_size)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_size) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_size)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_flags) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_flags)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_flags)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_8) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_8)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_8) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_8)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_9) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_9)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_9) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_9)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_10) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_10)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_10) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_10)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_11) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_11)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11)); + + /* Checks for struct mdt_rec_reint */ + LASSERTF((int)sizeof(struct mdt_rec_reint) == 136, " found %lld\n", + (long long)(int)sizeof(struct mdt_rec_reint)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_opcode) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_opcode)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_opcode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_opcode)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_cap) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_cap)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_cap) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_cap)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsuid)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsuid_h) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsuid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsgid) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsgid)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsgid_h) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsgid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid1) == 24, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid1_h) == 28, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid1_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid2) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid2_h) == 36, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid2_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fid1) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fid1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fid1) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fid1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fid2) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fid2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fid2) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fid2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_mtime) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_mtime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_mtime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_mtime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_atime) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_atime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_atime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_atime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_ctime) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_ctime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_ctime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_ctime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_size) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_size)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_size)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_blocks) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_blocks)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_blocks)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_bias) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_bias)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_bias) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_bias)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_mode) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_mode)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_mode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_mode)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_1) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_2) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_3) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_3)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_3)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_4) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_4)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_4)); + + /* Checks for struct lmv_desc */ + LASSERTF((int)sizeof(struct lmv_desc) == 88, " found %lld\n", + (long long)(int)sizeof(struct lmv_desc)); + LASSERTF((int)offsetof(struct lmv_desc, ld_tgt_count) == 0, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_tgt_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_tgt_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_tgt_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_active_tgt_count) == 4, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_active_tgt_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_active_tgt_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_active_tgt_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_default_stripe_count) == 8, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_default_stripe_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_default_stripe_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_default_stripe_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_pattern) == 12, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_pattern)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_pattern) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_pattern)); + LASSERTF((int)offsetof(struct lmv_desc, ld_default_hash_size) == 16, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_default_hash_size)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_default_hash_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_default_hash_size)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_1) == 24, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_1)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_1) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_1)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_2) == 32, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_2)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_2)); + LASSERTF((int)offsetof(struct lmv_desc, ld_qos_maxage) == 36, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_qos_maxage)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_qos_maxage) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_qos_maxage)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_3) == 40, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_3)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_3)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_4) == 44, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_4)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_4)); + LASSERTF((int)offsetof(struct lmv_desc, ld_uuid) == 48, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_uuid)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_uuid) == 40, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_uuid)); + + /* Checks for struct lmv_stripe_md */ + LASSERTF((int)sizeof(struct lmv_stripe_md) == 32, " found %lld\n", + (long long)(int)sizeof(struct lmv_stripe_md)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_magic) == 0, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_magic)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_magic) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_magic)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_count) == 4, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_count)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_count)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_master) == 8, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_master)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_master) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_master)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_padding) == 12, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_padding)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_padding)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_pool_name[0]) == 16, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_pool_name[0])); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_pool_name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_pool_name[0])); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_ids[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_ids[0])); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_ids[0]) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_ids[0])); + + /* Checks for struct md_fld */ + LASSERTF((int)sizeof(struct md_fld) == 16, " found %lld\n", + (long long)(int)sizeof(struct md_fld)); + LASSERTF((int)offsetof(struct md_fld, mf_seq) == 0, " found %lld\n", + (long long)(int)offsetof(struct md_fld, mf_seq)); + LASSERTF((int)sizeof(((struct md_fld *)0)->mf_seq) == 8, " found %lld\n", + (long long)(int)sizeof(((struct md_fld *)0)->mf_seq)); + LASSERTF((int)offsetof(struct md_fld, mf_mds) == 8, " found %lld\n", + (long long)(int)offsetof(struct md_fld, mf_mds)); + LASSERTF((int)sizeof(((struct md_fld *)0)->mf_mds) == 4, " found %lld\n", + (long long)(int)sizeof(((struct md_fld *)0)->mf_mds)); + + /* Checks for struct mgs_send_param */ + LASSERTF((int)sizeof(struct mgs_send_param) == 1024, " found %lld\n", + (long long)(int)sizeof(struct mgs_send_param)); + LASSERTF((int)offsetof(struct mgs_send_param, mgs_param[0]) == 0, " found %lld\n", + (long long)(int)offsetof(struct mgs_send_param, mgs_param[0])); + LASSERTF((int)sizeof(((struct mgs_send_param *)0)->mgs_param[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct mgs_send_param *)0)->mgs_param[0])); + LASSERTF((int)offsetof(struct mgs_send_param, mgs_param[1024 - 1]) == 1023, " found %lld\n", + (long long)(int)offsetof(struct mgs_send_param, mgs_param[1024 - 1])); + LASSERTF((int)sizeof(((struct mgs_send_param *)0)->mgs_param[1024 - 1]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct mgs_send_param *)0)->mgs_param[1024 - 1])); + /* Checks for struct mgs_target_info */ LASSERTF((int)sizeof(struct mgs_target_info) == 4544, " found %lld\n", (long long)(int)sizeof(struct mgs_target_info)); @@ -2693,5 +3425,29 @@ void lustre_assert_wire_constants(void) (long long)(int)offsetof(struct link_ea_entry, lee_name)); LASSERTF((int)sizeof(((struct link_ea_entry *)0)->lee_name) == 0, " found %lld\n", (long long)(int)sizeof(((struct link_ea_entry *)0)->lee_name)); + + /* Checks for struct getinfo_fid2path */ + LASSERTF((int)sizeof(struct getinfo_fid2path) == 32, " found %lld\n", + (long long)(int)sizeof(struct getinfo_fid2path)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_fid)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_fid)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_recno) == 16, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_recno)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_recno) == 8, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_recno)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_linkno) == 24, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_linkno)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_linkno) == 4, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_linkno)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_pathlen) == 28, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_pathlen)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen) == 4, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_path[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_path[0])); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0])); } diff --git a/lustre/utils/checkwirecheck.sh b/lustre/utils/checkwirecheck.sh new file mode 100755 index 0000000..b4d59eb --- /dev/null +++ b/lustre/utils/checkwirecheck.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +IDL=../../lustre/include/lustre/lustre_idl.h + +idl_types=$(mktemp -t idl_types-XXXX) +idl_types2=$(mktemp -t idl_types2-XXXX) +idl_struct_types=$(mktemp -t idl_struct_types-XXXX) +idl_struct_types2=$(mktemp -t idl_struct_types2-XXXX) +status=0 + +trap 'rm -f "$idl_types" "$idl_types2" "$idl_struct_types" "$idl_struct_types2"' EXIT + +# All named types +egrep '^(struct|union|enum|typedef|#define)' $IDL | + grep -v '} __attribute__((packed));' | + grep -v '}__attribute__((packed));' > $idl_types +sed -e '/^#define/s/^#define.\([^ ]*\).*$/\1/' \ + -e '/^typedef/s/typedef.[^ ]*[ ]*\<\(.*\);/\1/' \ + -e '/^struct/s/^struct[ ]*\([^ ]*\).*$/\1/' \ + -e '/^enum/s/^enum[ ]*\([^ ]*\).*$/\1/' \ + -e '/^typedef enum/s/^typedef enum[ ]*\([^ ]*\)[ ].*/\1/' \ + -e '/^typedef union/s/^typedef union[ ]*\([^ ]*\)[ ].*/\1/' \ + "$idl_types" | grep -v '[()]' > "$idl_types2" +while read sym; do + # Ignore the #define for the header guard + [[ "$sym" = _LUSTRE_IDL_H_ ]] && continue + grep -q "$sym" wirecheck.c || echo "Missing wirecheck for $sym" +done < "$idl_types2" + +# Just struct types (the grep -v ';' part ignores incomplete structs; we can't +# check those). +grep '^struct' $IDL | grep -v ';' > "$idl_struct_types" +sed -e '/^struct/s/^struct[ ]*\([^ ]*\).*$/\1/' \ + "$idl_struct_types" | grep -v '[()]' > "$idl_struct_types2" +while read sym; do + grep -q "$sym" wirecheck.c && continue + status=1 + echo "Missing wirecheck for struct $sym" +done < "$idl_struct_types2" + +# Reflect only missing structs, for now. +exit $status diff --git a/lustre/utils/wirecheck.c b/lustre/utils/wirecheck.c index d574047..f59464e 100644 --- a/lustre/utils/wirecheck.c +++ b/lustre/utils/wirecheck.c @@ -127,6 +127,62 @@ do { \ } while(0) static void +check_lu_seq_range(void) +{ + BLANK_LINE(); + CHECK_STRUCT(lu_seq_range); + CHECK_MEMBER(lu_seq_range, lsr_start); + CHECK_MEMBER(lu_seq_range, lsr_end); + CHECK_MEMBER(lu_seq_range, lsr_mdt); + CHECK_MEMBER(lu_seq_range, lsr_padding); +} + +/* lustre_mdt_attrs is stored in EA; it's worth checking for changes here */ +static void +check_lustre_mdt_attrs(void) { + BLANK_LINE(); + CHECK_STRUCT(lustre_mdt_attrs); + CHECK_MEMBER(lustre_mdt_attrs, lma_compat); + CHECK_MEMBER(lustre_mdt_attrs, lma_incompat); + CHECK_MEMBER(lustre_mdt_attrs, lma_self_fid); + CHECK_MEMBER(lustre_mdt_attrs, lma_flags); + CHECK_MEMBER(lustre_mdt_attrs, lma_ioepoch); + CHECK_MEMBER(lustre_mdt_attrs, lma_som_size); + CHECK_MEMBER(lustre_mdt_attrs, lma_som_blocks); + CHECK_MEMBER(lustre_mdt_attrs, lma_som_mountid); +} + +static void +check_lu_dirent(void) { + BLANK_LINE(); + CHECK_STRUCT(lu_dirent); + CHECK_MEMBER(lu_dirent, lde_fid); + CHECK_MEMBER(lu_dirent, lde_hash); + CHECK_MEMBER(lu_dirent, lde_reclen); + CHECK_MEMBER(lu_dirent, lde_namelen); + CHECK_MEMBER(lu_dirent, lde_attrs); + CHECK_MEMBER(lu_dirent, lde_name[0]); +} + +static void +check_luda_type(void) { + BLANK_LINE(); + CHECK_STRUCT(luda_type); + CHECK_MEMBER(luda_type, lt_type); +} + +static void +check_lu_dirpage(void) { + BLANK_LINE(); + CHECK_STRUCT(lu_dirpage); + CHECK_MEMBER(lu_dirpage, ldp_hash_start); + CHECK_MEMBER(lu_dirpage, ldp_hash_end); + CHECK_MEMBER(lu_dirpage, ldp_flags); + CHECK_MEMBER(lu_dirpage, ldp_pad0); + CHECK_MEMBER(lu_dirpage, ldp_entries[0]); +} + +static void check_lustre_handle(void) { BLANK_LINE(); @@ -465,6 +521,16 @@ check_ost_body(void) } static void +check_ll_fiemap_info_key(void) { + BLANK_LINE(); + CHECK_STRUCT(ll_fiemap_info_key); + CHECK_MEMBER(ll_fiemap_info_key, name[0]); + CHECK_MEMBER(ll_fiemap_info_key, oa); + CHECK_MEMBER(ll_fiemap_info_key, fiemap); +} + + +static void check_ll_fid(void) { BLANK_LINE(); @@ -546,6 +612,55 @@ check_mds_body(void) } static void +check_mdt_body(void) { + BLANK_LINE(); + CHECK_STRUCT(mdt_body); + CHECK_MEMBER(mdt_body, fid1); + CHECK_MEMBER(mdt_body, fid2); + CHECK_MEMBER(mdt_body, handle); + CHECK_MEMBER(mdt_body, valid); + CHECK_MEMBER(mdt_body, size); + CHECK_MEMBER(mdt_body, mtime); + CHECK_MEMBER(mdt_body, atime); + CHECK_MEMBER(mdt_body, ctime); + CHECK_MEMBER(mdt_body, blocks); + CHECK_MEMBER(mdt_body, ioepoch); + CHECK_MEMBER(mdt_body, ino); + CHECK_MEMBER(mdt_body, fsuid); + CHECK_MEMBER(mdt_body, fsgid); + CHECK_MEMBER(mdt_body, capability); + CHECK_MEMBER(mdt_body, mode); + CHECK_MEMBER(mdt_body, uid); + CHECK_MEMBER(mdt_body, gid); + CHECK_MEMBER(mdt_body, flags); + CHECK_MEMBER(mdt_body, rdev); + CHECK_MEMBER(mdt_body, nlink); + CHECK_MEMBER(mdt_body, generation); + CHECK_MEMBER(mdt_body, suppgid); + CHECK_MEMBER(mdt_body, eadatasize); + CHECK_MEMBER(mdt_body, aclsize); + CHECK_MEMBER(mdt_body, max_mdsize); + CHECK_MEMBER(mdt_body, max_cookiesize); + CHECK_MEMBER(mdt_body, padding_4); + CHECK_MEMBER(mdt_body, padding_5); + CHECK_MEMBER(mdt_body, padding_6); + CHECK_MEMBER(mdt_body, padding_7); + CHECK_MEMBER(mdt_body, padding_8); + CHECK_MEMBER(mdt_body, padding_9); + CHECK_MEMBER(mdt_body, padding_10); +} + +static void +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); +} + +static void check_mdt_rec_setattr(void) { BLANK_LINE(); @@ -688,7 +803,7 @@ check_mdt_rec_rename(void) CHECK_MEMBER(mdt_rec_rename, rn_padding_1); CHECK_MEMBER(mdt_rec_rename, rn_padding_2); CHECK_MEMBER(mdt_rec_rename, rn_padding_3); - CHECK_MEMBER(mdt_rec_rename, rn_padding_4); + CHECK_MEMBER(mdt_rec_rename, rn_padding_4); CHECK_MEMBER(mdt_rec_rename, rn_bias); CHECK_MEMBER(mdt_rec_rename, rn_mode); CHECK_MEMBER(mdt_rec_rename, rn_padding_5); @@ -977,6 +1092,14 @@ check_llog_size_change_rec(void) } static void +check_changelog_setinfo(void) { + BLANK_LINE(); + CHECK_STRUCT(changelog_setinfo); + CHECK_MEMBER(changelog_setinfo, cs_recno); + CHECK_MEMBER(changelog_setinfo, cs_id); +} + +static void check_changelog_rec(void) { BLANK_LINE(); @@ -1002,6 +1125,17 @@ check_llog_changelog_rec(void) } static void +check_llog_changelog_user_rec(void) { + BLANK_LINE(); + CHECK_STRUCT(llog_changelog_user_rec); + CHECK_MEMBER(llog_changelog_user_rec, cur_hdr); + CHECK_MEMBER(llog_changelog_user_rec, cur_id); + CHECK_MEMBER(llog_changelog_user_rec, cur_padding); + CHECK_MEMBER(llog_changelog_user_rec, cur_endrec); + CHECK_MEMBER(llog_changelog_user_rec, cur_tail); +} + +static void check_llog_gen(void) { BLANK_LINE(); @@ -1096,6 +1230,40 @@ check_qunit_data(void) } static void +check_lustre_capa(void) { + BLANK_LINE(); + CHECK_STRUCT(lustre_capa); + CHECK_MEMBER(lustre_capa, lc_fid); + CHECK_MEMBER(lustre_capa, lc_opc); + CHECK_MEMBER(lustre_capa, lc_uid); + CHECK_MEMBER(lustre_capa, lc_gid); + CHECK_MEMBER(lustre_capa, lc_flags); + CHECK_MEMBER(lustre_capa, lc_keyid); + CHECK_MEMBER(lustre_capa, lc_timeout); + CHECK_MEMBER(lustre_capa, lc_expiry); + CHECK_MEMBER(lustre_capa, lc_hmac[0]); +} + +static void +check_lustre_capa_key(void) { + BLANK_LINE(); + CHECK_STRUCT(lustre_capa_key); + CHECK_MEMBER(lustre_capa_key, lk_seq); + CHECK_MEMBER(lustre_capa_key, lk_keyid); + CHECK_MEMBER(lustre_capa_key, lk_padding); + CHECK_MEMBER(lustre_capa_key, lk_key[0]); +} + +static void +check_mgs_send_param(void) +{ + BLANK_LINE(); + CHECK_STRUCT(mgs_send_param); + CHECK_MEMBER(mgs_send_param, mgs_param[0]); + CHECK_MEMBER(mgs_send_param, mgs_param[MGS_PARAM_MAXLEN - 1]); +} + +static void check_mgs_target_info(void) { BLANK_LINE(); @@ -1165,6 +1333,125 @@ check_quota_adjust_qunit(void) } static void +check_mds_remote_perm(void) { + BLANK_LINE(); + CHECK_STRUCT(mds_remote_perm); + CHECK_MEMBER(mds_remote_perm, rp_uid); + CHECK_MEMBER(mds_remote_perm, rp_gid); + CHECK_MEMBER(mds_remote_perm, rp_fsuid); + CHECK_MEMBER(mds_remote_perm, rp_fsgid); + CHECK_MEMBER(mds_remote_perm, rp_access_perm); +} + +static void +check_mdt_remote_perm(void) { + BLANK_LINE(); + CHECK_STRUCT(mdt_remote_perm); + CHECK_MEMBER(mdt_remote_perm, rp_uid); + CHECK_MEMBER(mdt_remote_perm, rp_gid); + CHECK_MEMBER(mdt_remote_perm, rp_fsuid); + CHECK_MEMBER(mdt_remote_perm, rp_fsgid); + CHECK_MEMBER(mdt_remote_perm, rp_access_perm); +} + +static void +check_mdt_rec_setxattr(void) { + BLANK_LINE(); + CHECK_STRUCT(mdt_rec_setxattr); + CHECK_MEMBER(mdt_rec_setxattr, sx_opcode); + CHECK_MEMBER(mdt_rec_setxattr, sx_cap); + CHECK_MEMBER(mdt_rec_setxattr, sx_fsuid); + CHECK_MEMBER(mdt_rec_setxattr, sx_fsuid_h); + CHECK_MEMBER(mdt_rec_setxattr, sx_fsgid); + CHECK_MEMBER(mdt_rec_setxattr, sx_fsgid_h); + CHECK_MEMBER(mdt_rec_setxattr, sx_suppgid1); + CHECK_MEMBER(mdt_rec_setxattr, sx_suppgid1_h); + CHECK_MEMBER(mdt_rec_setxattr, sx_suppgid2); + CHECK_MEMBER(mdt_rec_setxattr, sx_suppgid2_h); + CHECK_MEMBER(mdt_rec_setxattr, sx_fid); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_1); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_2); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_3); + CHECK_MEMBER(mdt_rec_setxattr, sx_valid); + CHECK_MEMBER(mdt_rec_setxattr, sx_time); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_5); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_6); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_7); + CHECK_MEMBER(mdt_rec_setxattr, sx_size); + CHECK_MEMBER(mdt_rec_setxattr, sx_flags); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_8); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_9); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_10); + CHECK_MEMBER(mdt_rec_setxattr, sx_padding_11); +} + +static void +check_mdt_rec_reint(void) { + BLANK_LINE(); + CHECK_STRUCT(mdt_rec_reint); + CHECK_MEMBER(mdt_rec_reint, rr_opcode); + CHECK_MEMBER(mdt_rec_reint, rr_cap); + CHECK_MEMBER(mdt_rec_reint, rr_fsuid); + CHECK_MEMBER(mdt_rec_reint, rr_fsuid_h); + CHECK_MEMBER(mdt_rec_reint, rr_fsgid); + CHECK_MEMBER(mdt_rec_reint, rr_fsgid_h); + CHECK_MEMBER(mdt_rec_reint, rr_suppgid1); + CHECK_MEMBER(mdt_rec_reint, rr_suppgid1_h); + CHECK_MEMBER(mdt_rec_reint, rr_suppgid2); + CHECK_MEMBER(mdt_rec_reint, rr_suppgid2_h); + CHECK_MEMBER(mdt_rec_reint, rr_fid1); + CHECK_MEMBER(mdt_rec_reint, rr_fid2); + CHECK_MEMBER(mdt_rec_reint, rr_mtime); + CHECK_MEMBER(mdt_rec_reint, rr_atime); + CHECK_MEMBER(mdt_rec_reint, rr_ctime); + CHECK_MEMBER(mdt_rec_reint, rr_size); + CHECK_MEMBER(mdt_rec_reint, rr_blocks); + CHECK_MEMBER(mdt_rec_reint, rr_bias); + CHECK_MEMBER(mdt_rec_reint, rr_mode); + CHECK_MEMBER(mdt_rec_reint, rr_padding_1); + CHECK_MEMBER(mdt_rec_reint, rr_padding_2); + CHECK_MEMBER(mdt_rec_reint, rr_padding_3); + CHECK_MEMBER(mdt_rec_reint, rr_padding_4); +} + +static void +check_lmv_desc(void) { + BLANK_LINE(); + CHECK_STRUCT(lmv_desc); + CHECK_MEMBER(lmv_desc, ld_tgt_count); + CHECK_MEMBER(lmv_desc, ld_active_tgt_count); + CHECK_MEMBER(lmv_desc, ld_default_stripe_count); + CHECK_MEMBER(lmv_desc, ld_pattern); + CHECK_MEMBER(lmv_desc, ld_default_hash_size); + CHECK_MEMBER(lmv_desc, ld_padding_1); + CHECK_MEMBER(lmv_desc, ld_padding_2); + CHECK_MEMBER(lmv_desc, ld_qos_maxage); + CHECK_MEMBER(lmv_desc, ld_padding_3); + CHECK_MEMBER(lmv_desc, ld_padding_4); + CHECK_MEMBER(lmv_desc, ld_uuid); +} + +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_MEMBER(lmv_stripe_md, mea_pool_name[0]); + CHECK_MEMBER(lmv_stripe_md, mea_ids[0]); +} + +static void +check_md_fld(void) { + BLANK_LINE(); + CHECK_STRUCT(md_fld); + CHECK_MEMBER(md_fld, mf_seq); + CHECK_MEMBER(md_fld, mf_mds); +} + +static void check_ll_user_fiemap(void) { BLANK_LINE(); @@ -1229,6 +1516,17 @@ check_link_ea_entry(void) CHECK_MEMBER(link_ea_entry, lee_name); } +static void +check_getinfo_fid2path(void) { + BLANK_LINE(); + CHECK_STRUCT(getinfo_fid2path); + CHECK_MEMBER(getinfo_fid2path, gf_fid); + CHECK_MEMBER(getinfo_fid2path, gf_recno); + CHECK_MEMBER(getinfo_fid2path, gf_linkno); + CHECK_MEMBER(getinfo_fid2path, gf_pathlen); + CHECK_MEMBER(getinfo_fid2path, gf_path[0]); +} + static void system_string (char *cmdline, char *str, int len) @@ -1429,6 +1727,11 @@ main(int argc, char **argv) COMMENT("Sizes and Offsets"); BLANK_LINE(); CHECK_STRUCT(obd_uuid); + check_lu_seq_range(); + check_lustre_mdt_attrs(); + check_lu_dirent(); + check_luda_type(); + check_lu_dirpage(); check_lustre_handle(); check_lustre_msg_v2(); check_ptlrpc_body(); @@ -1441,9 +1744,12 @@ main(int argc, char **argv) check_obd_quotactl(); check_niobuf_remote(); check_ost_body(); + check_ll_fiemap_info_key(); check_ll_fid(); check_mds_status_req(); check_mds_body(); + check_mdt_body(); + check_mdt_ioepoch(); check_mdt_rec_setattr(); check_mdt_rec_create(); check_mdt_rec_link(); @@ -1472,8 +1778,10 @@ main(int argc, char **argv) check_llog_setattr_rec(); check_llog_setattr64_rec(); check_llog_size_change_rec(); + check_changelog_setinfo(); check_changelog_rec(); check_llog_changelog_rec(); + check_llog_changelog_user_rec(); check_llog_gen(); check_llog_gen_rec(); check_llog_log_hdr(); @@ -1481,7 +1789,17 @@ main(int argc, char **argv) check_llogd_body(); check_llogd_conn_body(); check_qunit_data(); + check_lustre_capa(); + check_lustre_capa_key(); check_quota_adjust_qunit(); + check_mds_remote_perm(); + check_mdt_remote_perm(); + check_mdt_rec_setxattr(); + check_mdt_rec_reint(); + check_lmv_desc(); + check_lmv_stripe_md(); + check_md_fld(); + check_mgs_send_param(); check_mgs_target_info(); check_lustre_disk_data(); check_ll_user_fiemap(); @@ -1495,6 +1813,7 @@ main(int argc, char **argv) printf("#endif\n"); check_link_ea_header(); check_link_ea_entry(); + check_getinfo_fid2path(); printf("}\n\n"); diff --git a/lustre/utils/wiretest.c b/lustre/utils/wiretest.c index 7da51fd..bc6027e 100644 --- a/lustre/utils/wiretest.c +++ b/lustre/utils/wiretest.c @@ -285,6 +285,122 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(struct obd_uuid) == 40, " found %lld\n", (long long)(int)sizeof(struct obd_uuid)); + /* Checks for struct lu_seq_range */ + LASSERTF((int)sizeof(struct lu_seq_range) == 24, " found %lld\n", + (long long)(int)sizeof(struct lu_seq_range)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_start) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_start)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_start) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_start)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_end) == 8, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_end)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_end) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_end)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_mdt) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_mdt)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_mdt) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_mdt)); + LASSERTF((int)offsetof(struct lu_seq_range, lsr_padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct lu_seq_range, lsr_padding)); + LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_padding)); + + /* Checks for struct lustre_mdt_attrs */ + LASSERTF((int)sizeof(struct lustre_mdt_attrs) == 64, " found %lld\n", + (long long)(int)sizeof(struct lustre_mdt_attrs)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_compat) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_compat)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_incompat) == 4, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_incompat)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_self_fid) == 8, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_self_fid)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_flags) == 24, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_flags)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_flags) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_flags)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_ioepoch) == 32, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_ioepoch)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_ioepoch)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_size) == 40, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_size)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_size)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_blocks) == 48, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_blocks)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_blocks)); + LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_som_mountid) == 56, " found %lld\n", + (long long)(int)offsetof(struct lustre_mdt_attrs, lma_som_mountid)); + LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_mountid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_som_mountid)); + + /* Checks for struct lu_dirent */ + LASSERTF((int)sizeof(struct lu_dirent) == 32, " found %lld\n", + (long long)(int)sizeof(struct lu_dirent)); + LASSERTF((int)offsetof(struct lu_dirent, lde_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_fid)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_fid)); + LASSERTF((int)offsetof(struct lu_dirent, lde_hash) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_hash)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_hash) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_hash)); + LASSERTF((int)offsetof(struct lu_dirent, lde_reclen) == 24, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_reclen)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_reclen) == 2, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_reclen)); + LASSERTF((int)offsetof(struct lu_dirent, lde_namelen) == 26, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_namelen)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_namelen) == 2, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_namelen)); + LASSERTF((int)offsetof(struct lu_dirent, lde_attrs) == 28, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_attrs)); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_attrs) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_attrs)); + LASSERTF((int)offsetof(struct lu_dirent, lde_name[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct lu_dirent, lde_name[0])); + LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirent *)0)->lde_name[0])); + + /* Checks for struct luda_type */ + LASSERTF((int)sizeof(struct luda_type) == 2, " found %lld\n", + (long long)(int)sizeof(struct luda_type)); + LASSERTF((int)offsetof(struct luda_type, lt_type) == 0, " found %lld\n", + (long long)(int)offsetof(struct luda_type, lt_type)); + LASSERTF((int)sizeof(((struct luda_type *)0)->lt_type) == 2, " found %lld\n", + (long long)(int)sizeof(((struct luda_type *)0)->lt_type)); + + /* Checks for struct lu_dirpage */ + LASSERTF((int)sizeof(struct lu_dirpage) == 24, " found %lld\n", + (long long)(int)sizeof(struct lu_dirpage)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_start) == 0, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_hash_start)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_end) == 8, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_hash_end)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_flags) == 16, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_flags)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_flags)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_pad0) == 20, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_pad0)); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_pad0) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_pad0)); + LASSERTF((int)offsetof(struct lu_dirpage, ldp_entries[0]) == 24, " found %lld\n", + (long long)(int)offsetof(struct lu_dirpage, ldp_entries[0])); + LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0]) == 32, " found %lld\n", + (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0])); + /* Checks for struct lustre_handle */ LASSERTF((int)sizeof(struct lustre_handle) == 8, " found %lld\n", (long long)(int)sizeof(struct lustre_handle)); @@ -1010,6 +1126,22 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct ost_body *)0)->oa) == 208, " found %lld\n", (long long)(int)sizeof(((struct ost_body *)0)->oa)); + /* Checks for struct ll_fiemap_info_key */ + LASSERTF((int)sizeof(struct ll_fiemap_info_key) == 248, " found %lld\n", + (long long)(int)sizeof(struct ll_fiemap_info_key)); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, name[0]) == 0, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, name[0])); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->name[0])); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, oa) == 8, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, oa)); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->oa) == 208, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->oa)); + LASSERTF((int)offsetof(struct ll_fiemap_info_key, fiemap) == 216, " found %lld\n", + (long long)(int)offsetof(struct ll_fiemap_info_key, fiemap)); + LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap) == 32, " found %lld\n", + (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap)); + /* Checks for struct ll_fid */ LASSERTF((int)sizeof(struct ll_fid) == 16, " found %lld\n", (long long)(int)sizeof(struct ll_fid)); @@ -1175,6 +1307,162 @@ void lustre_assert_wire_constants(void) CLASSERT(MDS_INODELOCK_UPDATE == 0x000002); CLASSERT(MDS_INODELOCK_OPEN == 0x000004); + /* Checks for struct mdt_body */ + LASSERTF((int)sizeof(struct mdt_body) == 216, " found %lld\n", + (long long)(int)sizeof(struct mdt_body)); + LASSERTF((int)offsetof(struct mdt_body, fid1) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fid1)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fid1) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fid1)); + LASSERTF((int)offsetof(struct mdt_body, fid2) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fid2)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fid2) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fid2)); + LASSERTF((int)offsetof(struct mdt_body, handle) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, handle)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->handle) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->handle)); + LASSERTF((int)offsetof(struct mdt_body, valid) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, valid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->valid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->valid)); + LASSERTF((int)offsetof(struct mdt_body, size) == 48, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, size)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->size)); + LASSERTF((int)offsetof(struct mdt_body, mtime) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, mtime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->mtime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->mtime)); + LASSERTF((int)offsetof(struct mdt_body, atime) == 64, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, atime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->atime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->atime)); + LASSERTF((int)offsetof(struct mdt_body, ctime) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ctime)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ctime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ctime)); + LASSERTF((int)offsetof(struct mdt_body, blocks) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, blocks)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->blocks)); + LASSERTF((int)offsetof(struct mdt_body, ioepoch) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ioepoch)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ioepoch)); + LASSERTF((int)offsetof(struct mdt_body, ino) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, ino)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->ino) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->ino)); + LASSERTF((int)offsetof(struct mdt_body, fsuid) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fsuid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fsuid)); + LASSERTF((int)offsetof(struct mdt_body, fsgid) == 108, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, fsgid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->fsgid)); + LASSERTF((int)offsetof(struct mdt_body, capability) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, capability)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->capability) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->capability)); + LASSERTF((int)offsetof(struct mdt_body, mode) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, mode)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->mode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->mode)); + LASSERTF((int)offsetof(struct mdt_body, uid) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, uid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->uid)); + LASSERTF((int)offsetof(struct mdt_body, gid) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, gid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->gid)); + LASSERTF((int)offsetof(struct mdt_body, flags) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, flags)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->flags)); + LASSERTF((int)offsetof(struct mdt_body, rdev) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, rdev)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->rdev) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->rdev)); + LASSERTF((int)offsetof(struct mdt_body, nlink) == 136, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, nlink)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->nlink) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->nlink)); + LASSERTF((int)offsetof(struct mdt_body, generation) == 140, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, generation)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->generation) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->generation)); + LASSERTF((int)offsetof(struct mdt_body, suppgid) == 144, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, suppgid)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->suppgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->suppgid)); + LASSERTF((int)offsetof(struct mdt_body, eadatasize) == 148, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, eadatasize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->eadatasize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->eadatasize)); + LASSERTF((int)offsetof(struct mdt_body, aclsize) == 152, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, aclsize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->aclsize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->aclsize)); + LASSERTF((int)offsetof(struct mdt_body, max_mdsize) == 156, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, max_mdsize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->max_mdsize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->max_mdsize)); + LASSERTF((int)offsetof(struct mdt_body, max_cookiesize) == 160, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, max_cookiesize)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->max_cookiesize) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->max_cookiesize)); + LASSERTF((int)offsetof(struct mdt_body, padding_4) == 164, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_4)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_4)); + LASSERTF((int)offsetof(struct mdt_body, padding_5) == 168, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_5)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_5) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_5)); + LASSERTF((int)offsetof(struct mdt_body, padding_6) == 176, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_6)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_6) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_6)); + LASSERTF((int)offsetof(struct mdt_body, padding_7) == 184, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_7)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_7) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_7)); + LASSERTF((int)offsetof(struct mdt_body, padding_8) == 192, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_8)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_8) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_8)); + LASSERTF((int)offsetof(struct mdt_body, padding_9) == 200, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_9)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_9) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_9)); + LASSERTF((int)offsetof(struct mdt_body, padding_10) == 208, " found %lld\n", + (long long)(int)offsetof(struct mdt_body, padding_10)); + LASSERTF((int)sizeof(((struct mdt_body *)0)->padding_10) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_body *)0)->padding_10)); + + /* Checks for struct mdt_ioepoch */ + LASSERTF((int)sizeof(struct mdt_ioepoch) == 24, " found %lld\n", + (long long)(int)sizeof(struct mdt_ioepoch)); + LASSERTF((int)offsetof(struct mdt_ioepoch, handle) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, handle)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->handle) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->handle)); + LASSERTF((int)offsetof(struct mdt_ioepoch, ioepoch) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, ioepoch)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->ioepoch) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->ioepoch)); + LASSERTF((int)offsetof(struct mdt_ioepoch, flags) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, flags)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->flags)); + LASSERTF((int)offsetof(struct mdt_ioepoch, padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_ioepoch, padding)); + LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_ioepoch *)0)->padding)); + /* Checks for struct mdt_rec_setattr */ LASSERTF((int)sizeof(struct mdt_rec_setattr) == 136, " found %lld\n", (long long)(int)sizeof(struct mdt_rec_setattr)); @@ -2193,6 +2481,18 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct llog_size_change_rec *)0)->lsc_tail) == 8, " found %lld\n", (long long)(int)sizeof(((struct llog_size_change_rec *)0)->lsc_tail)); + /* Checks for struct changelog_setinfo */ + LASSERTF((int)sizeof(struct changelog_setinfo) == 12, " found %lld\n", + (long long)(int)sizeof(struct changelog_setinfo)); + LASSERTF((int)offsetof(struct changelog_setinfo, cs_recno) == 0, " found %lld\n", + (long long)(int)offsetof(struct changelog_setinfo, cs_recno)); + LASSERTF((int)sizeof(((struct changelog_setinfo *)0)->cs_recno) == 8, " found %lld\n", + (long long)(int)sizeof(((struct changelog_setinfo *)0)->cs_recno)); + LASSERTF((int)offsetof(struct changelog_setinfo, cs_id) == 8, " found %lld\n", + (long long)(int)offsetof(struct changelog_setinfo, cs_id)); + LASSERTF((int)sizeof(((struct changelog_setinfo *)0)->cs_id) == 4, " found %lld\n", + (long long)(int)sizeof(((struct changelog_setinfo *)0)->cs_id)); + /* Checks for struct changelog_rec */ LASSERTF((int)sizeof(struct changelog_rec) == 64, " found %lld\n", (long long)(int)sizeof(struct changelog_rec)); @@ -2245,6 +2545,30 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct llog_changelog_rec *)0)->cr_tail) == 8, " found %lld\n", (long long)(int)sizeof(((struct llog_changelog_rec *)0)->cr_tail)); + /* Checks for struct llog_changelog_user_rec */ + LASSERTF((int)sizeof(struct llog_changelog_user_rec) == 40, " found %lld\n", + (long long)(int)sizeof(struct llog_changelog_user_rec)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_hdr) == 0, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_hdr)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_hdr) == 16, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_hdr)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_id) == 16, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_id)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id) == 4, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_padding) == 20, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_padding)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_endrec) == 24, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_endrec)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_endrec) == 8, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_endrec)); + LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_tail) == 32, " found %lld\n", + (long long)(int)offsetof(struct llog_changelog_user_rec, cur_tail)); + LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_tail) == 8, " found %lld\n", + (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_tail)); + /* Checks for struct llog_gen */ LASSERTF((int)sizeof(struct llog_gen) == 16, " found %lld\n", (long long)(int)sizeof(struct llog_gen)); @@ -2422,6 +2746,66 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct qunit_data *)0)->padding) == 8, " found %lld\n", (long long)(int)sizeof(((struct qunit_data *)0)->padding)); + /* Checks for struct lustre_capa */ + LASSERTF((int)sizeof(struct lustre_capa) == 120, " found %lld\n", + (long long)(int)sizeof(struct lustre_capa)); + LASSERTF((int)offsetof(struct lustre_capa, lc_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_fid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_fid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_opc) == 16, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_opc)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_opc) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_opc)); + LASSERTF((int)offsetof(struct lustre_capa, lc_uid) == 24, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_uid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_uid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_uid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_gid) == 32, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_gid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_gid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_gid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_flags) == 40, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_flags)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_flags)); + LASSERTF((int)offsetof(struct lustre_capa, lc_keyid) == 44, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_keyid)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_keyid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_keyid)); + LASSERTF((int)offsetof(struct lustre_capa, lc_timeout) == 48, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_timeout)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_timeout) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_timeout)); + LASSERTF((int)offsetof(struct lustre_capa, lc_expiry) == 52, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_expiry)); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_expiry) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_expiry)); + LASSERTF((int)offsetof(struct lustre_capa, lc_hmac[0]) == 56, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa, lc_hmac[0])); + LASSERTF((int)sizeof(((struct lustre_capa *)0)->lc_hmac[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa *)0)->lc_hmac[0])); + + /* Checks for struct lustre_capa_key */ + LASSERTF((int)sizeof(struct lustre_capa_key) == 72, " found %lld\n", + (long long)(int)sizeof(struct lustre_capa_key)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_seq) == 0, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_seq)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_seq) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_seq)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_keyid) == 8, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_keyid)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_keyid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_keyid)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_padding) == 12, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_padding)); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_padding)); + LASSERTF((int)offsetof(struct lustre_capa_key, lk_key[0]) == 16, " found %lld\n", + (long long)(int)offsetof(struct lustre_capa_key, lk_key[0])); + LASSERTF((int)sizeof(((struct lustre_capa_key *)0)->lk_key[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lustre_capa_key *)0)->lk_key[0])); + /* Checks for struct quota_adjust_qunit */ LASSERTF((int)sizeof(struct quota_adjust_qunit) == 32, " found %lld\n", (long long)(int)sizeof(struct quota_adjust_qunit)); @@ -2446,6 +2830,354 @@ void lustre_assert_wire_constants(void) LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->padding1) == 8, " found %lld\n", (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->padding1)); + /* Checks for struct mds_remote_perm */ + LASSERTF((int)sizeof(struct mds_remote_perm) == 20, " found %lld\n", + (long long)(int)sizeof(struct mds_remote_perm)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_uid) == 0, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_uid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_uid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_gid) == 4, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_gid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_gid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_fsuid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_fsuid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_fsgid) == 12, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_fsgid)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_fsgid)); + LASSERTF((int)offsetof(struct mds_remote_perm, rp_access_perm) == 16, " found %lld\n", + (long long)(int)offsetof(struct mds_remote_perm, rp_access_perm)); + LASSERTF((int)sizeof(((struct mds_remote_perm *)0)->rp_access_perm) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mds_remote_perm *)0)->rp_access_perm)); + + /* Checks for struct mdt_remote_perm */ + LASSERTF((int)sizeof(struct mdt_remote_perm) == 20, " found %lld\n", + (long long)(int)sizeof(struct mdt_remote_perm)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_uid) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_uid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_uid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_uid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_gid) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_gid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_gid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_gid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_fsuid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsgid) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_fsgid)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid)); + LASSERTF((int)offsetof(struct mdt_remote_perm, rp_access_perm) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_remote_perm, rp_access_perm)); + LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm)); + + /* Checks for struct mdt_rec_setxattr */ + LASSERTF((int)sizeof(struct mdt_rec_setxattr) == 136, " found %lld\n", + (long long)(int)sizeof(struct mdt_rec_setxattr)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_opcode) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_opcode)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_opcode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_opcode)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_cap) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_cap)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_cap) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_cap)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsuid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsuid_h) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsuid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsuid_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsgid) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsgid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fsgid_h) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fsgid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fsgid_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid1) == 24, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid1)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid1_h) == 28, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid1_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid1_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid2) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid2)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_suppgid2_h) == 36, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_suppgid2_h)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_suppgid2_h)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_fid) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_fid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_fid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_1) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_1)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_1) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_1)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_2) == 64, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_2)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_2)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_3) == 68, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_3)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_3)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_valid) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_valid)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_valid) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_valid)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_time) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_time)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_time) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_time)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_5) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_5)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_5) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_5)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_6) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_6)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_6) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_6)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_7) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_7)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_7) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_7)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_size) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_size)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_size) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_size)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_flags) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_flags)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_flags) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_flags)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_8) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_8)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_8) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_8)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_9) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_9)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_9) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_9)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_10) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_10)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_10) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_10)); + LASSERTF((int)offsetof(struct mdt_rec_setxattr, sx_padding_11) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_setxattr, sx_padding_11)); + LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11)); + + /* Checks for struct mdt_rec_reint */ + LASSERTF((int)sizeof(struct mdt_rec_reint) == 136, " found %lld\n", + (long long)(int)sizeof(struct mdt_rec_reint)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_opcode) == 0, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_opcode)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_opcode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_opcode)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_cap) == 4, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_cap)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_cap) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_cap)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsuid) == 8, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsuid)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsuid_h) == 12, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsuid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsuid_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsgid) == 16, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsgid)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fsgid_h) == 20, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fsgid_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fsgid_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid1) == 24, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid1_h) == 28, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid1_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid1_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid2) == 32, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_suppgid2_h) == 36, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_suppgid2_h)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2_h) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_suppgid2_h)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fid1) == 40, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fid1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fid1) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fid1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_fid2) == 56, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_fid2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_fid2) == 16, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_fid2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_mtime) == 72, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_mtime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_mtime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_mtime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_atime) == 80, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_atime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_atime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_atime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_ctime) == 88, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_ctime)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_ctime) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_ctime)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_size) == 96, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_size)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_size)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_blocks) == 104, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_blocks)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_blocks) == 8, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_blocks)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_bias) == 112, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_bias)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_bias) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_bias)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_mode) == 116, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_mode)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_mode) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_mode)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_1) == 120, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_1)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_1) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_1)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_2) == 124, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_2)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_2)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_3) == 128, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_3)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_3)); + LASSERTF((int)offsetof(struct mdt_rec_reint, rr_padding_4) == 132, " found %lld\n", + (long long)(int)offsetof(struct mdt_rec_reint, rr_padding_4)); + LASSERTF((int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct mdt_rec_reint *)0)->rr_padding_4)); + + /* Checks for struct lmv_desc */ + LASSERTF((int)sizeof(struct lmv_desc) == 88, " found %lld\n", + (long long)(int)sizeof(struct lmv_desc)); + LASSERTF((int)offsetof(struct lmv_desc, ld_tgt_count) == 0, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_tgt_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_tgt_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_tgt_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_active_tgt_count) == 4, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_active_tgt_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_active_tgt_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_active_tgt_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_default_stripe_count) == 8, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_default_stripe_count)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_default_stripe_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_default_stripe_count)); + LASSERTF((int)offsetof(struct lmv_desc, ld_pattern) == 12, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_pattern)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_pattern) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_pattern)); + LASSERTF((int)offsetof(struct lmv_desc, ld_default_hash_size) == 16, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_default_hash_size)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_default_hash_size) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_default_hash_size)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_1) == 24, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_1)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_1) == 8, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_1)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_2) == 32, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_2)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_2) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_2)); + LASSERTF((int)offsetof(struct lmv_desc, ld_qos_maxage) == 36, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_qos_maxage)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_qos_maxage) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_qos_maxage)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_3) == 40, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_3)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_3) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_3)); + LASSERTF((int)offsetof(struct lmv_desc, ld_padding_4) == 44, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_padding_4)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_padding_4) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_padding_4)); + LASSERTF((int)offsetof(struct lmv_desc, ld_uuid) == 48, " found %lld\n", + (long long)(int)offsetof(struct lmv_desc, ld_uuid)); + LASSERTF((int)sizeof(((struct lmv_desc *)0)->ld_uuid) == 40, " found %lld\n", + (long long)(int)sizeof(((struct lmv_desc *)0)->ld_uuid)); + + /* Checks for struct lmv_stripe_md */ + LASSERTF((int)sizeof(struct lmv_stripe_md) == 32, " found %lld\n", + (long long)(int)sizeof(struct lmv_stripe_md)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_magic) == 0, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_magic)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_magic) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_magic)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_count) == 4, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_count)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_count) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_count)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_master) == 8, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_master)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_master) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_master)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_padding) == 12, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_padding)); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_padding) == 4, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_padding)); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_pool_name[0]) == 16, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_pool_name[0])); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_pool_name[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_pool_name[0])); + LASSERTF((int)offsetof(struct lmv_stripe_md, mea_ids[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct lmv_stripe_md, mea_ids[0])); + LASSERTF((int)sizeof(((struct lmv_stripe_md *)0)->mea_ids[0]) == 16, " found %lld\n", + (long long)(int)sizeof(((struct lmv_stripe_md *)0)->mea_ids[0])); + + /* Checks for struct md_fld */ + LASSERTF((int)sizeof(struct md_fld) == 16, " found %lld\n", + (long long)(int)sizeof(struct md_fld)); + LASSERTF((int)offsetof(struct md_fld, mf_seq) == 0, " found %lld\n", + (long long)(int)offsetof(struct md_fld, mf_seq)); + LASSERTF((int)sizeof(((struct md_fld *)0)->mf_seq) == 8, " found %lld\n", + (long long)(int)sizeof(((struct md_fld *)0)->mf_seq)); + LASSERTF((int)offsetof(struct md_fld, mf_mds) == 8, " found %lld\n", + (long long)(int)offsetof(struct md_fld, mf_mds)); + LASSERTF((int)sizeof(((struct md_fld *)0)->mf_mds) == 4, " found %lld\n", + (long long)(int)sizeof(((struct md_fld *)0)->mf_mds)); + + /* Checks for struct mgs_send_param */ + LASSERTF((int)sizeof(struct mgs_send_param) == 1024, " found %lld\n", + (long long)(int)sizeof(struct mgs_send_param)); + LASSERTF((int)offsetof(struct mgs_send_param, mgs_param[0]) == 0, " found %lld\n", + (long long)(int)offsetof(struct mgs_send_param, mgs_param[0])); + LASSERTF((int)sizeof(((struct mgs_send_param *)0)->mgs_param[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct mgs_send_param *)0)->mgs_param[0])); + LASSERTF((int)offsetof(struct mgs_send_param, mgs_param[1024 - 1]) == 1023, " found %lld\n", + (long long)(int)offsetof(struct mgs_send_param, mgs_param[1024 - 1])); + LASSERTF((int)sizeof(((struct mgs_send_param *)0)->mgs_param[1024 - 1]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct mgs_send_param *)0)->mgs_param[1024 - 1])); + /* Checks for struct mgs_target_info */ LASSERTF((int)sizeof(struct mgs_target_info) == 4544, " found %lld\n", (long long)(int)sizeof(struct mgs_target_info)); @@ -2690,5 +3422,29 @@ void lustre_assert_wire_constants(void) (long long)(int)offsetof(struct link_ea_entry, lee_name)); LASSERTF((int)sizeof(((struct link_ea_entry *)0)->lee_name) == 0, " found %lld\n", (long long)(int)sizeof(((struct link_ea_entry *)0)->lee_name)); + + /* Checks for struct getinfo_fid2path */ + LASSERTF((int)sizeof(struct getinfo_fid2path) == 32, " found %lld\n", + (long long)(int)sizeof(struct getinfo_fid2path)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_fid) == 0, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_fid)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_fid) == 16, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_fid)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_recno) == 16, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_recno)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_recno) == 8, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_recno)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_linkno) == 24, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_linkno)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_linkno) == 4, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_linkno)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_pathlen) == 28, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_pathlen)); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen) == 4, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen)); + LASSERTF((int)offsetof(struct getinfo_fid2path, gf_path[0]) == 32, " found %lld\n", + (long long)(int)offsetof(struct getinfo_fid2path, gf_path[0])); + LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0]) == 1, " found %lld\n", + (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0])); } -- 1.8.3.1