Whamcloud - gitweb
b=22755 Don't consume grant twice on recoverable resend
[fs/lustre-release.git] / lustre / utils / wiretest.c
index 85257f0..cab0cc7 100644 (file)
@@ -1,3 +1,39 @@
+/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
+ * vim:expandtab:shiftwidth=8:tabstop=8:
+ *
+ * GPL HEADER START
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 only,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License version 2 for more details (a copy is included
+ * in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License
+ * version 2 along with this program; If not, see
+ * http://www.sun.com/software/products/lustre/docs/GPLv2.pdf
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ *
+ * GPL HEADER END
+ */
+/*
+ * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Use is subject to license terms.
+ */
+/*
+ * This file is part of Lustre, http://www.lustre.org/
+ * Lustre is a trademark of Sun Microsystems, Inc.
+ */
+
 #include <stdio.h>
 #include <liblustre.h>
 #include <lustre_lib.h>
@@ -6,7 +42,6 @@
 
 #undef LASSERT
 #undef LASSERTF
-#define CLASSERT(cond) ({ switch(42) { case (cond): case 0: break; } })
 #define LASSERT(cond) if (!(cond)) { printf("failed " #cond "\n"); ret = 1; }
 #define LASSERTF(cond, fmt, arg) if (!(cond)) { printf("failed '" #cond "'" fmt, arg);ret = 1;}
 
@@ -23,22 +58,21 @@ int main()
 
         return ret;
 }
-
 void lustre_assert_wire_constants(void)
 {
         /* Wire protocol assertions generated by 'wirecheck'
-         * (make -C lustre/utils newwirecheck)
-         * running on Linux hideous 2.6.9-prep.qp3.5.34.4qsnet #3 Mon Aug 13 08:38:55 EEST 2007 i686 
-         * with gcc version 3.4.6 20060404 (Red Hat 3.4.6-3) */
+         * (make -C lustre/utils newwiretest)
+         * running on Linux vl1 2.6.18-prep #3 SMP Mon Apr 19 06:11:00 CDT 2010 x86_64 x86_64 x86_64 
+         * with gcc version 4.1.2 20070626 (Red Hat 4.1.2-14) */
 
 
         /* Constants... */
-        LASSERTF(LUSTRE_MSG_MAGIC_V1 == 0x0BD00BD0," found %lld\n",
-                 (long long)LUSTRE_MSG_MAGIC_V1);
         LASSERTF(LUSTRE_MSG_MAGIC_V2 == 0x0BD00BD3," found %lld\n",
                  (long long)LUSTRE_MSG_MAGIC_V2);
         LASSERTF(PTLRPC_MSG_VERSION == 0x00000003," found %lld\n",
                  (long long)PTLRPC_MSG_VERSION);
+        LASSERTF(MSGHDR_AT_SUPPORT == 1, " found %lld\n",
+                 (long long)MSGHDR_AT_SUPPORT);
         LASSERTF(PTL_RPC_MSG_REQUEST == 4711, " found %lld\n",
                  (long long)PTL_RPC_MSG_REQUEST);
         LASSERTF(PTL_RPC_MSG_ERR == 4712, " found %lld\n",
@@ -91,7 +125,9 @@ void lustre_assert_wire_constants(void)
                  (long long)OST_QUOTACHECK);
         LASSERTF(OST_QUOTACTL == 19, " found %lld\n",
                  (long long)OST_QUOTACTL);
-        LASSERTF(OST_LAST_OPC == 20, " found %lld\n",
+        LASSERTF(OST_QUOTA_ADJUST_QUNIT == 20, " found %lld\n",
+                 (long long)OST_QUOTA_ADJUST_QUNIT);
+        LASSERTF(OST_LAST_OPC == 21, " found %lld\n",
                  (long long)OST_LAST_OPC);
         LASSERTF(OBD_OBJECT_EOF == 0xffffffffffffffffULL," found %lld\n",
                  (long long)OBD_OBJECT_EOF);
@@ -127,7 +163,17 @@ void lustre_assert_wire_constants(void)
                  (long long)MDS_QUOTACHECK);
         LASSERTF(MDS_QUOTACTL == 48, " found %lld\n",
                  (long long)MDS_QUOTACTL);
-        LASSERTF(MDS_LAST_OPC == 53, " found %lld\n",
+        LASSERTF(MDS_GETXATTR == 49, " found %lld\n",
+                 (long long)MDS_GETXATTR);
+        LASSERTF(MDS_SETXATTR == 50, " found %lld\n",
+                 (long long)MDS_SETXATTR);
+        LASSERTF(MDS_WRITEPAGE == 51, " found %lld\n",
+                 (long long)MDS_WRITEPAGE);
+        LASSERTF(MDS_IS_SUBDIR == 52, " found %lld\n",
+                 (long long)MDS_IS_SUBDIR);
+        LASSERTF(MDS_GET_INFO == 53, " found %lld\n",
+                 (long long)MDS_GET_INFO);
+        LASSERTF(MDS_LAST_OPC == 54, " found %lld\n",
                  (long long)MDS_LAST_OPC);
         LASSERTF(REINT_SETATTR == 1, " found %lld\n",
                  (long long)REINT_SETATTR);
@@ -141,7 +187,7 @@ void lustre_assert_wire_constants(void)
                  (long long)REINT_RENAME);
         LASSERTF(REINT_OPEN == 6, " found %lld\n",
                  (long long)REINT_OPEN);
-        LASSERTF(REINT_MAX == 7, " found %lld\n",
+        LASSERTF(REINT_MAX == 8, " found %lld\n",
                  (long long)REINT_MAX);
         LASSERTF(MGS_CONNECT == 250, " found %lld\n",
                  (long long)MGS_CONNECT);
@@ -183,7 +229,9 @@ void lustre_assert_wire_constants(void)
                  (long long)LDLM_CP_CALLBACK);
         LASSERTF(LDLM_GL_CALLBACK == 106, " found %lld\n",
                  (long long)LDLM_GL_CALLBACK);
-        LASSERTF(LDLM_LAST_OPC == 107, " found %lld\n",
+        LASSERTF(LDLM_SET_INFO == 107, " found %lld\n",
+                 (long long)LDLM_SET_INFO);
+        LASSERTF(LDLM_LAST_OPC == 108, " found %lld\n",
                  (long long)LDLM_LAST_OPC);
         LASSERTF(LCK_EX == 1, " found %lld\n",
                  (long long)LCK_EX);
@@ -199,8 +247,10 @@ void lustre_assert_wire_constants(void)
                  (long long)LCK_NL);
         LASSERTF(LCK_GROUP == 64, " found %lld\n",
                  (long long)LCK_GROUP);
-        LASSERTF(LCK_MAXMODE == 65, " found %lld\n",
+        LASSERTF(LCK_MAXMODE == 129, " found %lld\n",
                  (long long)LCK_MAXMODE);
+        LASSERTF(LCK_MODE_NUM == 8, " found %lld\n",
+                 (long long)LCK_MODE_NUM);
         CLASSERT(LDLM_PLAIN == 10);
         CLASSERT(LDLM_EXTENT == 11);
         CLASSERT(LDLM_FLOCK == 12);
@@ -243,62 +293,6 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct lustre_handle *)0)->cookie) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct lustre_handle *)0)->cookie));
 
-        /* Checks for struct lustre_msg_v1 */
-        LASSERTF((int)sizeof(struct lustre_msg_v1) == 64, " found %lld\n",
-                 (long long)(int)sizeof(struct lustre_msg_v1));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_handle) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_handle));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_handle) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_handle));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_magic) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_magic));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_magic) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_magic));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_type) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_type));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_type) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_type));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_version) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_version));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_version) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_version));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_opc) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_opc));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_opc) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_opc));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_last_xid) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_last_xid));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_last_xid) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_last_xid));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_last_committed) == 32, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_last_committed));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_last_committed) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_last_committed));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_transno) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_transno));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_transno) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_transno));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_status) == 48, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_status));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_status) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_status));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_flags) == 52, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_flags));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_flags) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_flags));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_conn_cnt) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_conn_cnt));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_conn_cnt) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_conn_cnt));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_bufcount) == 60, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_bufcount));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_bufcount) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_bufcount));
-        LASSERTF((int)offsetof(struct lustre_msg_v1, lm_buflens[0]) == 64, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v1, lm_buflens[0]));
-        LASSERTF((int)sizeof(((struct lustre_msg_v1 *)0)->lm_buflens[0]) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v1 *)0)->lm_buflens[0]));
-
         /* Checks for struct lustre_msg_v2 */
         LASSERTF((int)sizeof(struct lustre_msg_v2) == 32, " found %lld\n",
                  (long long)(int)sizeof(struct lustre_msg_v2));
@@ -318,14 +312,14 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct lustre_msg_v2, lm_repsize));
         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_repsize) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_repsize));
-        LASSERTF((int)offsetof(struct lustre_msg_v2, lm_timeout) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v2, lm_timeout));
-        LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_timeout) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_timeout));
-        LASSERTF((int)offsetof(struct lustre_msg_v2, lm_padding_1) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct lustre_msg_v2, lm_padding_1));
-        LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_1) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_1));
+        LASSERTF((int)offsetof(struct lustre_msg_v2, lm_cksum) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct lustre_msg_v2, lm_cksum));
+        LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_cksum) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_cksum));
+        LASSERTF((int)offsetof(struct lustre_msg_v2, lm_flags) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct lustre_msg_v2, lm_flags));
+        LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_flags));
         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_padding_2) == 24, " found %lld\n",
                  (long long)(int)offsetof(struct lustre_msg_v2, lm_padding_2));
         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_2) == 4, " found %lld\n",
