Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lustre / utils / wirecheck.c
index ff3cde1..bd8aa1a 100644 (file)
@@ -54,23 +54,44 @@ do {                                                            \
         CHECK_VALUE((int)offsetof(struct s, m));                \
 } while(0)
 
+#define CHECK_MEMBER_OFFSET_TYPEDEF(s,m)                        \
+do {                                                            \
+        CHECK_VALUE((int)offsetof(s, m));                       \
+} while(0)
+
 #define CHECK_MEMBER_SIZEOF(s,m)                                \
 do {                                                            \
         CHECK_VALUE((int)sizeof(((struct s *)0)->m));           \
 } while(0)
 
+#define CHECK_MEMBER_SIZEOF_TYPEDEF(s,m)                        \
+do {                                                            \
+        CHECK_VALUE((int)sizeof(((s *)0)->m));                  \
+} while(0)
+
 #define CHECK_MEMBER(s,m)                                       \
 do {                                                            \
         CHECK_MEMBER_OFFSET(s, m);                              \
         CHECK_MEMBER_SIZEOF(s, m);                              \
 } while(0)
 
+#define CHECK_MEMBER_TYPEDEF(s,m)                               \
+do {                                                            \
+        CHECK_MEMBER_OFFSET_TYPEDEF(s, m);                      \
+        CHECK_MEMBER_SIZEOF_TYPEDEF(s, m);                      \
+} while(0)
+
 #define CHECK_STRUCT(s)                                         \
 do {                                                            \
         COMMENT("Checks for struct "#s);                        \
                 CHECK_VALUE((int)sizeof(struct s));             \
 } while(0)
 
+#define CHECK_STRUCT_TYPEDEF(s)                                 \
+do {                                                            \
+        COMMENT("Checks for type "#s);                          \
+                CHECK_VALUE((int)sizeof(s));                    \
+} while(0)
 
 static void
 check_lustre_handle(void)
@@ -81,26 +102,6 @@ check_lustre_handle(void)
 }
 
 void
-check_lustre_msg_v1(void)
-{
-        BLANK_LINE();
-        CHECK_STRUCT(lustre_msg_v1);
-        CHECK_MEMBER(lustre_msg_v1, lm_handle);
-        CHECK_MEMBER(lustre_msg_v1, lm_magic);
-        CHECK_MEMBER(lustre_msg_v1, lm_type);
-        CHECK_MEMBER(lustre_msg_v1, lm_version);
-        CHECK_MEMBER(lustre_msg_v1, lm_opc);
-        CHECK_MEMBER(lustre_msg_v1, lm_last_xid);
-        CHECK_MEMBER(lustre_msg_v1, lm_last_committed);
-        CHECK_MEMBER(lustre_msg_v1, lm_transno);
-        CHECK_MEMBER(lustre_msg_v1, lm_status);
-        CHECK_MEMBER(lustre_msg_v1, lm_flags);
-        CHECK_MEMBER(lustre_msg_v1, lm_conn_cnt);
-        CHECK_MEMBER(lustre_msg_v1, lm_bufcount);
-        CHECK_MEMBER(lustre_msg_v1, lm_buflens[0]);
-}
-
-void
 check_lustre_msg_v2(void)
 {
         BLANK_LINE();
@@ -135,9 +136,8 @@ check_ptlrpc_body(void)
         CHECK_MEMBER(ptlrpc_body, pb_conn_cnt);
         CHECK_MEMBER(ptlrpc_body, pb_padding_1);
         CHECK_MEMBER(ptlrpc_body, pb_padding_2);
-        CHECK_MEMBER(ptlrpc_body, pb_padding_3);
-        CHECK_MEMBER(ptlrpc_body, pb_padding_4);
-        CHECK_MEMBER(ptlrpc_body, pb_padding_5);
+        CHECK_MEMBER(ptlrpc_body, pb_slv);
+        CHECK_MEMBER(ptlrpc_body, pb_limit);
 }
 
 static void check_obd_connect_data(void)
@@ -154,9 +154,9 @@ static void check_obd_connect_data(void)
         CHECK_MEMBER(obd_connect_data, ocd_nllg);
         CHECK_MEMBER(obd_connect_data, ocd_transno);
         CHECK_MEMBER(obd_connect_data, ocd_group);
+        CHECK_MEMBER(obd_connect_data, ocd_cksum_types);
         CHECK_MEMBER(obd_connect_data, padding1);
         CHECK_MEMBER(obd_connect_data, padding2);
-        CHECK_MEMBER(obd_connect_data, padding3);
 
         CHECK_CDEFINE(OBD_CONNECT_RDONLY);
         CHECK_CDEFINE(OBD_CONNECT_INDEX);
@@ -167,6 +167,7 @@ static void check_obd_connect_data(void)
         CHECK_CDEFINE(OBD_CONNECT_ACL);
         CHECK_CDEFINE(OBD_CONNECT_XATTR);
         CHECK_CDEFINE(OBD_CONNECT_REAL);
+        CHECK_CDEFINE(OBD_CONNECT_CKSUM);
         CHECK_CDEFINE(OBD_CONNECT_TRUNCLOCK);
         CHECK_CDEFINE(OBD_CONNECT_IBITS);
         CHECK_CDEFINE(OBD_CONNECT_JOIN);
@@ -182,6 +183,7 @@ static void check_obd_connect_data(void)
         CHECK_CDEFINE(OBD_CONNECT_SOM);
         CHECK_CDEFINE(OBD_CONNECT_AT);
         CHECK_CDEFINE(OBD_CONNECT_CANCELSET);
+        CHECK_CDEFINE(OBD_CONNECT_LRU_RESIZE);
 }
 
 static void