@@ -338,10 +332,9 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct lustre_msg_v2, lm_buflens[0]));
         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_buflens[0]) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_buflens[0]));
-        LASSERT(offsetof(struct lustre_msg_v1, lm_magic) == offsetof(struct lustre_msg_v2, lm_magic));
 
         /* Checks for struct ptlrpc_body */
-        LASSERTF((int)sizeof(struct ptlrpc_body) == 88, " found %lld\n",
+        LASSERTF((int)sizeof(struct ptlrpc_body) == 152, " found %lld\n",
                  (long long)(int)sizeof(struct ptlrpc_body));
         LASSERTF((int)offsetof(struct ptlrpc_body, pb_handle) == 0, " found %lld\n",
                  (long long)(int)offsetof(struct ptlrpc_body, pb_handle));
@@ -391,14 +384,14 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct ptlrpc_body, pb_conn_cnt));
         LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_conn_cnt) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_conn_cnt));
-        LASSERTF((int)offsetof(struct ptlrpc_body, pb_padding_1) == 68, " found %lld\n",
-                 (long long)(int)offsetof(struct ptlrpc_body, pb_padding_1));
-        LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_padding_1) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_padding_1));
-        LASSERTF((int)offsetof(struct ptlrpc_body, pb_padding_2) == 72, " found %lld\n",
-                 (long long)(int)offsetof(struct ptlrpc_body, pb_padding_2));
-        LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_padding_2) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_padding_2));
+        LASSERTF((int)offsetof(struct ptlrpc_body, pb_timeout) == 68, " found %lld\n",
+                 (long long)(int)offsetof(struct ptlrpc_body, pb_timeout));
+        LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_timeout) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_timeout));
+        LASSERTF((int)offsetof(struct ptlrpc_body, pb_service_time) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct ptlrpc_body, pb_service_time));
+        LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_service_time) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_service_time));
         LASSERTF((int)offsetof(struct ptlrpc_body, pb_slv) == 80, " found %lld\n",
                  (long long)(int)offsetof(struct ptlrpc_body, pb_slv));
         LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_slv) == 8, " found %lld\n",
@@ -407,6 +400,11 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct ptlrpc_body, pb_limit));
         LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_limit) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_limit));
+        CLASSERT(PTLRPC_NUM_VERSIONS == 4);
+        LASSERTF((int)offsetof(struct ptlrpc_body, pb_pre_versions[4]) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct ptlrpc_body, pb_pre_versions[4]));
+        LASSERTF((int)sizeof(((struct ptlrpc_body *)0)->pb_pre_versions[4]) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ptlrpc_body *)0)->pb_pre_versions[4]));
 
         /* Checks for struct obd_connect_data */
         LASSERTF((int)sizeof(struct obd_connect_data) == 72, " found %lld\n",
@@ -451,43 +449,47 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct obd_connect_data, ocd_group));
         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_group) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_group));
-        LASSERTF((int)offsetof(struct obd_connect_data, padding1) == 52, " found %lld\n",
+        LASSERTF((int)offsetof(struct obd_connect_data, ocd_cksum_types) == 52, " found %lld\n",
+                 (long long)(int)offsetof(struct obd_connect_data, ocd_cksum_types));
+        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_cksum_types) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_cksum_types));
+        LASSERTF((int)offsetof(struct obd_connect_data, padding1) == 56, " found %lld\n",
                  (long long)(int)offsetof(struct obd_connect_data, padding1));
-        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding1) == 4, " found %lld\n",
+        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding1) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding1));
-        LASSERTF((int)offsetof(struct obd_connect_data, padding2) == 56, " found %lld\n",
+        LASSERTF((int)offsetof(struct obd_connect_data, padding2) == 64, " found %lld\n",
                  (long long)(int)offsetof(struct obd_connect_data, padding2));
         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding2) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding2));
-        LASSERTF((int)offsetof(struct obd_connect_data, padding3) == 64, " found %lld\n",
-                 (long long)(int)offsetof(struct obd_connect_data, padding3));
-        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding3) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct obd_connect_data *)0)->padding3));
-        CLASSERT(OBD_CONNECT_RDONLY == 0x00000001ULL);
-        CLASSERT(OBD_CONNECT_INDEX == 0x00000002ULL);
-        CLASSERT(OBD_CONNECT_GRANT == 0x00000008ULL);
-        CLASSERT(OBD_CONNECT_SRVLOCK == 0x00000010ULL);
-        CLASSERT(OBD_CONNECT_VERSION == 0x00000020ULL);
-        CLASSERT(OBD_CONNECT_REQPORTAL == 0x00000040ULL);
-        CLASSERT(OBD_CONNECT_ACL == 0x00000080ULL);
-        CLASSERT(OBD_CONNECT_XATTR == 0x00000100ULL);
-        CLASSERT(OBD_CONNECT_TRUNCLOCK == 0x00000400ULL);
-        CLASSERT(OBD_CONNECT_IBITS == 0x00001000ULL);
-        CLASSERT(OBD_CONNECT_JOIN == 0x00002000ULL);
-        CLASSERT(OBD_CONNECT_ATTRFID == 0x00004000ULL);
-        CLASSERT(OBD_CONNECT_NODEVOH == 0x00008000ULL);
-        CLASSERT(OBD_CONNECT_LCL_CLIENT == 0x00010000ULL);
-        CLASSERT(OBD_CONNECT_RMT_CLIENT == 0x00020000ULL);
-        CLASSERT(OBD_CONNECT_BRW_SIZE == 0x00040000ULL);
-        CLASSERT(OBD_CONNECT_QUOTA64 == 0x00080000ULL);
-        CLASSERT(OBD_CONNECT_MDS_CAPA == 0x00100000ULL);
-        CLASSERT(OBD_CONNECT_OSS_CAPA == 0x00200000ULL);
-        CLASSERT(OBD_CONNECT_CANCELSET == 0x00400000ULL);
-        CLASSERT(OBD_CONNECT_SOM == 0x00800000ULL);
-        CLASSERT(OBD_CONNECT_AT == 0x01000000ULL);
-        CLASSERT(OBD_CONNECT_LRU_RESIZE == 0x02000000ULL);
-        CLASSERT(OBD_CONNECT_MDS_MDS == 0x04000000ULL);
-        CLASSERT(OBD_CONNECT_REAL == 0x08000000ULL);
+        CLASSERT(OBD_CONNECT_RDONLY == 0x1ULL);
+        CLASSERT(OBD_CONNECT_INDEX == 0x2ULL);
+        CLASSERT(OBD_CONNECT_GRANT == 0x8ULL);
+        CLASSERT(OBD_CONNECT_SRVLOCK == 0x10ULL);
+        CLASSERT(OBD_CONNECT_VERSION == 0x20ULL);
+        CLASSERT(OBD_CONNECT_REQPORTAL == 0x40ULL);
+        CLASSERT(OBD_CONNECT_ACL == 0x80ULL);
+        CLASSERT(OBD_CONNECT_XATTR == 0x100ULL);
+        CLASSERT(OBD_CONNECT_REAL == 0x8000000ULL);
+        CLASSERT(OBD_CONNECT_CKSUM == 0x20000000ULL);
+        CLASSERT(OBD_CONNECT_TRUNCLOCK == 0x400ULL);
+        CLASSERT(OBD_CONNECT_IBITS == 0x1000ULL);
+        CLASSERT(OBD_CONNECT_JOIN == 0x2000ULL);
+        CLASSERT(OBD_CONNECT_ATTRFID == 0x4000ULL);
+        CLASSERT(OBD_CONNECT_NODEVOH == 0x8000ULL);
+        CLASSERT(OBD_CONNECT_RMT_CLIENT == 0x10000ULL);
+        CLASSERT(OBD_CONNECT_RMT_CLIENT_FORCE == 0x20000ULL);
+        CLASSERT(OBD_CONNECT_BRW_SIZE == 0x40000ULL);
+        CLASSERT(OBD_CONNECT_QUOTA64 == 0x80000ULL);
+        CLASSERT(OBD_CONNECT_MDS_CAPA == 0x100000ULL);
+        CLASSERT(OBD_CONNECT_OSS_CAPA == 0x200000ULL);
+        CLASSERT(OBD_CONNECT_MDS_MDS == 0x4000000ULL);
+        CLASSERT(OBD_CONNECT_SOM == 0x800000ULL);
+        CLASSERT(OBD_CONNECT_AT == 0x1000000ULL);
+        CLASSERT(OBD_CONNECT_CANCELSET == 0x400000ULL);
+        CLASSERT(OBD_CONNECT_LRU_RESIZE == 0x2000000ULL);
+        CLASSERT(OBD_CONNECT_VBR == 0x80000000ULL);
+        CLASSERT(OBD_CONNECT_SKIP_ORPHAN == 0x400000000ULL);
+        CLASSERT(OBD_CONNECT_FULL20 == 0x1000000000ULL);
 
         /* Checks for struct obdo */
         LASSERTF((int)sizeof(struct obdo) == 208, " found %lld\n",
@@ -496,18 +498,18 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct obdo, o_valid));
         LASSERTF((int)sizeof(((struct obdo *)0)->o_valid) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct obdo *)0)->o_valid));
-        LASSERTF((int)offsetof(struct obdo, o_id) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_id));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_id) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_id));
-        LASSERTF((int)offsetof(struct obdo, o_gr) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_gr));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_gr) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_gr));
-        LASSERTF((int)offsetof(struct obdo, o_fid) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_fid));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_fid) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_fid));
+        LASSERTF((int)offsetof(struct obdo, o_oi.oi_id) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_oi.oi_id));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_oi.oi_id) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_oi.oi_id));
+        LASSERTF((int)offsetof(struct obdo, o_oi.oi_seq) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_oi.oi_seq));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_oi.oi_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_oi.oi_seq));
+        LASSERTF((int)offsetof(struct obdo, o_parent_seq) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_parent_seq));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_parent_seq));
         LASSERTF((int)offsetof(struct obdo, o_size) == 32, " found %lld\n",
                  (long long)(int)offsetof(struct obdo, o_size));
         LASSERTF((int)sizeof(((struct obdo *)0)->o_size) == 8, " found %lld\n",
@@ -556,36 +558,58 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct obdo, o_nlink));
         LASSERTF((int)sizeof(((struct obdo *)0)->o_nlink) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct obdo *)0)->o_nlink));
-        LASSERTF((int)offsetof(struct obdo, o_generation) == 104, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_generation));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_generation) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_generation));
+        LASSERTF((int)offsetof(struct obdo, o_parent_oid) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_parent_oid));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_oid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_parent_oid));
         LASSERTF((int)offsetof(struct obdo, o_misc) == 108, " found %lld\n",
                  (long long)(int)offsetof(struct obdo, o_misc));
         LASSERTF((int)sizeof(((struct obdo *)0)->o_misc) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct obdo *)0)->o_misc));
-        LASSERTF((int)offsetof(struct obdo, o_easize) == 112, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_easize));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_easize) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_easize));
-        LASSERTF((int)offsetof(struct obdo, o_mds) == 116, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_mds));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_mds) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_mds));
+        LASSERTF((int)offsetof(struct obdo, o_ioepoch) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_ioepoch));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_ioepoch) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_ioepoch));
         LASSERTF((int)offsetof(struct obdo, o_stripe_idx) == 120, " found %lld\n",
                  (long long)(int)offsetof(struct obdo, o_stripe_idx));
         LASSERTF((int)sizeof(((struct obdo *)0)->o_stripe_idx) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct obdo *)0)->o_stripe_idx));
-        LASSERTF((int)offsetof(struct obdo, o_padding_1) == 124, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_padding_1));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_1) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_padding_1));
-        LASSERTF((int)offsetof(struct obdo, o_inline) == 128, " found %lld\n",
-                 (long long)(int)offsetof(struct obdo, o_inline));
-        LASSERTF((int)sizeof(((struct obdo *)0)->o_inline) == 80, " found %lld\n",
-                 (long long)(int)sizeof(((struct obdo *)0)->o_inline));
-        LASSERTF(OBD_INLINESZ == 80, " found %lld\n",
-                 (long long)OBD_INLINESZ);
+        LASSERTF((int)offsetof(struct obdo, o_parent_ver) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_parent_ver));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_ver) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_parent_ver));
+        LASSERTF((int)offsetof(struct obdo, o_handle) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_handle));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_handle) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_handle));
+        LASSERTF((int)offsetof(struct obdo, o_lcookie) == 136, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_lcookie));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_lcookie) == 32, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_lcookie));
+        LASSERTF((int)offsetof(struct obdo, o_uid_h) == 168, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_uid_h));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_uid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_uid_h));
+        LASSERTF((int)offsetof(struct obdo, o_gid_h) == 172, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_gid_h));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_gid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_gid_h));
+        LASSERTF((int)offsetof(struct obdo, o_padding_3) == 176, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_padding_3));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_3) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_padding_3));
+        LASSERTF((int)offsetof(struct obdo, o_padding_4) == 184, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_padding_4));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_4) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_padding_4));
+        LASSERTF((int)offsetof(struct obdo, o_padding_5) == 192, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_padding_5));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_5) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_padding_5));
+        LASSERTF((int)offsetof(struct obdo, o_padding_6) == 200, " found %lld\n",
+                 (long long)(int)offsetof(struct obdo, o_padding_6));
+        LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_6) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obdo *)0)->o_padding_6));
         CLASSERT(OBD_MD_FLID == (0x00000001ULL));
         CLASSERT(OBD_MD_FLATIME == (0x00000002ULL));
         CLASSERT(OBD_MD_FLMTIME == (0x00000004ULL));
@@ -600,7 +624,6 @@ void lustre_assert_wire_constants(void)
         CLASSERT(OBD_MD_FLFLAGS == (0x00000800ULL));
         CLASSERT(OBD_MD_FLNLINK == (0x00002000ULL));
         CLASSERT(OBD_MD_FLGENER == (0x00004000ULL));
-        CLASSERT(OBD_MD_FLINLINE == (0x00008000ULL));
         CLASSERT(OBD_MD_FLRDEV == (0x00010000ULL));
         CLASSERT(OBD_MD_FLEASIZE == (0x00020000ULL));
         CLASSERT(OBD_MD_LINKNAME == (0x00040000ULL));
@@ -622,15 +645,23 @@ void lustre_assert_wire_constants(void)
         CLASSERT(OBD_MD_FLXATTRLS == (0x0000002000000000ULL));
         CLASSERT(OBD_MD_FLXATTRRM == (0x0000004000000000ULL));
         CLASSERT(OBD_MD_FLACL == (0x0000008000000000ULL));
-        CLASSERT(OBD_FL_INLINEDATA == (0x00000001));
-        CLASSERT(OBD_FL_OBDMDEXISTS == (0x00000002));
-        CLASSERT(OBD_FL_DELORPHAN == (0x00000004));
-        CLASSERT(OBD_FL_NORPC == (0x00000008));
-        CLASSERT(OBD_FL_IDONLY == (0x00000010));
-        CLASSERT(OBD_FL_RECREATE_OBJS == (0x00000020));
-        CLASSERT(OBD_FL_DEBUG_CHECK == (0x00000040));
-        CLASSERT(OBD_FL_NO_USRQUOTA == (0x00000100));
-        CLASSERT(OBD_FL_NO_GRPQUOTA == (0x00000200));
+        CLASSERT(OBD_FL_INLINEDATA == 1);
+        CLASSERT(OBD_FL_OBDMDEXISTS == 2);
+        CLASSERT(OBD_FL_DELORPHAN == 4);
+        CLASSERT(OBD_FL_NORPC == 8);
+        CLASSERT(OBD_FL_IDONLY == 16);
+        CLASSERT(OBD_FL_RECREATE_OBJS == 32);
+        CLASSERT(OBD_FL_DEBUG_CHECK == 64);
+        CLASSERT(OBD_FL_NO_USRQUOTA == 256);
+        CLASSERT(OBD_FL_NO_GRPQUOTA == 512);
+        CLASSERT(OBD_FL_SRVLOCK == 2048);
+        CLASSERT(OBD_FL_CKSUM_CRC32 == 4096);
+        CLASSERT(OBD_FL_CKSUM_ADLER == 8192);
+        CLASSERT(OBD_FL_SHRINK_GRANT == 131072);
+        CLASSERT(OBD_FL_MMAP == (0x00040000));
+        CLASSERT(OBD_FL_RECOV_RESEND == (0x00080000));
+        CLASSERT(OBD_CKSUM_CRC32 == 1);
+        CLASSERT(OBD_CKSUM_ADLER == 2);
 
         /* Checks for struct lov_mds_md_v1 */
         LASSERTF((int)sizeof(struct lov_mds_md_v1) == 32, " found %lld\n",
@@ -647,10 +678,10 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_object_id));
         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_id) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_id));
-        LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_object_gr) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct lov_mds_md_v1, lmm_object_gr));
-        LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_gr) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_gr));
+        LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_object_seq) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v1, lmm_object_seq));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_object_seq));
         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_stripe_size) == 24, " found %lld\n",
                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_stripe_size));
         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_stripe_size) == 4, " found %lld\n",
@@ -671,10 +702,10 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct lov_ost_data_v1, l_object_id));
         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_id) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_id));
-        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_object_gr) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct lov_ost_data_v1, l_object_gr));
-        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_gr) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_gr));
+        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_object_seq) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_ost_data_v1, l_object_seq));
+        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_seq));
         LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_gen) == 16, " found %lld\n",
                  (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_gen));
         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_gen) == 4, " found %lld\n",
@@ -684,27 +715,71 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx));
         CLASSERT(LOV_MAGIC_V1 == 0x0BD10BD0);
-        CLASSERT(LOV_MAGIC_JOIN == 0x0BD20BD0);
         LASSERTF(LOV_PATTERN_RAID0 == 1, " found %lld\n",
                  (long long)LOV_PATTERN_RAID0);
         LASSERTF(LOV_PATTERN_RAID1 == 2, " found %lld\n",
                  (long long)LOV_PATTERN_RAID1);
 