@@ -261,6 +263,11 @@ check_obdo(void)
         CHECK_CDEFINE(OBD_FL_DEBUG_CHECK);
         CHECK_CDEFINE(OBD_FL_NO_USRQUOTA);
         CHECK_CDEFINE(OBD_FL_NO_GRPQUOTA);
+        CHECK_CDEFINE(OBD_FL_TRUNCLOCK);
+        CHECK_CDEFINE(OBD_FL_CKSUM_CRC32);
+        CHECK_CDEFINE(OBD_FL_CKSUM_ADLER);
+        CHECK_CDEFINE(OBD_CKSUM_CRC32);
+        CHECK_CDEFINE(OBD_CKSUM_ADLER);
 }
 
 static void
@@ -500,6 +507,22 @@ check_mds_rec_setattr(void)
         CHECK_MEMBER(mds_rec_setattr, sa_uid);
         CHECK_MEMBER(mds_rec_setattr, sa_gid);
         CHECK_MEMBER(mds_rec_setattr, sa_attr_flags);
+        CHECK_CDEFINE(MDS_ATTR_MODE);
+        CHECK_CDEFINE(MDS_ATTR_UID);
+        CHECK_CDEFINE(MDS_ATTR_GID);
+        CHECK_CDEFINE(MDS_ATTR_SIZE);
+        CHECK_CDEFINE(MDS_ATTR_ATIME);
+        CHECK_CDEFINE(MDS_ATTR_MTIME);
+        CHECK_CDEFINE(MDS_ATTR_CTIME);
+        CHECK_CDEFINE(MDS_ATTR_ATIME_SET);
+        CHECK_CDEFINE(MDS_ATTR_MTIME_SET);
+        CHECK_CDEFINE(MDS_ATTR_FORCE);
+        CHECK_CDEFINE(MDS_ATTR_ATTR_FLAG);
+        CHECK_CDEFINE(MDS_ATTR_KILL_SUID);
+        CHECK_CDEFINE(MDS_ATTR_KILL_SGID);
+        CHECK_CDEFINE(MDS_ATTR_CTIME_SET);
+        CHECK_CDEFINE(MDS_ATTR_FROM_OPEN);
+        CHECK_CDEFINE(MDS_ATTR_BLOCKS);
 }
 
 static void
@@ -987,6 +1010,27 @@ check_lustre_disk_data(void)
         CHECK_MEMBER(lustre_disk_data, ldd_params);
 }
 
+#ifdef LIBLUSTRE_POSIX_ACL
+static void
+check_posix_acl_xattr_entry(void)
+{
+        BLANK_LINE();
+        CHECK_STRUCT_TYPEDEF(posix_acl_xattr_entry);
+        CHECK_MEMBER_TYPEDEF(posix_acl_xattr_entry, e_tag);
+        CHECK_MEMBER_TYPEDEF(posix_acl_xattr_entry, e_perm);
+        CHECK_MEMBER_TYPEDEF(posix_acl_xattr_entry, e_id);
+}
+
+static void
+check_posix_acl_xattr_header(void)
+{
+        BLANK_LINE();
+        CHECK_STRUCT_TYPEDEF(posix_acl_xattr_header);
+        CHECK_MEMBER_TYPEDEF(posix_acl_xattr_header, a_version);
+        CHECK_MEMBER_TYPEDEF(posix_acl_xattr_header, a_entries);
+}
+#endif
+
 static void
 system_string (char *cmdline, char *str, int len)
 {
@@ -1058,7 +1102,6 @@ main(int argc, char **argv)
         BLANK_LINE ();
 
         COMMENT("Constants...");
-        CHECK_DEFINE(LUSTRE_MSG_MAGIC_V1);
         CHECK_DEFINE(LUSTRE_MSG_MAGIC_V2);
         CHECK_DEFINE(PTLRPC_MSG_VERSION);
 
@@ -1126,6 +1169,7 @@ main(int argc, char **argv)
         CHECK_VALUE(MGS_EXCEPTION);
         CHECK_VALUE(MGS_TARGET_REG);
         CHECK_VALUE(MGS_TARGET_DEL);
+        CHECK_VALUE(MGS_SET_INFO);
 
         CHECK_VALUE(DISP_IT_EXECD);
         CHECK_VALUE(DISP_LOOKUP_EXECD);
@@ -1172,15 +1216,13 @@ main(int argc, char **argv)
         CHECK_VALUE(MGS_EXCEPTION);   
         CHECK_VALUE(MGS_TARGET_REG);
         CHECK_VALUE(MGS_TARGET_DEL);
+        CHECK_VALUE(MGS_SET_INFO);
 
         COMMENT("Sizes and Offsets");
         BLANK_LINE();
         CHECK_STRUCT(obd_uuid);
         check_lustre_handle();
-        check_lustre_msg_v1();
         check_lustre_msg_v2();
-        printf("        LASSERT(offsetof(struct lustre_msg_v1, lm_magic) == "
-               "offsetof(struct lustre_msg_v2, lm_magic));\n");
         check_ptlrpc_body();
         check_obd_connect_data();
         check_obdo();
@@ -1233,6 +1275,10 @@ main(int argc, char **argv)
         check_qunit_data_old();
         check_mgs_target_info();
         check_lustre_disk_data();
+#ifdef LIBLUSTRE_POSIX_ACL
+        check_posix_acl_xattr_entry();
+        check_posix_acl_xattr_header();
+#endif
 
 
         printf("}\n\n");