-        /* Checks for struct lov_mds_md_join */
-        LASSERTF((int)sizeof(struct lov_mds_md_join) == 56, " found %lld\n",
-                 (long long)(int)sizeof(struct lov_mds_md_join));
-        LASSERTF((int)offsetof(struct lov_mds_md_join, lmmj_md) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct lov_mds_md_join, lmmj_md));
-        LASSERTF((int)sizeof(((struct lov_mds_md_join *)0)->lmmj_md) == 32, " found %lld\n",
-                 (long long)(int)sizeof(((struct lov_mds_md_join *)0)->lmmj_md));
-        LASSERTF((int)offsetof(struct lov_mds_md_join, lmmj_array_id) == 32, " found %lld\n",
-                 (long long)(int)offsetof(struct lov_mds_md_join, lmmj_array_id));
-        LASSERTF((int)sizeof(((struct lov_mds_md_join *)0)->lmmj_array_id) == 20, " found %lld\n",
-                 (long long)(int)sizeof(((struct lov_mds_md_join *)0)->lmmj_array_id));
-        LASSERTF((int)offsetof(struct lov_mds_md_join, lmmj_extent_count) == 52, " found %lld\n",
-                 (long long)(int)offsetof(struct lov_mds_md_join, lmmj_extent_count));
-        LASSERTF((int)sizeof(((struct lov_mds_md_join *)0)->lmmj_extent_count) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct lov_mds_md_join *)0)->lmmj_extent_count));
+        /* Checks for struct lov_mds_md_v3 */
+        LASSERTF((int)sizeof(struct lov_mds_md_v3) == 48, " found %lld\n",
+                 (long long)(int)sizeof(struct lov_mds_md_v3));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_magic) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_magic));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_magic) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_magic));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pattern) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pattern));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pattern) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pattern));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_object_id) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_object_id));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_object_id) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_object_id));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_object_seq) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_object_seq));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_object_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_object_seq));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_stripe_size) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_stripe_size));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_size) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_size));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_stripe_count) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_stripe_count));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_count) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_count));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pool_name) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pool_name));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name));
+        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_objects) == 48, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_objects));
+        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_objects) == 0, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_objects));
+
+        /* Checks for struct lov_ost_data_v1 */
+        LASSERTF((int)sizeof(struct lov_ost_data_v1) == 24, " found %lld\n",
+                 (long long)(int)sizeof(struct lov_ost_data_v1));
+        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_object_id) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_ost_data_v1, l_object_id));
+        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_id) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_id));
+        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_object_seq) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_ost_data_v1, l_object_seq));
+        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_object_seq));
+        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_gen) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_gen));
+        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_gen) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_gen));
+        LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_idx) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_idx));
+        LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx));
+        CLASSERT(LOV_MAGIC_V3 == 0x0BD30BD0);
+        LASSERTF(LOV_PATTERN_RAID0 == 1, " found %lld\n",
+                 (long long)LOV_PATTERN_RAID0);
+        LASSERTF(LOV_PATTERN_RAID1 == 2, " found %lld\n",
+                 (long long)LOV_PATTERN_RAID1);
 
         /* Checks for struct obd_statfs */
         LASSERTF((int)sizeof(struct obd_statfs) == 144, " found %lld\n",
@@ -789,10 +864,10 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct obd_ioobj, ioo_id));
         LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_id) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_id));
-        LASSERTF((int)offsetof(struct obd_ioobj, ioo_gr) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct obd_ioobj, ioo_gr));
-        LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_gr) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_gr));
+        LASSERTF((int)offsetof(struct obd_ioobj, ioo_seq) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct obd_ioobj, ioo_seq));
+        LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_seq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_seq));
         LASSERTF((int)offsetof(struct obd_ioobj, ioo_type) == 16, " found %lld\n",
                  (long long)(int)offsetof(struct obd_ioobj, ioo_type));
         LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_type) == 4, " found %lld\n",
@@ -1097,270 +1172,497 @@ void lustre_assert_wire_constants(void)
         CLASSERT(MDS_APPEND_FL == 0x00000020);
         CLASSERT(MDS_NOATIME_FL == 0x00000080);
         CLASSERT(MDS_DIRSYNC_FL == 0x00010000);
-        CLASSERT(MDS_BFLAG_EXT_FLAGS == 0x80000000);
         CLASSERT(MDS_INODELOCK_LOOKUP == 0x000001);
         CLASSERT(MDS_INODELOCK_UPDATE == 0x000002);
         CLASSERT(MDS_INODELOCK_OPEN == 0x000004);
 
-        /* Checks for struct mds_rec_setattr */
-        LASSERTF((int)sizeof(struct mds_rec_setattr) == 96, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_setattr));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_opcode) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_opcode));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_opcode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_opcode));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_fsuid) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_fsuid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_fsuid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_fsuid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_fsgid) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_fsgid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_fsgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_fsgid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_cap) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_cap));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_cap) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_cap));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_suppgid) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_suppgid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_suppgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_suppgid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_mode) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_mode));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_mode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_mode));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_fid) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_fid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_fid) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_fid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_valid) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_valid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_valid) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_valid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_size) == 48, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_size));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_size) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_size));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_mtime) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_mtime));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_mtime) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_mtime));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_atime) == 64, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_atime));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_atime) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_atime));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_ctime) == 72, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_ctime));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_ctime) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_ctime));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_uid) == 80, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_uid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_uid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_uid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_gid) == 84, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_gid));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_gid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_gid));
-        LASSERTF((int)offsetof(struct mds_rec_setattr, sa_attr_flags) == 88, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_setattr, sa_attr_flags));
-        LASSERTF((int)sizeof(((struct mds_rec_setattr *)0)->sa_attr_flags) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_setattr *)0)->sa_attr_flags));
-        CLASSERT(MDS_ATTR_MODE == 1);
-        CLASSERT(MDS_ATTR_UID == 2);
-        CLASSERT(MDS_ATTR_GID == 4);
-        CLASSERT(MDS_ATTR_SIZE == 8);
-        CLASSERT(MDS_ATTR_ATIME == 16);
-        CLASSERT(MDS_ATTR_MTIME == 32);
-        CLASSERT(MDS_ATTR_CTIME == 64);
-        CLASSERT(MDS_ATTR_ATIME_SET == 128);
-        CLASSERT(MDS_ATTR_MTIME_SET == 256);
-        CLASSERT(MDS_ATTR_FORCE == 512);
-        CLASSERT(MDS_ATTR_ATTR_FLAG == 1024);
-        CLASSERT(MDS_ATTR_KILL_SUID == 2048);
-        CLASSERT(MDS_ATTR_KILL_SGID == 4096);
-        CLASSERT(MDS_ATTR_CTIME_SET == 8192);
-        CLASSERT(MDS_ATTR_FROM_OPEN == 16384);
-        CLASSERT(MDS_ATTR_BLOCKS == 32768);
-
-        /* Checks for struct mds_rec_create */
-        LASSERTF((int)sizeof(struct mds_rec_create) == 96, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_create));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_opcode) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_opcode));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_opcode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_opcode));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_fsuid) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_fsuid));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_fsuid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_fsuid));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_fsgid) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_fsgid));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_fsgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_fsgid));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_cap) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_cap));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_cap) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_cap));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_flags) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_flags));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_flags) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_flags));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_mode) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_mode));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_mode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_mode));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_fid) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_fid));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_fid) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_fid));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_replayfid) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_replayfid));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_replayfid) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_replayfid));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_time) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_time));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_time) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_time));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_rdev) == 64, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_rdev));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_rdev) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_rdev));
-        LASSERTF((int)offsetof(struct mds_rec_create, cr_suppgid) == 72, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_create, cr_suppgid));
-        LASSERTF((int)sizeof(((struct mds_rec_create *)0)->cr_suppgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_create *)0)->cr_suppgid));
-
-        /* Checks for struct mds_rec_link */
-        LASSERTF((int)sizeof(struct mds_rec_link) == 80, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_link));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_opcode) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_opcode));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_opcode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_opcode));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_fsuid) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_fsuid));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_fsuid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_fsuid));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_fsgid) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_fsgid));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_fsgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_fsgid));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_cap) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_cap));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_cap) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_cap));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_suppgid1) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_suppgid1));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_suppgid1) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_suppgid1));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_suppgid2) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_suppgid2));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_suppgid2) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_suppgid2));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_fid1) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_fid1));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_fid1) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_fid1));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_fid2) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_fid2));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_fid2) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_fid2));
-        LASSERTF((int)offsetof(struct mds_rec_link, lk_time) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_link, lk_time));
-        LASSERTF((int)sizeof(((struct mds_rec_link *)0)->lk_time) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_link *)0)->lk_time));
-
-        /* Checks for struct mds_rec_unlink */
-        LASSERTF((int)sizeof(struct mds_rec_unlink) == 80, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_unlink));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_opcode) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_opcode));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_opcode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_opcode));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_fsuid) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_fsuid));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_fsuid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_fsuid));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_fsgid) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_fsgid));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_fsgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_fsgid));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_cap) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_cap));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_cap) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_cap));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_suppgid) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_suppgid));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_suppgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_suppgid));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_mode) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_mode));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_mode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_mode));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_fid1) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_fid1));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_fid1) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_fid1));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_fid2) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_fid2));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_fid2) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_fid2));
-        LASSERTF((int)offsetof(struct mds_rec_unlink, ul_time) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_unlink, ul_time));
-        LASSERTF((int)sizeof(((struct mds_rec_unlink *)0)->ul_time) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_unlink *)0)->ul_time));
-
-        /* Checks for struct mds_rec_rename */
-        LASSERTF((int)sizeof(struct mds_rec_rename) == 80, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_rename));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_opcode) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_opcode));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_opcode) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_opcode));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_fsuid) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_fsuid));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_fsuid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_fsuid));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_fsgid) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_fsgid));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_fsgid) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_fsgid));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_cap) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_cap));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_cap) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_cap));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_suppgid1) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_suppgid1));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_suppgid1) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_suppgid1));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_suppgid2) == 20, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_suppgid2));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_suppgid2) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_suppgid2));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_fid1) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_fid1));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_fid1) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_fid1));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_fid2) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_fid2));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_fid2) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_fid2));
-        LASSERTF((int)offsetof(struct mds_rec_rename, rn_time) == 56, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_rename, rn_time));
-        LASSERTF((int)sizeof(((struct mds_rec_rename *)0)->rn_time) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_rename *)0)->rn_time));
-
-        /* Checks for struct mds_rec_join */
-        LASSERTF((int)sizeof(struct mds_rec_join) == 24, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_rec_join));
-        LASSERTF((int)offsetof(struct mds_rec_join, jr_fid) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_join, jr_fid));
-        LASSERTF((int)sizeof(((struct mds_rec_join *)0)->jr_fid) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_join *)0)->jr_fid));
-        LASSERTF((int)offsetof(struct mds_rec_join, jr_headsize) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_rec_join, jr_headsize));
-        LASSERTF((int)sizeof(((struct mds_rec_join *)0)->jr_headsize) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_rec_join *)0)->jr_headsize));
+        /* 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));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_opcode) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_opcode));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_opcode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_opcode));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_cap) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_cap));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_cap) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_cap));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsuid) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsuid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsuid_h) == 12, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsuid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsgid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsgid_h) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_suppgid) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_suppgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_suppgid_h) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_suppgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_1) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_1));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_1_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_1_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1_h));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fid) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_fid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fid) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_valid) == 56, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_valid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_valid) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_valid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_uid) == 64, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_uid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_uid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_uid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_gid) == 68, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_gid));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_gid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_gid));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_size) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_size));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_size) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_size));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_blocks) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_blocks));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_blocks) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_blocks));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_mtime) == 88, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_mtime));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_mtime) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_mtime));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_atime) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_atime));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_atime) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_atime));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_ctime) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_ctime));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_ctime) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_ctime));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_attr_flags) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_attr_flags));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_attr_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_attr_flags));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_mode) == 116, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_mode));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_mode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_mode));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_2) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_2));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_2));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_3) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_3));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_3) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_3));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_4) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_4));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_4) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_4));
+        LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_5) == 132, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_5));
+        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_5) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_5));
+
+        /* Checks for struct mdt_rec_create */
+        LASSERTF((int)sizeof(struct mdt_rec_create) == 136, " found %lld\n",
+                 (long long)(int)sizeof(struct mdt_rec_create));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_opcode) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_opcode));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_opcode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_opcode));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_cap) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_cap));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_cap) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_cap));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsuid) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fsuid));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsuid_h) == 12, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fsuid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsgid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fsgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsgid_h) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fsgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid1) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid1_h) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid1_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1_h));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid2) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid2_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid2_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2_h));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fid1) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fid1) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fid1));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_fid2) == 56, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_fid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fid2) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fid2));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_old_handle) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_old_handle));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_old_handle) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_old_handle));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_time) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_time));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_time) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_time));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_rdev) == 88, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_rdev));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_rdev) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_rdev));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_ioepoch) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_ioepoch));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_ioepoch) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_ioepoch));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_padding_1) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_padding_1));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_padding_1) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_padding_1));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_mode) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_mode));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_mode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_mode));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_bias) == 116, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_bias));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_bias) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_bias));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_flags_l) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_flags_l));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_flags_l) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_flags_l));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_flags_h) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_flags_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_flags_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_flags_h));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_padding_3) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_padding_3));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_padding_3) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_padding_3));
+        LASSERTF((int)offsetof(struct mdt_rec_create, cr_padding_4) == 132, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_create, cr_padding_4));
+        LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_padding_4) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_padding_4));
+
+        /* Checks for struct mdt_rec_link */
+        LASSERTF((int)sizeof(struct mdt_rec_link) == 136, " found %lld\n",
+                 (long long)(int)sizeof(struct mdt_rec_link));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_opcode) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_opcode));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_opcode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_opcode));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_cap) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_cap));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_cap) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_cap));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fsuid) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fsuid));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fsuid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fsuid));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fsuid_h) == 12, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fsuid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fsuid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fsuid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fsgid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fsgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fsgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fsgid));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fsgid_h) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fsgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fsgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fsgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_suppgid1) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_suppgid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid1));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_suppgid1_h) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_suppgid1_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid1_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid1_h));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_suppgid2) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_suppgid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid2));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_suppgid2_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_suppgid2_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid2_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_suppgid2_h));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fid1) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fid1) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fid1));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_fid2) == 56, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_fid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_fid2) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_fid2));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_time) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_time));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_time) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_time));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_1) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_1));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_1) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_1));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_2) == 88, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_2));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_2) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_2));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_3) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_3));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_3) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_3));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_4) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_4));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_4) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_4));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_bias) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_bias));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_bias) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_bias));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_5) == 116, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_5));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_5) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_5));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_6) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_6));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_6) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_6));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_7) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_7));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_7) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_7));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_8) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_8));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_8) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_8));
+        LASSERTF((int)offsetof(struct mdt_rec_link, lk_padding_9) == 132, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_link, lk_padding_9));
+        LASSERTF((int)sizeof(((struct mdt_rec_link *)0)->lk_padding_9) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_link *)0)->lk_padding_9));
+
+        /* Checks for struct mdt_rec_unlink */
+        LASSERTF((int)sizeof(struct mdt_rec_unlink) == 136, " found %lld\n",
+                 (long long)(int)sizeof(struct mdt_rec_unlink));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_opcode) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_opcode));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_opcode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_opcode));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_cap) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_cap));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_cap) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_cap));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fsuid) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fsuid));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsuid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsuid));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fsuid_h) == 12, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fsuid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsuid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsuid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fsgid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fsgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsgid));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fsgid_h) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fsgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fsgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_suppgid1) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_suppgid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid1));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_suppgid1_h) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_suppgid1_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid1_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid1_h));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_suppgid2) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_suppgid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid2));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_suppgid2_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_suppgid2_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid2_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_suppgid2_h));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fid1) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fid1) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fid1));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_fid2) == 56, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_fid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_fid2) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_fid2));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_time) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_time));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_time) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_time));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_2) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_2));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_2) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_2));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_3) == 88, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_3));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_3) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_3));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_4) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_4));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_4) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_4));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_5) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_5));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_5) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_5));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_bias) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_bias));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_bias) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_bias));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_mode) == 116, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_mode));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_mode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_mode));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_6) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_6));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_6) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_6));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_7) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_7));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_7) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_7));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_8) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_8));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_8) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_8));
+        LASSERTF((int)offsetof(struct mdt_rec_unlink, ul_padding_9) == 132, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_unlink, ul_padding_9));
+        LASSERTF((int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_9) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_unlink *)0)->ul_padding_9));
+
+        /* Checks for struct mdt_rec_rename */
+        LASSERTF((int)sizeof(struct mdt_rec_rename) == 136, " found %lld\n",
+                 (long long)(int)sizeof(struct mdt_rec_rename));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_opcode) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_opcode));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_opcode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_opcode));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_cap) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_cap));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_cap) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_cap));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fsuid) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fsuid));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fsuid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fsuid));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fsuid_h) == 12, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fsuid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fsuid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fsuid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fsgid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fsgid));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fsgid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fsgid));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fsgid_h) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fsgid_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fsgid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fsgid_h));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_suppgid1) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_suppgid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid1));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_suppgid1_h) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_suppgid1_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid1_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid1_h));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_suppgid2) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_suppgid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid2));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_suppgid2_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_suppgid2_h));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid2_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_suppgid2_h));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fid1) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fid1));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fid1) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fid1));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_fid2) == 56, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_fid2));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_fid2) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_fid2));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_time) == 72, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_time));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_time) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_time));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_1) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_1));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_1) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_1));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_2) == 88, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_2));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_2) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_2));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_3) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_3));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_3) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_3));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_4) == 104, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_4));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_4) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_4));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_bias) == 112, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_bias));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_bias) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_bias));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_mode) == 116, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_mode));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_mode) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_mode));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_5) == 120, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_5));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_5) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_5));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_6) == 124, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_6));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_6) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_6));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_7) == 128, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_7));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_7) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_7));
+        LASSERTF((int)offsetof(struct mdt_rec_rename, rn_padding_8) == 132, " found %lld\n",
+                 (long long)(int)offsetof(struct mdt_rec_rename, rn_padding_8));
+        LASSERTF((int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_8) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct mdt_rec_rename *)0)->rn_padding_8));
 
         /* Checks for struct lov_desc */
         LASSERTF((int)sizeof(struct lov_desc) == 88, " found %lld\n",
@@ -1574,6 +1876,38 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct ost_lvb *)0)->lvb_blocks) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct ost_lvb *)0)->lvb_blocks));
 
+        /* Checks for struct cfg_marker */
+        LASSERTF((int)sizeof(struct cfg_marker) == 160, " found %lld\n",
+                 (long long)(int)sizeof(struct cfg_marker));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_step) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_step));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_step) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_step));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_flags) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_flags));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_flags));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_vers) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_vers));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_vers) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_vers));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_createtime) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_createtime));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_createtime) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_createtime));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_canceltime) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_canceltime));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_canceltime) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_canceltime));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_tgtname) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_tgtname));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_tgtname) == 64, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_tgtname));
+        LASSERTF((int)offsetof(struct cfg_marker, cm_comment) == 96, " found %lld\n",
+                 (long long)(int)offsetof(struct cfg_marker, cm_comment));
+        LASSERTF((int)sizeof(((struct cfg_marker *)0)->cm_comment) == 64, " found %lld\n",
+                 (long long)(int)sizeof(((struct cfg_marker *)0)->cm_comment));
+
         /* Checks for struct llog_logid */
         LASSERTF((int)sizeof(struct llog_logid) == 20, " found %lld\n",
                  (long long)(int)sizeof(struct llog_logid));
@@ -1581,10 +1915,10 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct llog_logid, lgl_oid));
         LASSERTF((int)sizeof(((struct llog_logid *)0)->lgl_oid) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_logid *)0)->lgl_oid));
-        LASSERTF((int)offsetof(struct llog_logid, lgl_ogr) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_logid, lgl_ogr));
-        LASSERTF((int)sizeof(((struct llog_logid *)0)->lgl_ogr) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_logid *)0)->lgl_ogr));
+        LASSERTF((int)offsetof(struct llog_logid, lgl_oseq) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_logid, lgl_oseq));
+        LASSERTF((int)sizeof(((struct llog_logid *)0)->lgl_oseq) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_logid *)0)->lgl_oseq));
         LASSERTF((int)offsetof(struct llog_logid, lgl_ogen) == 16, " found %lld\n",
                  (long long)(int)offsetof(struct llog_logid, lgl_ogen));
         LASSERTF((int)sizeof(((struct llog_logid *)0)->lgl_ogen) == 4, " found %lld\n",
@@ -1703,14 +2037,18 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct llog_create_rec, lcr_oid));
         LASSERTF((int)sizeof(((struct llog_create_rec *)0)->lcr_oid) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_create_rec *)0)->lcr_oid));
-        LASSERTF((int)offsetof(struct llog_create_rec, lcr_ogen) == 40, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_create_rec, lcr_ogen));
-        LASSERTF((int)sizeof(((struct llog_create_rec *)0)->lcr_ogen) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_create_rec *)0)->lcr_ogen));
+        LASSERTF((int)offsetof(struct llog_create_rec, lcr_oseq) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_create_rec, lcr_oseq));
+        LASSERTF((int)sizeof(((struct llog_create_rec *)0)->lcr_oseq) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_create_rec *)0)->lcr_oseq));
         LASSERTF((int)offsetof(struct llog_create_rec, padding) == 44, " found %lld\n",
                  (long long)(int)offsetof(struct llog_create_rec, padding));
         LASSERTF((int)sizeof(((struct llog_create_rec *)0)->padding) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_create_rec *)0)->padding));
+        LASSERTF((int)offsetof(struct llog_create_rec, lcr_tail) == 48, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_create_rec, lcr_tail));
+        LASSERTF((int)sizeof(((struct llog_create_rec *)0)->lcr_tail) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_create_rec *)0)->lcr_tail));
 
         /* Checks for struct llog_orphan_rec */
         LASSERTF((int)sizeof(struct llog_orphan_rec) == 40, " found %lld\n",
@@ -1747,14 +2085,14 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct llog_unlink_rec, lur_oid));
         LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->lur_oid) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_unlink_rec *)0)->lur_oid));
-        LASSERTF((int)offsetof(struct llog_unlink_rec, lur_ogen) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_unlink_rec, lur_ogen));
-        LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->lur_ogen) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_unlink_rec *)0)->lur_ogen));
-        LASSERTF((int)offsetof(struct llog_unlink_rec, padding) == 28, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_unlink_rec, padding));
-        LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->padding) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_unlink_rec *)0)->padding));
+        LASSERTF((int)offsetof(struct llog_unlink_rec, lur_oseq) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_unlink_rec, lur_oseq));
+        LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->lur_oseq) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_unlink_rec *)0)->lur_oseq));
+        LASSERTF((int)offsetof(struct llog_unlink_rec, lur_count) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_unlink_rec, lur_count));
+        LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->lur_count) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_unlink_rec *)0)->lur_count));
         LASSERTF((int)offsetof(struct llog_unlink_rec, lur_tail) == 32, " found %lld\n",
                  (long long)(int)offsetof(struct llog_unlink_rec, lur_tail));
         LASSERTF((int)sizeof(((struct llog_unlink_rec *)0)->lur_tail) == 8, " found %lld\n",
@@ -1771,10 +2109,10 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct llog_setattr_rec, lsr_oid));
         LASSERTF((int)sizeof(((struct llog_setattr_rec *)0)->lsr_oid) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_setattr_rec *)0)->lsr_oid));
-        LASSERTF((int)offsetof(struct llog_setattr_rec, lsr_ogen) == 24, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_setattr_rec, lsr_ogen));
-        LASSERTF((int)sizeof(((struct llog_setattr_rec *)0)->lsr_ogen) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_setattr_rec *)0)->lsr_ogen));
+        LASSERTF((int)offsetof(struct llog_setattr_rec, lsr_oseq) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr_rec, lsr_oseq));
+        LASSERTF((int)sizeof(((struct llog_setattr_rec *)0)->lsr_oseq) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr_rec *)0)->lsr_oseq));
         LASSERTF((int)offsetof(struct llog_setattr_rec, lsr_uid) == 28, " found %lld\n",
                  (long long)(int)offsetof(struct llog_setattr_rec, lsr_uid));
         LASSERTF((int)sizeof(((struct llog_setattr_rec *)0)->lsr_uid) == 4, " found %lld\n",
@@ -1792,6 +2130,46 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct llog_setattr_rec *)0)->lsr_tail) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct llog_setattr_rec *)0)->lsr_tail));
 
+        /* Checks for struct llog_setattr64_rec */
+        LASSERTF((int)sizeof(struct llog_setattr64_rec) == 56, " found %lld\n",
+                 (long long)(int)sizeof(struct llog_setattr64_rec));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_hdr) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_hdr));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_hdr) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_hdr));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_oid) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_oid));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_oid) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_oid));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_oseq) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_oseq));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_oseq) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_oseq));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, padding) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, padding));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->padding) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->padding));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_uid) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_uid));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_uid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_uid));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_uid_h) == 36, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_uid_h));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_uid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_uid_h));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_gid) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_gid));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_gid) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_gid));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_gid_h) == 44, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_gid_h));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_gid_h) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_gid_h));
+        LASSERTF((int)offsetof(struct llog_setattr64_rec, lsr_tail) == 48, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_setattr64_rec, lsr_tail));
+        LASSERTF((int)sizeof(((struct llog_setattr64_rec *)0)->lsr_tail) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_setattr64_rec *)0)->lsr_tail));
+
         /* Checks for struct llog_size_change_rec */
         LASSERTF((int)sizeof(struct llog_size_change_rec) == 48, " found %lld\n",
                  (long long)(int)sizeof(struct llog_size_change_rec));
@@ -1816,6 +2194,58 @@ 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_rec */
+        LASSERTF((int)sizeof(struct changelog_rec) == 64, " found %lld\n",
+                 (long long)(int)sizeof(struct changelog_rec));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_namelen) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_namelen));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_namelen) == 2, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_namelen));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_flags) == 2, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_flags));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_flags) == 2, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_flags));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_type) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_type));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_type) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_type));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_index) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_index));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_index) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_index));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_prev) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_prev));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_prev) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_prev));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_time) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_time));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_time) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_time));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_tfid) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_tfid));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_tfid) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_tfid));
+        LASSERTF((int)offsetof(struct changelog_rec, cr_pfid) == 48, " found %lld\n",
+                 (long long)(int)offsetof(struct changelog_rec, cr_pfid));
+        LASSERTF((int)sizeof(((struct changelog_rec *)0)->cr_pfid) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct changelog_rec *)0)->cr_pfid));
+
+        /* Checks for struct llog_changelog_rec */
+        LASSERTF((int)sizeof(struct llog_changelog_rec) == 88, " found %lld\n",
+                 (long long)(int)sizeof(struct llog_changelog_rec));
+        LASSERTF((int)offsetof(struct llog_changelog_rec, cr_hdr) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_changelog_rec, cr_hdr));
+        LASSERTF((int)sizeof(((struct llog_changelog_rec *)0)->cr_hdr) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_changelog_rec *)0)->cr_hdr));
+        LASSERTF((int)offsetof(struct llog_changelog_rec, cr) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_changelog_rec, cr));
+        LASSERTF((int)sizeof(((struct llog_changelog_rec *)0)->cr) == 64, " found %lld\n",
+                 (long long)(int)sizeof(((struct llog_changelog_rec *)0)->cr));
+        LASSERTF((int)offsetof(struct llog_changelog_rec, cr_tail) == 80, " found %lld\n",
+                 (long long)(int)offsetof(struct llog_changelog_rec, cr_tail));
+        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_gen */
         LASSERTF((int)sizeof(struct llog_gen) == 16, " found %lld\n",
                  (long long)(int)sizeof(struct llog_gen));
@@ -1969,40 +2399,8 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct llogd_conn_body *)0)->lgdc_ctxt_idx) == 4, " found %lld\n",
                  (long long)(int)sizeof(((struct llogd_conn_body *)0)->lgdc_ctxt_idx));
 
-        /* Checks for struct llog_array_rec */
-        LASSERTF((int)sizeof(struct llog_array_rec) == 72, " found %lld\n",
-                 (long long)(int)sizeof(struct llog_array_rec));
-        LASSERTF((int)offsetof(struct llog_array_rec, lmr_hdr) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_array_rec, lmr_hdr));
-        LASSERTF((int)sizeof(((struct llog_array_rec *)0)->lmr_hdr) == 16, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_array_rec *)0)->lmr_hdr));
-        LASSERTF((int)offsetof(struct llog_array_rec, lmr_med) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_array_rec, lmr_med));
-        LASSERTF((int)sizeof(((struct llog_array_rec *)0)->lmr_med) == 48, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_array_rec *)0)->lmr_med));
-        LASSERTF((int)offsetof(struct llog_array_rec, lmr_tail) == 64, " found %lld\n",
-                 (long long)(int)offsetof(struct llog_array_rec, lmr_tail));
-        LASSERTF((int)sizeof(((struct llog_array_rec *)0)->lmr_tail) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct llog_array_rec *)0)->lmr_tail));
-
-        /* Checks for struct mds_extent_desc */
-        LASSERTF((int)sizeof(struct mds_extent_desc) == 48, " found %lld\n",
-                 (long long)(int)sizeof(struct mds_extent_desc));
-        LASSERTF((int)offsetof(struct mds_extent_desc, med_start) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_extent_desc, med_start));
-        LASSERTF((int)sizeof(((struct mds_extent_desc *)0)->med_start) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_extent_desc *)0)->med_start));
-        LASSERTF((int)offsetof(struct mds_extent_desc, med_len) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_extent_desc, med_len));
-        LASSERTF((int)sizeof(((struct mds_extent_desc *)0)->med_len) == 8, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_extent_desc *)0)->med_len));
-        LASSERTF((int)offsetof(struct mds_extent_desc, med_lmm) == 16, " found %lld\n",
-                 (long long)(int)offsetof(struct mds_extent_desc, med_lmm));
-        LASSERTF((int)sizeof(((struct mds_extent_desc *)0)->med_lmm) == 32, " found %lld\n",
-                 (long long)(int)sizeof(((struct mds_extent_desc *)0)->med_lmm));
-
         /* Checks for struct qunit_data */
-        LASSERTF((int)sizeof(struct qunit_data) == 16, " found %lld\n",
+        LASSERTF((int)sizeof(struct qunit_data) == 32, " found %lld\n",
                  (long long)(int)sizeof(struct qunit_data));
         LASSERTF((int)offsetof(struct qunit_data, qd_id) == 0, " found %lld\n",
                  (long long)(int)offsetof(struct qunit_data, qd_id));
@@ -2016,26 +2414,38 @@ void lustre_assert_wire_constants(void)
                  (long long)(int)offsetof(struct qunit_data, qd_count));
         LASSERTF((int)sizeof(((struct qunit_data *)0)->qd_count) == 8, " found %lld\n",
                  (long long)(int)sizeof(((struct qunit_data *)0)->qd_count));
-
-        /* Checks for struct qunit_data_old */
-        LASSERTF((int)sizeof(struct qunit_data_old) == 16, " found %lld\n",
-                 (long long)(int)sizeof(struct qunit_data_old));
-        LASSERTF((int)offsetof(struct qunit_data_old, qd_id) == 0, " found %lld\n",
-                 (long long)(int)offsetof(struct qunit_data_old, qd_id));
-        LASSERTF((int)sizeof(((struct qunit_data_old *)0)->qd_id) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct qunit_data_old *)0)->qd_id));
-        LASSERTF((int)offsetof(struct qunit_data_old, qd_type) == 4, " found %lld\n",
-                 (long long)(int)offsetof(struct qunit_data_old, qd_type));
-        LASSERTF((int)sizeof(((struct qunit_data_old *)0)->qd_type) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct qunit_data_old *)0)->qd_type));
-        LASSERTF((int)offsetof(struct qunit_data_old, qd_count) == 8, " found %lld\n",
-                 (long long)(int)offsetof(struct qunit_data_old, qd_count));
-        LASSERTF((int)sizeof(((struct qunit_data_old *)0)->qd_count) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct qunit_data_old *)0)->qd_count));
-        LASSERTF((int)offsetof(struct qunit_data_old, qd_isblk) == 12, " found %lld\n",
-                 (long long)(int)offsetof(struct qunit_data_old, qd_isblk));
-        LASSERTF((int)sizeof(((struct qunit_data_old *)0)->qd_isblk) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((struct qunit_data_old *)0)->qd_isblk));
+        LASSERTF((int)offsetof(struct qunit_data, qd_qunit) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct qunit_data, qd_qunit));
+        LASSERTF((int)sizeof(((struct qunit_data *)0)->qd_qunit) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct qunit_data *)0)->qd_qunit));
+        LASSERTF((int)offsetof(struct qunit_data, padding) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct qunit_data, padding));
+        LASSERTF((int)sizeof(((struct qunit_data *)0)->padding) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct qunit_data *)0)->padding));
+
+        /* 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));
+        LASSERTF((int)offsetof(struct quota_adjust_qunit, qaq_flags) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct quota_adjust_qunit, qaq_flags));
+        LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->qaq_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->qaq_flags));
+        LASSERTF((int)offsetof(struct quota_adjust_qunit, qaq_id) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct quota_adjust_qunit, qaq_id));
+        LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->qaq_id) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->qaq_id));
+        LASSERTF((int)offsetof(struct quota_adjust_qunit, qaq_bunit_sz) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct quota_adjust_qunit, qaq_bunit_sz));
+        LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->qaq_bunit_sz) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->qaq_bunit_sz));
+        LASSERTF((int)offsetof(struct quota_adjust_qunit, qaq_iunit_sz) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct quota_adjust_qunit, qaq_iunit_sz));
+        LASSERTF((int)sizeof(((struct quota_adjust_qunit *)0)->qaq_iunit_sz) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct quota_adjust_qunit *)0)->qaq_iunit_sz));
+        LASSERTF((int)offsetof(struct quota_adjust_qunit, padding1) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct quota_adjust_qunit, padding1));
+        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 mgs_target_info */
         LASSERTF((int)sizeof(struct mgs_target_info) == 4544, " found %lld\n",
@@ -2141,35 +2551,145 @@ void lustre_assert_wire_constants(void)
         LASSERTF((int)sizeof(((struct lustre_disk_data *)0)->ldd_params) == 4096, " found %lld\n",
                  (long long)(int)sizeof(((struct lustre_disk_data *)0)->ldd_params));
 
+        /* Checks for struct ll_user_fiemap */
+        LASSERTF((int)sizeof(struct ll_user_fiemap) == 32, " found %lld\n",
+                 (long long)(int)sizeof(struct ll_user_fiemap));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_start) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_start));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_start) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_start));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_length) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_length));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_length) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_length));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_flags) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_flags));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_flags));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_mapped_extents) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_mapped_extents));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_mapped_extents) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_mapped_extents));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_extent_count) == 24, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_extent_count));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_extent_count) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_extent_count));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_reserved) == 28, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_reserved));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_reserved) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_reserved));
+        LASSERTF((int)offsetof(struct ll_user_fiemap, fm_extents) == 32, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_user_fiemap, fm_extents));
+        LASSERTF((int)sizeof(((struct ll_user_fiemap *)0)->fm_extents) == 0, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_user_fiemap *)0)->fm_extents));
+        CLASSERT(FIEMAP_FLAG_SYNC == 0x00000001);
+        CLASSERT(FIEMAP_FLAG_XATTR == 0x00000002);
+        CLASSERT(FIEMAP_FLAG_DEVICE_ORDER == 0x40000000);
+
+        /* Checks for struct ll_fiemap_extent */
+        LASSERTF((int)sizeof(struct ll_fiemap_extent) == 56, " found %lld\n",
+                 (long long)(int)sizeof(struct ll_fiemap_extent));
+        LASSERTF((int)offsetof(struct ll_fiemap_extent, fe_logical) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_fiemap_extent, fe_logical));
+        LASSERTF((int)sizeof(((struct ll_fiemap_extent *)0)->fe_logical) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_fiemap_extent *)0)->fe_logical));
+        LASSERTF((int)offsetof(struct ll_fiemap_extent, fe_physical) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_fiemap_extent, fe_physical));
+        LASSERTF((int)sizeof(((struct ll_fiemap_extent *)0)->fe_physical) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_fiemap_extent *)0)->fe_physical));
+        LASSERTF((int)offsetof(struct ll_fiemap_extent, fe_length) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_fiemap_extent, fe_length));
+        LASSERTF((int)sizeof(((struct ll_fiemap_extent *)0)->fe_length) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_fiemap_extent *)0)->fe_length));
+        LASSERTF((int)offsetof(struct ll_fiemap_extent, fe_flags) == 40, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_fiemap_extent, fe_flags));
+        LASSERTF((int)sizeof(((struct ll_fiemap_extent *)0)->fe_flags) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_fiemap_extent *)0)->fe_flags));
+        LASSERTF((int)offsetof(struct ll_fiemap_extent, fe_device) == 44, " found %lld\n",
+                 (long long)(int)offsetof(struct ll_fiemap_extent, fe_device));
+        LASSERTF((int)sizeof(((struct ll_fiemap_extent *)0)->fe_device) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct ll_fiemap_extent *)0)->fe_device));
+        CLASSERT(FIEMAP_EXTENT_LAST == 0x00000001);
+        CLASSERT(FIEMAP_EXTENT_UNKNOWN == 0x00000002);
+        CLASSERT(FIEMAP_EXTENT_DELALLOC == 0x00000004);
+        CLASSERT(FIEMAP_EXTENT_ENCODED == 0x00000008);
+        CLASSERT(FIEMAP_EXTENT_DATA_ENCRYPTED == 0x00000080);
+        CLASSERT(FIEMAP_EXTENT_NOT_ALIGNED == 0x00000100);
+        CLASSERT(FIEMAP_EXTENT_DATA_INLINE == 0x00000200);
+        CLASSERT(FIEMAP_EXTENT_DATA_TAIL == 0x00000400);
+        CLASSERT(FIEMAP_EXTENT_UNWRITTEN == 0x00000800);
+        CLASSERT(FIEMAP_EXTENT_MERGED == 0x00001000);
+        CLASSERT(FIEMAP_EXTENT_NO_DIRECT == 0x40000000);
+        CLASSERT(FIEMAP_EXTENT_NET == 0x80000000);
 #ifdef LIBLUSTRE_POSIX_ACL
+
         /* Checks for type posix_acl_xattr_entry */
-        LASSERTF((int)sizeof(posix_acl_xattr_entry) == 8, " found %lld\n",
-                 (long long)(int)sizeof(posix_acl_xattr_entry));
-        LASSERTF((int)offsetof(posix_acl_xattr_entry, e_tag) == 0, " found %lld\n",
-                 (long long)(int)offsetof(posix_acl_xattr_entry, e_tag));
-        LASSERTF((int)sizeof(((posix_acl_xattr_entry *)0)->e_tag) == 2, " found %lld\n",
-                 (long long)(int)sizeof(((posix_acl_xattr_entry *)0)->e_tag));
-        LASSERTF((int)offsetof(posix_acl_xattr_entry, e_perm) == 2, " found %lld\n",
-                 (long long)(int)offsetof(posix_acl_xattr_entry, e_perm));
-        LASSERTF((int)sizeof(((posix_acl_xattr_entry *)0)->e_perm) == 2, " found %lld\n",
-                 (long long)(int)sizeof(((posix_acl_xattr_entry *)0)->e_perm));
-        LASSERTF((int)offsetof(posix_acl_xattr_entry, e_id) == 4, " found %lld\n",
-                 (long long)(int)offsetof(posix_acl_xattr_entry, e_id));
-        LASSERTF((int)sizeof(((posix_acl_xattr_entry *)0)->e_id) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((posix_acl_xattr_entry *)0)->e_id));
+        LASSERTF((int)sizeof(xattr_acl_entry) == 8, " found %lld\n",
+                 (long long)(int)sizeof(xattr_acl_entry));
+        LASSERTF((int)offsetof(xattr_acl_entry, e_tag) == 0, " found %lld\n",
+                 (long long)(int)offsetof(xattr_acl_entry, e_tag));
+        LASSERTF((int)sizeof(((xattr_acl_entry *)0)->e_tag) == 2, " found %lld\n",
+                 (long long)(int)sizeof(((xattr_acl_entry *)0)->e_tag));
+        LASSERTF((int)offsetof(xattr_acl_entry, e_perm) == 2, " found %lld\n",
+                 (long long)(int)offsetof(xattr_acl_entry, e_perm));
+        LASSERTF((int)sizeof(((xattr_acl_entry *)0)->e_perm) == 2, " found %lld\n",
+                 (long long)(int)sizeof(((xattr_acl_entry *)0)->e_perm));
+        LASSERTF((int)offsetof(xattr_acl_entry, e_id) == 4, " found %lld\n",
+                 (long long)(int)offsetof(xattr_acl_entry, e_id));
+        LASSERTF((int)sizeof(((xattr_acl_entry *)0)->e_id) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((xattr_acl_entry *)0)->e_id));
 
         /* Checks for type posix_acl_xattr_header */
-        LASSERTF((int)sizeof(posix_acl_xattr_header) == 4, " found %lld\n",
-                 (long long)(int)sizeof(posix_acl_xattr_header));
-        LASSERTF((int)offsetof(posix_acl_xattr_header, a_version) == 0, " found %lld\n",
-                 (long long)(int)offsetof(posix_acl_xattr_header, a_version));
-        LASSERTF((int)sizeof(((posix_acl_xattr_header *)0)->a_version) == 4, " found %lld\n",
-                 (long long)(int)sizeof(((posix_acl_xattr_header *)0)->a_version));
-        LASSERTF((int)offsetof(posix_acl_xattr_header, a_entries) == 4, " found %lld\n",
-                 (long long)(int)offsetof(posix_acl_xattr_header, a_entries));
-        LASSERTF((int)sizeof(((posix_acl_xattr_header *)0)->a_entries) == 0, " found %lld\n",
-                 (long long)(int)sizeof(((posix_acl_xattr_header *)0)->a_entries));
+        LASSERTF((int)sizeof(xattr_acl_header) == 4, " found %lld\n",
+                 (long long)(int)sizeof(xattr_acl_header));
+        LASSERTF((int)offsetof(xattr_acl_header, a_version) == 0, " found %lld\n",
+                 (long long)(int)offsetof(xattr_acl_header, a_version));
+        LASSERTF((int)sizeof(((xattr_acl_header *)0)->a_version) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((xattr_acl_header *)0)->a_version));
+        LASSERTF((int)offsetof(xattr_acl_header, a_entries) == 4, " found %lld\n",
+                 (long long)(int)offsetof(xattr_acl_header, a_entries));
+        LASSERTF((int)sizeof(((xattr_acl_header *)0)->a_entries) == 0, " found %lld\n",
+                 (long long)(int)sizeof(((xattr_acl_header *)0)->a_entries));
 #endif
 
+        /* Checks for struct link_ea_header */
+        LASSERTF((int)sizeof(struct link_ea_header) == 24, " found %lld\n",
+                 (long long)(int)sizeof(struct link_ea_header));
+        LASSERTF((int)offsetof(struct link_ea_header, leh_magic) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_header, leh_magic));
+        LASSERTF((int)sizeof(((struct link_ea_header *)0)->leh_magic) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_header *)0)->leh_magic));
+        LASSERTF((int)offsetof(struct link_ea_header, leh_reccount) == 4, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_header, leh_reccount));
+        LASSERTF((int)sizeof(((struct link_ea_header *)0)->leh_reccount) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_header *)0)->leh_reccount));
+        LASSERTF((int)offsetof(struct link_ea_header, leh_len) == 8, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_header, leh_len));
+        LASSERTF((int)sizeof(((struct link_ea_header *)0)->leh_len) == 8, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_header *)0)->leh_len));
+        LASSERTF((int)offsetof(struct link_ea_header, padding1) == 16, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_header, padding1));
+        LASSERTF((int)sizeof(((struct link_ea_header *)0)->padding1) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_header *)0)->padding1));
+        LASSERTF((int)offsetof(struct link_ea_header, padding2) == 20, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_header, padding2));
+        LASSERTF((int)sizeof(((struct link_ea_header *)0)->padding2) == 4, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_header *)0)->padding2));
+
+        /* Checks for struct link_ea_entry */
+        LASSERTF((int)sizeof(struct link_ea_entry) == 18, " found %lld\n",
+                 (long long)(int)sizeof(struct link_ea_entry));
+        LASSERTF((int)offsetof(struct link_ea_entry, lee_reclen) == 0, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_entry, lee_reclen));
+        LASSERTF((int)sizeof(((struct link_ea_entry *)0)->lee_reclen) == 2, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_entry *)0)->lee_reclen));
+        LASSERTF((int)offsetof(struct link_ea_entry, lee_parent_fid) == 2, " found %lld\n",
+                 (long long)(int)offsetof(struct link_ea_entry, lee_parent_fid));
+        LASSERTF((int)sizeof(((struct link_ea_entry *)0)->lee_parent_fid) == 16, " found %lld\n",
+                 (long long)(int)sizeof(((struct link_ea_entry *)0)->lee_parent_fid));
+        LASSERTF((int)offsetof(struct link_ea_entry, lee_name) == 18, " found %lld\n",
+                 (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));
 }