Whamcloud - gitweb
LU-11014 mdc: remove obsolete intent opcodes
[fs/lustre-release.git] / lustre / utils / wiretest.c
index 3e41022..f61f37b 100644 (file)
  *
  * 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.
+ * http://www.gnu.org/licenses/gpl-2.0.html
  *
  * GPL HEADER END
  */
  * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2011, 2014, Intel Corporation.
+ * Copyright (c) 2011, 2017, Intel Corporation.
  */
 /*
  * This file is part of Lustre, http://www.lustre.org/
  * Lustre is a trademark of Sun Microsystems, Inc.
  */
 
+#include <errno.h>
+#include <limits.h>
 #include <stdio.h>
-#include <libcfs/libcfs.h>
-#include <lustre/lustre_idl.h>
-#include <lustre/lustre_lfsck_user.h>
-#include <lustre_disk.h>
+#include <string.h>
+
+#include <linux/lustre/lustre_idl.h>
+#ifdef HAVE_SERVER_SUPPORT
+#include <linux/lustre/lustre_lfsck_user.h>
+#include <linux/lustre/lustre_disk.h>
+#endif
 
-#undef LASSERT
-#undef LASSERTF
 #define LASSERT(cond) if (!(cond)) { printf("failed " #cond "\n"); ret = 1; }
 #define LASSERTF(cond, fmt, ...) if (!(cond)) { printf("failed '" #cond "'" fmt, ## __VA_ARGS__);ret = 1;}
+/*
+ * Compile-time LASSERT, which verifies correctness at compile-time rather
+ * than runtime. If "cond" is true, then there are two different cases
+ * ("(non-zero)" and "0"). If "cond" is false, then there are two identical
+ * cases ("0" and "0"), which is an error that causes the compiler to complain.
+ */
+#define CLASSERT(cond) do {switch (1) {case (cond): case 0: break; } } while (0)
 
 int ret;
 
@@ -58,13 +64,12 @@ int main()
 
         return ret;
 }
+
 void lustre_assert_wire_constants(void)
 {
-        /* Wire protocol assertions generated by 'wirecheck'
-         * (make -C lustre/utils newwiretest)
-         * running on Linux q 2.6.32-431.5.1.el6.lustre.x86_64 #1 SMP Wed Feb 12 11:01:08 CST 2014 x8
-         * with gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)  */
-
+       /* Wire protocol assertions generated by 'wirecheck'
+        * (make -C lustre/utils newwiretest)
+        */
 
        /* Constants... */
        LASSERTF(PTL_RPC_MSG_REQUEST == 4711, "found %lld\n",
@@ -116,7 +121,9 @@ void lustre_assert_wire_constants(void)
                 (long long)OST_QUOTACTL);
        LASSERTF(OST_QUOTA_ADJUST_QUNIT == 20, "found %lld\n",
                 (long long)OST_QUOTA_ADJUST_QUNIT);
-       LASSERTF(OST_LAST_OPC == 21, "found %lld\n",
+       LASSERTF(OST_LADVISE == 21, "found %lld\n",
+                (long long)OST_LADVISE);
+       LASSERTF(OST_LAST_OPC == 22, "found %lld\n",
                 (long long)OST_LAST_OPC);
        LASSERTF(OBD_OBJECT_EOF == 0xffffffffffffffffULL, "found 0x%.16llxULL\n",
                 OBD_OBJECT_EOF);
@@ -144,8 +151,8 @@ void lustre_assert_wire_constants(void)
                 (long long)MDS_CONNECT);
        LASSERTF(MDS_DISCONNECT == 39, "found %lld\n",
                 (long long)MDS_DISCONNECT);
-       LASSERTF(MDS_GETSTATUS == 40, "found %lld\n",
-                (long long)MDS_GETSTATUS);
+       LASSERTF(MDS_GET_ROOT == 40, "found %lld\n",
+                (long long)MDS_GET_ROOT);
        LASSERTF(MDS_STATFS == 41, "found %lld\n",
                 (long long)MDS_STATFS);
        LASSERTF(MDS_PIN == 42, "found %lld\n",
@@ -208,7 +215,7 @@ void lustre_assert_wire_constants(void)
                 (long long)REINT_RMENTRY);
        LASSERTF(REINT_MIGRATE == 9, "found %lld\n",
                 (long long)REINT_MIGRATE);
-       LASSERTF(REINT_MAX == 10, "found %lld\n",
+       LASSERTF(REINT_MAX == 11, "found %lld\n",
                 (long long)REINT_MAX);
        LASSERTF(DISP_IT_EXECD == 0x00000001UL, "found 0x%.8xUL\n",
                (unsigned)DISP_IT_EXECD);
@@ -234,8 +241,6 @@ void lustre_assert_wire_constants(void)
                 (long long)MDS_STATUS_CONN);
        LASSERTF(MDS_STATUS_LOV == 2, "found %lld\n",
                 (long long)MDS_STATUS_LOV);
-       LASSERTF(LUSTRE_BFLAG_UNCOMMITTED_WRITES == 1, "found %lld\n",
-                (long long)LUSTRE_BFLAG_UNCOMMITTED_WRITES);
        LASSERTF(MDS_ATTR_MODE == 0x0000000000000001ULL, "found 0x%.16llxULL\n",
                        (long long)MDS_ATTR_MODE);
        LASSERTF(MDS_ATTR_UID == 0x0000000000000002ULL, "found 0x%.16llxULL\n",
@@ -268,6 +273,12 @@ void lustre_assert_wire_constants(void)
                        (long long)MDS_ATTR_FROM_OPEN);
        LASSERTF(MDS_ATTR_BLOCKS == 0x0000000000008000ULL, "found 0x%.16llxULL\n",
                        (long long)MDS_ATTR_BLOCKS);
+       LASSERTF(MDS_ATTR_PROJID == 0x0000000000010000ULL, "found 0x%.16llxULL\n",
+                       (long long)MDS_ATTR_PROJID);
+       LASSERTF(MDS_ATTR_LSIZE == 0x0000000000020000ULL, "found 0x%.16llxULL\n",
+                       (long long)MDS_ATTR_LSIZE);
+       LASSERTF(MDS_ATTR_LBLOCKS == 0x0000000000040000ULL, "found 0x%.16llxULL\n",
+                       (long long)MDS_ATTR_BLOCKS);
        LASSERTF(FLD_QUERY == 900, "found %lld\n",
                 (long long)FLD_QUERY);
        LASSERTF(FLD_READ == 901, "found %lld\n",
@@ -352,10 +363,6 @@ void lustre_assert_wire_constants(void)
        CLASSERT(LQUOTA_RES_DT == 2);
        LASSERTF(OBD_PING == 400, "found %lld\n",
                 (long long)OBD_PING);
-       LASSERTF(OBD_LOG_CANCEL == 401, "found %lld\n",
-                (long long)OBD_LOG_CANCEL);
-       LASSERTF(OBD_QC_CALLBACK == 402, "found %lld\n",
-                (long long)OBD_QC_CALLBACK);
        LASSERTF(OBD_IDX_READ == 403, "found %lld\n",
                 (long long)OBD_IDX_READ);
        LASSERTF(OBD_LAST_OPC == 404, "found %lld\n",
@@ -378,6 +385,8 @@ void lustre_assert_wire_constants(void)
                 (long long)MGS_TARGET_DEL);
        LASSERTF(MGS_SET_INFO == 255, "found %lld\n",
                 (long long)MGS_SET_INFO);
+       LASSERTF(MGS_CONFIG_READ == 256, "found %lld\n",
+                (long long)MGS_CONFIG_READ);
        LASSERTF(MGS_LAST_OPC == 257, "found %lld\n",
                 (long long)MGS_LAST_OPC);
        LASSERTF(SEC_CTX_INIT == 801, "found %lld\n",
@@ -433,14 +442,54 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct lustre_mdt_attrs, lma_self_fid));
        LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid) == 16, "found %lld\n",
                 (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid));
-       LASSERTF(LMAI_RELEASED == 0x00000001UL, "found 0x%.8xUL\n",
-               (unsigned)LMAI_RELEASED);
        LASSERTF(LMAC_HSM == 0x00000001UL, "found 0x%.8xUL\n",
                (unsigned)LMAC_HSM);
        LASSERTF(LMAC_NOT_IN_OI == 0x00000004UL, "found 0x%.8xUL\n",
                (unsigned)LMAC_NOT_IN_OI);
        LASSERTF(LMAC_FID_ON_OST == 0x00000008UL, "found 0x%.8xUL\n",
                (unsigned)LMAC_FID_ON_OST);
+       LASSERTF(LMAC_STRIPE_INFO == 0x00000010UL, "found 0x%.8xUL\n",
+               (unsigned)LMAC_STRIPE_INFO);
+       LASSERTF(LMAC_COMP_INFO == 0x00000020UL, "found 0x%.8xUL\n",
+               (unsigned)LMAC_COMP_INFO);
+       LASSERTF(LMAI_RELEASED == 0x00000001UL, "found 0x%.8xUL\n",
+               (unsigned)LMAI_RELEASED);
+       LASSERTF(LMAI_AGENT == 0x00000002UL, "found 0x%.8xUL\n",
+               (unsigned)LMAI_AGENT);
+       LASSERTF(LMAI_REMOTE_PARENT == 0x00000004UL, "found 0x%.8xUL\n",
+               (unsigned)LMAI_REMOTE_PARENT);
+       LASSERTF(LMAI_STRIPED == 0x00000008UL, "found 0x%.8xUL\n",
+               (unsigned)LMAI_STRIPED);
+       LASSERTF(LMAI_ORPHAN == 0x00000010UL, "found 0x%.8xUL\n",
+               (unsigned)LMAI_ORPHAN);
+
+       /* Checks for struct lustre_ost_attrs */
+       LASSERTF((int)sizeof(struct lustre_ost_attrs) == 64, "found %lld\n",
+                (long long)(int)sizeof(struct lustre_ost_attrs));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_lma) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_lma));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_lma) == 24, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_lma));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_parent_fid) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_parent_fid));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_parent_fid) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_parent_fid));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_stripe_size) == 40, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_stripe_size));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_stripe_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_stripe_size));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_id) == 44, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_id));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_id) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_id));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_start) == 48, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_start));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_start) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_start));
+       LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_end) == 56, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_end));
+       LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_end) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_end));
        LASSERTF(OUT_CREATE == 1, "found %lld\n",
                 (long long)OUT_CREATE);
        LASSERTF(OUT_DESTROY == 2, "found %lld\n",
@@ -465,6 +514,38 @@ void lustre_assert_wire_constants(void)
                 (long long)OUT_INDEX_INSERT);
        LASSERTF(OUT_INDEX_DELETE == 11, "found %lld\n",
                 (long long)OUT_INDEX_DELETE);
+       LASSERTF(OUT_WRITE == 12, "found %lld\n",
+                (long long)OUT_WRITE);
+       LASSERTF(OUT_XATTR_DEL == 13, "found %lld\n",
+                (long long)OUT_XATTR_DEL);
+       LASSERTF(OUT_PUNCH == 14, "found %lld\n",
+                (long long)OUT_PUNCH);
+       LASSERTF(OUT_READ == 15, "found %lld\n",
+                (long long)OUT_READ);
+       LASSERTF(OUT_NOOP == 16, "found %lld\n",
+                (long long)OUT_NOOP);
+       LASSERTF(OUT_XATTR_LIST == 17, "found %lld\n",
+                (long long)OUT_XATTR_LIST);
+
+       /* Checks for struct lustre_som_attrs */
+       LASSERTF((int)sizeof(struct lustre_som_attrs) == 24, "found %lld\n",
+                (long long)(int)sizeof(struct lustre_som_attrs));
+       LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_valid) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_som_attrs, lsa_valid));
+       LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_valid) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_valid));
+       LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_reserved) == 2, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_som_attrs, lsa_reserved));
+       LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_reserved) == 6, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_reserved));
+       LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_size) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_som_attrs, lsa_size));
+       LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_size) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_size));
+       LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_blocks) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct lustre_som_attrs, lsa_blocks));
+       LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_blocks) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_blocks));
 
        /* Checks for struct hsm_attrs */
        LASSERTF((int)sizeof(struct hsm_attrs) == 24, "found %lld\n",
@@ -501,10 +582,10 @@ void lustre_assert_wire_constants(void)
                 (long long)FID_SEQ_LLOG);
        LASSERTF(FID_SEQ_ECHO == 2, "found %lld\n",
                 (long long)FID_SEQ_ECHO);
-       LASSERTF(FID_SEQ_OST_MDT1 == 3, "found %lld\n",
-                (long long)FID_SEQ_OST_MDT1);
-       LASSERTF(FID_SEQ_OST_MAX == 9, "found %lld\n",
-                (long long)FID_SEQ_OST_MAX);
+       LASSERTF(FID_SEQ_UNUSED_START == 3, "found %lld\n",
+                (long long)FID_SEQ_UNUSED_START);
+       LASSERTF(FID_SEQ_UNUSED_END == 9, "found %lld\n",
+                (long long)FID_SEQ_UNUSED_END);
        LASSERTF(FID_SEQ_RSVD == 11, "found %lld\n",
                 (long long)FID_SEQ_RSVD);
        LASSERTF(FID_SEQ_IGIF == 12, "found %lld\n",
@@ -529,6 +610,12 @@ void lustre_assert_wire_constants(void)
                        (long long)FID_SEQ_QUOTA_GLB);
        LASSERTF(FID_SEQ_ROOT == 0x0000000200000007ULL, "found 0x%.16llxULL\n",
                        (long long)FID_SEQ_ROOT);
+       LASSERTF(FID_SEQ_LAYOUT_RBTREE == 0x0000000200000008ULL, "found 0x%.16llxULL\n",
+                       (long long)FID_SEQ_LAYOUT_RBTREE);
+       LASSERTF(FID_SEQ_UPDATE_LOG == 0x0000000200000009ULL, "found 0x%.16llxULL\n",
+                       (long long)FID_SEQ_UPDATE_LOG);
+       LASSERTF(FID_SEQ_UPDATE_LOG_DIR == 0x000000020000000aULL, "found 0x%.16llxULL\n",
+                       (long long)FID_SEQ_UPDATE_LOG_DIR);
        LASSERTF(FID_SEQ_NORMAL == 0x0000000200000400ULL, "found 0x%.16llxULL\n",
                        (long long)FID_SEQ_NORMAL);
        LASSERTF(FID_SEQ_LOV_DEFAULT == 0xffffffffffffffffULL, "found 0x%.16llxULL\n",
@@ -615,6 +702,78 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(union lu_page) == 4096, "found %lld\n",
                 (long long)(int)sizeof(union lu_page));
 
+       /* Checks for struct lu_ladvise */
+       LASSERTF((int)sizeof(struct lu_ladvise) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct lu_ladvise));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_advice) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_advice));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_advice) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_advice));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_value1) == 2, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_value1));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value1) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value1));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_value2) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_value2));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value2) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value2));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_start) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_start));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_start) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_start));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_end) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_end));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_end) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_end));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_value3) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_value3));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value3) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value3));
+       LASSERTF((int)offsetof(struct lu_ladvise, lla_value4) == 28, "found %lld\n",
+                (long long)(int)offsetof(struct lu_ladvise, lla_value4));
+       LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value4) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value4));
+       LASSERTF(LU_LADVISE_WILLREAD == 1, "found %lld\n",
+                (long long)LU_LADVISE_WILLREAD);
+       LASSERTF(LU_LADVISE_DONTNEED == 2, "found %lld\n",
+                (long long)LU_LADVISE_DONTNEED);
+
+       /* Checks for struct ladvise_hdr */
+       LASSERTF((int)sizeof(struct ladvise_hdr) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct ladvise_hdr));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_magic) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_magic));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_magic) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_magic));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_count) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_count));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_count) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_count));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_flags) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_flags));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_flags) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_flags));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_value1) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_value1));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value1) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value1));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_value2) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_value2));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value2) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value2));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_value3) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_value3));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value3) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value3));
+       LASSERTF((int)offsetof(struct ladvise_hdr, lah_advise) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct ladvise_hdr, lah_advise));
+       LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_advise) == 0, "found %lld\n",
+                (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_advise));
+       LASSERTF(LF_ASYNC == 1, "found %lld\n",
+                (long long)LF_ASYNC);
+       LASSERTF(LADVISE_MAGIC == 450829536, "found %lld\n",
+                (long long)LADVISE_MAGIC);
+
        /* Checks for struct lustre_handle */
        LASSERTF((int)sizeof(struct lustre_handle) == 8, "found %lld\n",
                 (long long)(int)sizeof(struct lustre_handle));
@@ -662,10 +821,10 @@ 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]));
-       LASSERTF(LUSTRE_MSG_MAGIC_V2 == 0x0BD00BD3, "found 0x%.8x\n",
-               LUSTRE_MSG_MAGIC_V2);
-       LASSERTF(LUSTRE_MSG_MAGIC_V2_SWABBED == 0xD30BD00B, "found 0x%.8x\n",
-               LUSTRE_MSG_MAGIC_V2_SWABBED);
+       LASSERTF(LUSTRE_MSG_MAGIC_V2 == 0x0bd00bd3UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_MSG_MAGIC_V2);
+       LASSERTF(LUSTRE_MSG_MAGIC_V2_SWABBED == 0xd30bd00bUL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_MSG_MAGIC_V2_SWABBED);
 
        /* Checks for struct ptlrpc_body */
        LASSERTF((int)sizeof(struct ptlrpc_body_v3) == 184, "found %lld\n",
@@ -747,10 +906,22 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct ptlrpc_body_v3, pb_pre_versions));
        LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions) == 32, "found %lld\n",
                 (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions));
-       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding) == 120, "found %lld\n",
-                (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding));
-       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding) == 32, "found %lld\n",
-                (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_mbits) == 120, "found %lld\n",
+                (long long)(int)offsetof(struct ptlrpc_body_v3, pb_mbits));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_0) == 128, "found %lld\n",
+                (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_0));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_1) == 136, "found %lld\n",
+                (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_1));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_2) == 144, "found %lld\n",
+                (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_2));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2));
        CLASSERT(LUSTRE_JOBID_SIZE == 32);
        LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_jobid) == 152, "found %lld\n",
                 (long long)(int)offsetof(struct ptlrpc_body_v3, pb_jobid));
@@ -832,10 +1003,22 @@ void lustre_assert_wire_constants(void)
                 (int)offsetof(struct ptlrpc_body_v3, pb_pre_versions), (int)offsetof(struct ptlrpc_body_v2, pb_pre_versions));
        LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_pre_versions), "%d != %d\n",
                 (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_pre_versions));
-       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding) == (int)offsetof(struct ptlrpc_body_v2, pb_padding), "%d != %d\n",
-                (int)offsetof(struct ptlrpc_body_v3, pb_padding), (int)offsetof(struct ptlrpc_body_v2, pb_padding));
-       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding), "%d != %d\n",
-                (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_mbits) == (int)offsetof(struct ptlrpc_body_v2, pb_mbits), "%d != %d\n",
+                (int)offsetof(struct ptlrpc_body_v3, pb_mbits), (int)offsetof(struct ptlrpc_body_v2, pb_mbits));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_mbits), "%d != %d\n",
+                (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_mbits));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_0) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_0), "%d != %d\n",
+                (int)offsetof(struct ptlrpc_body_v3, pb_padding64_0), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_0));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_0), "%d != %d\n",
+                (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_0));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_1) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_1), "%d != %d\n",
+                (int)offsetof(struct ptlrpc_body_v3, pb_padding64_1), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_1));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_1), "%d != %d\n",
+                (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_1));
+       LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_2) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_2), "%d != %d\n",
+                (int)offsetof(struct ptlrpc_body_v3, pb_padding64_2), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_2));
+       LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_2), "%d != %d\n",
+                (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_2));
        LASSERTF(MSG_PTLRPC_BODY_OFF == 0, "found %lld\n",
                 (long long)MSG_PTLRPC_BODY_OFF);
        LASSERTF(REQ_REC_OFF == 1, "found %lld\n",
@@ -856,42 +1039,30 @@ void lustre_assert_wire_constants(void)
                 (long long)DLM_REPLY_REC_OFF);
        LASSERTF(MSG_PTLRPC_HEADER_OFF == 31, "found %lld\n",
                 (long long)MSG_PTLRPC_HEADER_OFF);
-       LASSERTF(PTLRPC_MSG_VERSION == 0x00000003, "found 0x%.8x\n",
-               PTLRPC_MSG_VERSION);
-       LASSERTF(LUSTRE_VERSION_MASK == 0xffff0000, "found 0x%.8x\n",
-               LUSTRE_VERSION_MASK);
-       LASSERTF(LUSTRE_OBD_VERSION == 0x00010000, "found 0x%.8x\n",
-               LUSTRE_OBD_VERSION);
-       LASSERTF(LUSTRE_MDS_VERSION == 0x00020000, "found 0x%.8x\n",
-               LUSTRE_MDS_VERSION);
-       LASSERTF(LUSTRE_OST_VERSION == 0x00030000, "found 0x%.8x\n",
-               LUSTRE_OST_VERSION);
-       LASSERTF(LUSTRE_DLM_VERSION == 0x00040000, "found 0x%.8x\n",
-               LUSTRE_DLM_VERSION);
-       LASSERTF(LUSTRE_LOG_VERSION == 0x00050000, "found 0x%.8x\n",
-               LUSTRE_LOG_VERSION);
-       LASSERTF(LUSTRE_MGS_VERSION == 0x00060000, "found 0x%.8x\n",
-               LUSTRE_MGS_VERSION);
+       LASSERTF(PTLRPC_MSG_VERSION == 0x00000003UL, "found 0x%.8xUL\n",
+               (unsigned)PTLRPC_MSG_VERSION);
+       LASSERTF(LUSTRE_VERSION_MASK == 0xffff0000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_VERSION_MASK);
+       LASSERTF(LUSTRE_OBD_VERSION == 0x00010000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_OBD_VERSION);
+       LASSERTF(LUSTRE_MDS_VERSION == 0x00020000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_MDS_VERSION);
+       LASSERTF(LUSTRE_OST_VERSION == 0x00030000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_OST_VERSION);
+       LASSERTF(LUSTRE_DLM_VERSION == 0x00040000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_DLM_VERSION);
+       LASSERTF(LUSTRE_LOG_VERSION == 0x00050000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_LOG_VERSION);
+       LASSERTF(LUSTRE_MGS_VERSION == 0x00060000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_MGS_VERSION);
        LASSERTF(MSGHDR_AT_SUPPORT == 1, "found %lld\n",
                 (long long)MSGHDR_AT_SUPPORT);
        LASSERTF(MSGHDR_CKSUM_INCOMPAT18 == 2, "found %lld\n",
                 (long long)MSGHDR_CKSUM_INCOMPAT18);
-       LASSERTF(MSG_OP_FLAG_MASK == 0xffff0000UL, "found 0x%.8xUL\n",
-               (unsigned)MSG_OP_FLAG_MASK);
-       LASSERTF(MSG_OP_FLAG_SHIFT == 16, "found %lld\n",
-                (long long)MSG_OP_FLAG_SHIFT);
-       LASSERTF(MSG_GEN_FLAG_MASK == 0x0000ffffUL, "found 0x%.8xUL\n",
-               (unsigned)MSG_GEN_FLAG_MASK);
-       LASSERTF(MSG_LAST_REPLAY == 0x00000001UL, "found 0x%.8xUL\n",
-               (unsigned)MSG_LAST_REPLAY);
        LASSERTF(MSG_RESENT == 0x00000002UL, "found 0x%.8xUL\n",
                (unsigned)MSG_RESENT);
        LASSERTF(MSG_REPLAY == 0x00000004UL, "found 0x%.8xUL\n",
                (unsigned)MSG_REPLAY);
-       LASSERTF(MSG_DELAY_REPLAY == 0x00000010UL, "found 0x%.8xUL\n",
-               (unsigned)MSG_DELAY_REPLAY);
-       LASSERTF(MSG_VERSION_REPLAY == 0x00000020UL, "found 0x%.8xUL\n",
-               (unsigned)MSG_VERSION_REPLAY);
        LASSERTF(MSG_REQ_REPLAY_DONE == 0x00000040UL, "found 0x%.8xUL\n",
                (unsigned)MSG_REQ_REPLAY_DONE);
        LASSERTF(MSG_LOCK_REPLAY_DONE == 0x00000080UL, "found 0x%.8xUL\n",
@@ -906,8 +1077,6 @@ void lustre_assert_wire_constants(void)
                (unsigned)MSG_CONNECT_LIBCLIENT);
        LASSERTF(MSG_CONNECT_INITIAL == 0x00000020UL, "found 0x%.8xUL\n",
                (unsigned)MSG_CONNECT_INITIAL);
-       LASSERTF(MSG_CONNECT_ASYNC == 0x00000040UL, "found 0x%.8xUL\n",
-               (unsigned)MSG_CONNECT_ASYNC);
        LASSERTF(MSG_CONNECT_NEXT_VER == 0x00000080UL, "found 0x%.8xUL\n",
                (unsigned)MSG_CONNECT_NEXT_VER);
        LASSERTF(MSG_CONNECT_TRANSNO == 0x00000100UL, "found 0x%.8xUL\n",
@@ -940,22 +1109,22 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct obd_connect_data, ocd_ibits_known));
        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_ibits_known) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_ibits_known));
-       LASSERTF((int)offsetof(struct obd_connect_data, ocd_blocksize) == 32, "found %lld\n",
-                (long long)(int)offsetof(struct obd_connect_data, ocd_blocksize));
-       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_blocksize) == 1, "found %lld\n",
-                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_blocksize));
-       LASSERTF((int)offsetof(struct obd_connect_data, ocd_inodespace) == 33, "found %lld\n",
-                (long long)(int)offsetof(struct obd_connect_data, ocd_inodespace));
-       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_inodespace) == 1, "found %lld\n",
-                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_inodespace));
-       LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_extent) == 34, "found %lld\n",
-                (long long)(int)offsetof(struct obd_connect_data, ocd_grant_extent));
-       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_extent) == 2, "found %lld\n",
-                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_extent));
-       LASSERTF((int)offsetof(struct obd_connect_data, ocd_unused) == 36, "found %lld\n",
-                (long long)(int)offsetof(struct obd_connect_data, ocd_unused));
-       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_unused) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_unused));
+       LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_blkbits) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct obd_connect_data, ocd_grant_blkbits));
+       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_blkbits) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_blkbits));
+       LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_inobits) == 33, "found %lld\n",
+                (long long)(int)offsetof(struct obd_connect_data, ocd_grant_inobits));
+       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_inobits) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_inobits));
+       LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_tax_kb) == 34, "found %lld\n",
+                (long long)(int)offsetof(struct obd_connect_data, ocd_grant_tax_kb));
+       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_tax_kb) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_tax_kb));
+       LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_max_blks) == 36, "found %lld\n",
+                (long long)(int)offsetof(struct obd_connect_data, ocd_grant_max_blks));
+       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_max_blks) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_max_blks));
        LASSERTF((int)offsetof(struct obd_connect_data, ocd_transno) == 40, "found %lld\n",
                 (long long)(int)offsetof(struct obd_connect_data, ocd_transno));
        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_transno) == 8, "found %lld\n",
@@ -992,10 +1161,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct obd_connect_data, padding1));
        LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding1) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct obd_connect_data *)0)->padding1));
-       LASSERTF((int)offsetof(struct obd_connect_data, padding2) == 80, "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, ocd_connect_flags2) == 80, "found %lld\n",
+                (long long)(int)offsetof(struct obd_connect_data, ocd_connect_flags2));
+       LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags2));
        LASSERTF((int)offsetof(struct obd_connect_data, padding3) == 88, "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",
@@ -1066,16 +1235,16 @@ void lustre_assert_wire_constants(void)
                 OBD_CONNECT_ACL);
        LASSERTF(OBD_CONNECT_XATTR == 0x100ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_XATTR);
-       LASSERTF(OBD_CONNECT_CROW == 0x200ULL, "found 0x%.16llxULL\n",
-                OBD_CONNECT_CROW);
+       LASSERTF(OBD_CONNECT_LARGE_ACL == 0x200ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_LARGE_ACL);
        LASSERTF(OBD_CONNECT_TRUNCLOCK == 0x400ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_TRUNCLOCK);
        LASSERTF(OBD_CONNECT_TRANSNO == 0x800ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_TRANSNO);
        LASSERTF(OBD_CONNECT_IBITS == 0x1000ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_IBITS);
-       LASSERTF(OBD_CONNECT_JOIN == 0x2000ULL, "found 0x%.16llxULL\n",
-                OBD_CONNECT_JOIN);
+       LASSERTF(OBD_CONNECT_BARRIER == 0x2000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_BARRIER);
        LASSERTF(OBD_CONNECT_ATTRFID == 0x4000ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_ATTRFID);
        LASSERTF(OBD_CONNECT_NODEVOH == 0x8000ULL, "found 0x%.16llxULL\n",
@@ -1162,12 +1331,72 @@ void lustre_assert_wire_constants(void)
                 OBD_CONNECT_MULTIMODRPCS);
        LASSERTF(OBD_CONNECT_DIR_STRIPE == 0x400000000000000ULL, "found 0x%.16llxULL\n",
                 OBD_CONNECT_DIR_STRIPE);
+       LASSERTF(OBD_CONNECT_SUBTREE == 0x800000000000000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_SUBTREE);
+       LASSERTF(OBD_CONNECT_LOCKAHEAD_OLD == 0x1000000000000000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_LOCKAHEAD_OLD);
+       LASSERTF(OBD_CONNECT_BULK_MBITS == 0x2000000000000000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_BULK_MBITS);
+       LASSERTF(OBD_CONNECT_OBDOPACK == 0x4000000000000000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_OBDOPACK);
+       LASSERTF(OBD_CONNECT_FLAGS2 == 0x8000000000000000ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT_FLAGS2);
+       LASSERTF(OBD_CONNECT2_FILE_SECCTX == 0x1ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_FILE_SECCTX);
+       LASSERTF(OBD_CONNECT2_LOCKAHEAD == 0x2ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_LOCKAHEAD);
+       LASSERTF(OBD_CONNECT2_DIR_MIGRATE == 0x4ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_DIR_MIGRATE);
+       LASSERTF(OBD_CONNECT2_FLR == 0x20ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_FLR);
+       LASSERTF(OBD_CONNECT2_WBC_INTENTS == 0x40ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_WBC_INTENTS);
+       LASSERTF(OBD_CONNECT2_LOCK_CONVERT == 0x80ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_LOCK_CONVERT);
+       LASSERTF(OBD_CONNECT2_ARCHIVE_ID_ARRAY == 0x100ULL, "found 0x%.16llxULL\n",
+                OBD_CONNECT2_ARCHIVE_ID_ARRAY);
        LASSERTF(OBD_CKSUM_CRC32 == 0x00000001UL, "found 0x%.8xUL\n",
                (unsigned)OBD_CKSUM_CRC32);
        LASSERTF(OBD_CKSUM_ADLER == 0x00000002UL, "found 0x%.8xUL\n",
                (unsigned)OBD_CKSUM_ADLER);
        LASSERTF(OBD_CKSUM_CRC32C == 0x00000004UL, "found 0x%.8xUL\n",
                (unsigned)OBD_CKSUM_CRC32C);
+       LASSERTF(OBD_CKSUM_RESERVED == 0x00000008UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_RESERVED);
+       LASSERTF(OBD_CKSUM_T10IP512 == 0x00000010UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_T10IP512);
+       LASSERTF(OBD_CKSUM_T10IP4K == 0x00000020UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_T10IP4K);
+       LASSERTF(OBD_CKSUM_T10CRC512 == 0x00000040UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_T10CRC512);
+       LASSERTF(OBD_CKSUM_T10CRC4K == 0x00000080UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_T10CRC4K);
+       LASSERTF(OBD_CKSUM_T10_TOP == 0x00000002UL, "found 0x%.8xUL\n",
+               (unsigned)OBD_CKSUM_T10_TOP);
+
+       /* Checks for struct ost_layout */
+       LASSERTF((int)sizeof(struct ost_layout) == 28, "found %lld\n",
+                (long long)(int)sizeof(struct ost_layout));
+       LASSERTF((int)offsetof(struct ost_layout, ol_stripe_size) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct ost_layout, ol_stripe_size));
+       LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_stripe_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ost_layout *)0)->ol_stripe_size));
+       LASSERTF((int)offsetof(struct ost_layout, ol_stripe_count) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct ost_layout, ol_stripe_count));
+       LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_stripe_count) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ost_layout *)0)->ol_stripe_count));
+       LASSERTF((int)offsetof(struct ost_layout, ol_comp_start) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct ost_layout, ol_comp_start));
+       LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_start) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_start));
+       LASSERTF((int)offsetof(struct ost_layout, ol_comp_end) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct ost_layout, ol_comp_end));
+       LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_end) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_end));
+       LASSERTF((int)offsetof(struct ost_layout, ol_comp_id) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct ost_layout, ol_comp_id));
+       LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_id) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_id));
 
        /* Checks for struct obdo */
        LASSERTF((int)sizeof(struct obdo) == 208, "found %lld\n",
@@ -1256,10 +1485,14 @@ void lustre_assert_wire_constants(void)
                 (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_layout) == 136, "found %lld\n",
+                (long long)(int)offsetof(struct obdo, o_layout));
+       LASSERTF((int)sizeof(((struct obdo *)0)->o_layout) == 28, "found %lld\n",
+                (long long)(int)sizeof(((struct obdo *)0)->o_layout));
+       LASSERTF((int)offsetof(struct obdo, o_layout_version) == 164, "found %lld\n",
+                (long long)(int)offsetof(struct obdo, o_layout_version));
+       LASSERTF((int)sizeof(((struct obdo *)0)->o_layout_version) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct obdo *)0)->o_layout_version));
        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",
@@ -1272,9 +1505,13 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct obdo, o_data_version));
        LASSERTF((int)sizeof(((struct obdo *)0)->o_data_version) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct obdo *)0)->o_data_version));
-       LASSERTF((int)offsetof(struct obdo, o_padding_4) == 184, "found %lld\n",
+       LASSERTF((int)offsetof(struct obdo, o_projid) == 184, "found %lld\n",
+                (long long)(int)offsetof(struct obdo, o_projid));
+       LASSERTF((int)sizeof(((struct obdo *)0)->o_projid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct obdo *)0)->o_projid));
+       LASSERTF((int)offsetof(struct obdo, o_padding_4) == 188, "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",
+       LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_4) == 4, "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));
@@ -1356,28 +1593,24 @@ void lustre_assert_wire_constants(void)
                 OBD_MD_FLXATTRRM);
        LASSERTF(OBD_MD_FLACL == (0x0000008000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLACL);
-       LASSERTF(OBD_MD_FLRMTPERM == (0x0000010000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLRMTPERM);
        LASSERTF(OBD_MD_FLMDSCAPA == (0x0000020000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLMDSCAPA);
        LASSERTF(OBD_MD_FLOSSCAPA == (0x0000040000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLOSSCAPA);
-       LASSERTF(OBD_MD_FLCKSPLIT == (0x0000080000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLCKSPLIT);
        LASSERTF(OBD_MD_FLCROSSREF == (0x0000100000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLCROSSREF);
        LASSERTF(OBD_MD_FLGETATTRLOCK == (0x0000200000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLGETATTRLOCK);
-       LASSERTF(OBD_MD_FLRMTLSETFACL == (0x0001000000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLRMTLSETFACL);
-       LASSERTF(OBD_MD_FLRMTLGETFACL == (0x0002000000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLRMTLGETFACL);
-       LASSERTF(OBD_MD_FLRMTRSETFACL == (0x0004000000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLRMTRSETFACL);
-       LASSERTF(OBD_MD_FLRMTRGETFACL == (0x0008000000000000ULL), "found 0x%.16llxULL\n",
-                OBD_MD_FLRMTRGETFACL);
        LASSERTF(OBD_MD_FLDATAVERSION == (0x0010000000000000ULL), "found 0x%.16llxULL\n",
                 OBD_MD_FLDATAVERSION);
+       LASSERTF(OBD_MD_CLOSE_INTENT_EXECED == (0x0020000000000000ULL), "found 0x%.16llxULL\n",
+                OBD_MD_CLOSE_INTENT_EXECED);
+       LASSERTF(OBD_MD_DEFAULT_MEA == (0x0040000000000000ULL), "found 0x%.16llxULL\n",
+                OBD_MD_DEFAULT_MEA);
+       LASSERTF(OBD_MD_FLOSTLAYOUT == (0x0080000000000000ULL), "found 0x%.16llxULL\n",
+                OBD_MD_FLOSTLAYOUT);
+       LASSERTF(OBD_MD_FLPROJID == (0x0100000000000000ULL), "found 0x%.16llxULL\n",
+                OBD_MD_FLPROJID);
        CLASSERT(OBD_FL_INLINEDATA == 0x00000001);
        CLASSERT(OBD_FL_OBDMDEXISTS == 0x00000002);
        CLASSERT(OBD_FL_DELORPHAN == 0x00000004);
@@ -1392,7 +1625,10 @@ void lustre_assert_wire_constants(void)
        CLASSERT(OBD_FL_CKSUM_CRC32 == 0x00001000);
        CLASSERT(OBD_FL_CKSUM_ADLER == 0x00002000);
        CLASSERT(OBD_FL_CKSUM_CRC32C == 0x00004000);
-       CLASSERT(OBD_FL_CKSUM_RSVD2 == 0x00008000);
+       CLASSERT(OBD_FL_CKSUM_T10IP512 == 0x00005000);
+       CLASSERT(OBD_FL_CKSUM_T10IP4K == 0x00006000);
+       CLASSERT(OBD_FL_CKSUM_T10CRC512 == 0x00007000);
+       CLASSERT(OBD_FL_CKSUM_T10CRC4K == 0x00008000);
        CLASSERT(OBD_FL_CKSUM_RSVD3 == 0x00010000);
        CLASSERT(OBD_FL_SHRINK_GRANT == 0x00020000);
        CLASSERT(OBD_FL_MMAP == 0x00040000);
@@ -1400,7 +1636,6 @@ void lustre_assert_wire_constants(void)
        CLASSERT(OBD_FL_NOSPC_BLK == 0x00100000);
        CLASSERT(OBD_FL_FLUSH == 0x00200000);
        CLASSERT(OBD_FL_SHORT_IO == 0x00400000);
-       CLASSERT(OBD_FL_LOCAL_MASK == 0xf0000000);
 
        /* Checks for struct lov_ost_data_v1 */
        LASSERTF((int)sizeof(struct lov_ost_data_v1) == 24, "found %lld\n",
@@ -1479,10 +1714,10 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_layout_gen) == 2, "found %lld\n",
                 (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_layout_gen));
        CLASSERT(LOV_MAXPOOLNAME == 15);
-       LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pool_name[16]) == 48, "found %lld\n",
-                (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pool_name[16]));
-       LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[16]) == 1, "found %lld\n",
-                (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[16]));
+       LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pool_name[15 + 1]) == 48, "found %lld\n",
+                (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pool_name[15 + 1]));
+       LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[15 + 1]) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[15 + 1]));
        LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_objects[0]) == 48, "found %lld\n",
                 (long long)(int)offsetof(struct lov_mds_md_v3, lmm_objects[0]));
        LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_objects[0]) == 24, "found %lld\n",
@@ -1492,11 +1727,100 @@ void lustre_assert_wire_constants(void)
                (unsigned)LOV_PATTERN_RAID0);
        LASSERTF(LOV_PATTERN_RAID1 == 0x00000002UL, "found 0x%.8xUL\n",
                (unsigned)LOV_PATTERN_RAID1);
-       LASSERTF(LOV_PATTERN_FIRST == 0x00000100UL, "found 0x%.8xUL\n",
-               (unsigned)LOV_PATTERN_FIRST);
+       LASSERTF(LOV_PATTERN_MDT == 0x00000100UL, "found 0x%.8xUL\n",
+               (unsigned)LOV_PATTERN_MDT);
        LASSERTF(LOV_PATTERN_CMOBD == 0x00000200UL, "found 0x%.8xUL\n",
                (unsigned)LOV_PATTERN_CMOBD);
 
+       /* Checks for struct lov_comp_md_entry_v1 */
+       LASSERTF((int)sizeof(struct lov_comp_md_entry_v1) == 48, "found %lld\n",
+                (long long)(int)sizeof(struct lov_comp_md_entry_v1));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_id) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_id));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_id) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_id));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_flags) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_flags));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_flags) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_flags));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_extent) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_extent));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_extent) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_extent));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_offset) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_offset));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_offset) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_offset));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_size) == 28, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_size));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_size));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_layout_gen) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_layout_gen));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_layout_gen) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_layout_gen));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_1) == 36, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_1));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_1) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_1));
+       LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_2) == 40, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_2));
+       LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_2));
+       LASSERTF(LCME_FL_INIT == 0x00000010UL, "found 0x%.8xUL\n",
+               (unsigned)LCME_FL_INIT);
+       LASSERTF(LCME_FL_NEG == 0x80000000UL, "found 0x%.8xUL\n",
+               (unsigned)LCME_FL_NEG);
+
+       /* Checks for struct lov_comp_md_v1 */
+       LASSERTF((int)sizeof(struct lov_comp_md_v1) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct lov_comp_md_v1));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_magic) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_magic));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_magic) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_magic));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_size) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_size));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_size));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_layout_gen) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_layout_gen));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_layout_gen) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_layout_gen));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_flags) == 12, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_flags));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_flags) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_flags));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_entry_count) == 14, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_entry_count));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entry_count) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entry_count));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_mirror_count) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_mirror_count));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_mirror_count) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_mirror_count));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_padding1) == 18, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_padding1));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding1) == 6, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding1));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_padding2) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_padding2));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding2));
+       LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_entries[0]) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct lov_comp_md_v1, lcm_entries[0]));
+       LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entries[0]) == 48, "found %lld\n",
+                (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entries[0]));
+       CLASSERT(LOV_MAGIC_COMP_V1 == (0x0BD60000 | 0x0BD0));
+       LASSERTF(LCM_FL_NONE == 0, "found %lld\n",
+                (long long)LCM_FL_NONE);
+       LASSERTF(LCM_FL_RDONLY == 1, "found %lld\n",
+                (long long)LCM_FL_RDONLY);
+       LASSERTF(LCM_FL_WRITE_PENDING == 2, "found %lld\n",
+                (long long)LCM_FL_WRITE_PENDING);
+       LASSERTF(LCM_FL_SYNC_PENDING == 3, "found %lld\n",
+                (long long)LCM_FL_SYNC_PENDING);
+
        /* Checks for struct lmv_mds_md_v1 */
        LASSERTF((int)sizeof(struct lmv_mds_md_v1) == 56, "found %lld\n",
                 (long long)(int)sizeof(struct lmv_mds_md_v1));
@@ -1532,10 +1856,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_padding3));
        LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding3) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding3));
-       LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[16]) == 56, "found %lld\n",
-                (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[16]));
-       LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[16]) == 1, "found %lld\n",
-                (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[16]));
+       LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[15]) == 55, "found %lld\n",
+                (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[15]));
+       LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[15]) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[15]));
        LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_stripe_fids[0]) == 56, "found %lld\n",
                 (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_stripe_fids[0]));
        LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_stripe_fids[0]) == 16, "found %lld\n",
@@ -1639,6 +1963,8 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct obd_ioobj, ioo_bufcnt));
        LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_bufcnt) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_bufcnt));
+       LASSERTF(IOOBJ_MAX_BRW_BITS == 16, "found %lld\n",
+                (long long)IOOBJ_MAX_BRW_BITS);
 
        /* Checks for union lquota_id */
        LASSERTF((int)sizeof(union lquota_id) == 16, "found %lld\n",
@@ -1951,6 +2277,33 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct ll_fid *)0)->f_type) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct ll_fid *)0)->f_type));
 
+       LASSERTF(MDS_CROSS_REF == 0x00000002UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CROSS_REF);
+       LASSERTF(MDS_PERM_BYPASS == 0x00000008UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_PERM_BYPASS);
+       LASSERTF(MDS_QUOTA_IGNORE == 0x00000020UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_QUOTA_IGNORE);
+       LASSERTF(MDS_KEEP_ORPHAN == 0x00000080UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_KEEP_ORPHAN);
+       LASSERTF(MDS_RECOV_OPEN == 0x00000100UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_RECOV_OPEN);
+       LASSERTF(MDS_DATA_MODIFIED == 0x00000200UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_DATA_MODIFIED);
+       LASSERTF(MDS_CREATE_VOLATILE == 0x00000400UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CREATE_VOLATILE);
+       LASSERTF(MDS_OWNEROVERRIDE == 0x00000800UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_OWNEROVERRIDE);
+       LASSERTF(MDS_HSM_RELEASE == 0x00001000UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_HSM_RELEASE);
+       LASSERTF(MDS_CLOSE_LAYOUT_SWAP == 0x00004000UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CLOSE_LAYOUT_SWAP);
+       LASSERTF(MDS_CLOSE_LAYOUT_MERGE == 0x00008000UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CLOSE_LAYOUT_MERGE);
+       LASSERTF(MDS_CLOSE_RESYNC_DONE == 0x00010000UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CLOSE_RESYNC_DONE);
+       LASSERTF(MDS_CLOSE_LAYOUT_SPLIT == 0x00020000UL, "found 0x%.8xUL\n",
+               (unsigned)MDS_CLOSE_LAYOUT_SPLIT);
+
        /* Checks for struct mdt_body */
        LASSERTF((int)sizeof(struct mdt_body) == 216, "found %lld\n",
                 (long long)(int)sizeof(struct mdt_body));
@@ -1990,6 +2343,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct mdt_body, mbo_blocks));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_blocks) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_body *)0)->mbo_blocks));
+       LASSERTF((int)offsetof(struct mdt_body, mbo_version) == 88, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_body, mbo_version));
+       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_version) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_version));
        LASSERTF((int)offsetof(struct mdt_body, mbo_t_state) == 96, "found %lld\n",
                 (long long)(int)offsetof(struct mdt_body, mbo_t_state));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_t_state) == 8, "found %lld\n",
@@ -2030,10 +2387,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct mdt_body, mbo_nlink));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_nlink) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_body *)0)->mbo_nlink));
-       LASSERTF((int)offsetof(struct mdt_body, mbo_unused2) == 140, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_body, mbo_unused2));
-       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_unused2) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_unused2));
+       LASSERTF((int)offsetof(struct mdt_body, mbo_layout_gen) == 140, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_body, mbo_layout_gen));
+       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_layout_gen) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_layout_gen));
        LASSERTF((int)offsetof(struct mdt_body, mbo_suppgid) == 144, "found %lld\n",
                 (long long)(int)offsetof(struct mdt_body, mbo_suppgid));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_suppgid) == 4, "found %lld\n",
@@ -2062,18 +2419,18 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct mdt_body, mbo_gid_h));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_gid_h) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_body *)0)->mbo_gid_h));
-       LASSERTF((int)offsetof(struct mdt_body, mbo_padding_5) == 172, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_body, mbo_padding_5));
-       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_5) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_padding_5));
-       LASSERTF((int)offsetof(struct mdt_body, mbo_padding_6) == 176, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_body, mbo_padding_6));
-       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_6) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_padding_6));
-       LASSERTF((int)offsetof(struct mdt_body, mbo_padding_7) == 184, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_body, mbo_padding_7));
-       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_7) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_padding_7));
+       LASSERTF((int)offsetof(struct mdt_body, mbo_projid) == 172, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_body, mbo_projid));
+       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_projid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_projid));
+       LASSERTF((int)offsetof(struct mdt_body, mbo_dom_size) == 176, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_body, mbo_dom_size));
+       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_dom_size) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_dom_size));
+       LASSERTF((int)offsetof(struct mdt_body, mbo_dom_blocks) == 184, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_body, mbo_dom_blocks));
+       LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_dom_blocks) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_body *)0)->mbo_dom_blocks));
        LASSERTF((int)offsetof(struct mdt_body, mbo_padding_8) == 192, "found %lld\n",
                 (long long)(int)offsetof(struct mdt_body, mbo_padding_8));
        LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_8) == 8, "found %lld\n",
@@ -2126,16 +2483,28 @@ void lustre_assert_wire_constants(void)
                        (long long)MDS_OPEN_NEWSTRIPE);
        LASSERTF(MDS_OPEN_VOLATILE == 00000000000400000000000ULL, "found 0%.22lloULL\n",
                        (long long)MDS_OPEN_VOLATILE);
-       LASSERTF(LUSTRE_SYNC_FL == 0x00000008, "found 0x%.8x\n",
-               LUSTRE_SYNC_FL);
-       LASSERTF(LUSTRE_IMMUTABLE_FL == 0x00000010, "found 0x%.8x\n",
-               LUSTRE_IMMUTABLE_FL);
-       LASSERTF(LUSTRE_APPEND_FL == 0x00000020, "found 0x%.8x\n",
-               LUSTRE_APPEND_FL);
-       LASSERTF(LUSTRE_NOATIME_FL == 0x00000080, "found 0x%.8x\n",
-               LUSTRE_NOATIME_FL);
-       LASSERTF(LUSTRE_DIRSYNC_FL == 0x00010000, "found 0x%.8x\n",
-               LUSTRE_DIRSYNC_FL);
+       LASSERTF(LUSTRE_SYNC_FL == 0x00000008UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_SYNC_FL);
+       LASSERTF(LUSTRE_IMMUTABLE_FL == 0x00000010UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_IMMUTABLE_FL);
+       LASSERTF(LUSTRE_APPEND_FL == 0x00000020UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_APPEND_FL);
+       LASSERTF(LUSTRE_NODUMP_FL == 0x00000040UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_NODUMP_FL);
+       LASSERTF(LUSTRE_NOATIME_FL == 0x00000080UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_NOATIME_FL);
+       LASSERTF(LUSTRE_INDEX_FL == 0x00001000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_INDEX_FL);
+       LASSERTF(LUSTRE_ORPHAN_FL == 0x00002000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_ORPHAN_FL);
+       LASSERTF(LUSTRE_DIRSYNC_FL == 0x00010000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_DIRSYNC_FL);
+       LASSERTF(LUSTRE_TOPDIR_FL == 0x00020000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_TOPDIR_FL);
+       LASSERTF(LUSTRE_DIRECTIO_FL == 0x00100000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_DIRECTIO_FL);
+       LASSERTF(LUSTRE_INLINE_DATA_FL == 0x10000000UL, "found 0x%.8xUL\n",
+               (unsigned)LUSTRE_INLINE_DATA_FL);
        LASSERTF(MDS_INODELOCK_LOOKUP == 0x000001, "found 0x%.8x\n",
                MDS_INODELOCK_LOOKUP);
        LASSERTF(MDS_INODELOCK_UPDATE == 0x000002, "found 0x%.8x\n",
@@ -2165,44 +2534,6 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->mio_padding) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_ioepoch *)0)->mio_padding));
 
-       /* Checks for struct mdt_remote_perm */
-       LASSERTF((int)sizeof(struct mdt_remote_perm) == 32, "found %lld\n",
-                (long long)(int)sizeof(struct mdt_remote_perm));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_uid) == 0, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_uid));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_uid) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_uid));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_gid) == 4, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_gid));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_gid) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_gid));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsuid) == 8, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_fsuid));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsuid));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_fsgid) == 16, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_fsgid));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_fsgid));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_access_perm) == 24, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_access_perm));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_access_perm));
-       LASSERTF((int)offsetof(struct mdt_remote_perm, rp_padding) == 28, "found %lld\n",
-                (long long)(int)offsetof(struct mdt_remote_perm, rp_padding));
-       LASSERTF((int)sizeof(((struct mdt_remote_perm *)0)->rp_padding) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct mdt_remote_perm *)0)->rp_padding));
-       LASSERTF(CFS_SETUID_PERM == 0x00000001UL, "found 0x%.8xUL\n",
-               (unsigned)CFS_SETUID_PERM);
-       LASSERTF(CFS_SETGID_PERM == 0x00000002UL, "found 0x%.8xUL\n",
-               (unsigned)CFS_SETGID_PERM);
-       LASSERTF(CFS_SETGRP_PERM == 0x00000004UL, "found 0x%.8xUL\n",
-               (unsigned)CFS_SETGRP_PERM);
-       LASSERTF(CFS_RMTACL_PERM == 0x00000008UL, "found 0x%.8xUL\n",
-               (unsigned)CFS_RMTACL_PERM);
-       LASSERTF(CFS_RMTOWN_PERM == 0x00000010UL, "found 0x%.8xUL\n",
-               (unsigned)CFS_RMTOWN_PERM);
-
        /* 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));
@@ -2294,10 +2625,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct mdt_rec_setattr, sa_bias));
        LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_bias) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_bias));
-       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_projid) == 124, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_setattr, sa_projid));
+       LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_projid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_projid));
        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",
@@ -2795,6 +3126,98 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct mdt_rec_setxattr *)0)->sx_padding_11));
 
+       /* Checks for struct mdt_rec_resync */
+       LASSERTF((int)sizeof(struct mdt_rec_resync) == 136, "found %lld\n",
+                (long long)(int)sizeof(struct mdt_rec_resync));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_opcode) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_opcode));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_opcode) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_opcode));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_cap) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_cap));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_cap) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_cap));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_fsuid) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_fsuid));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_fsuid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_fsuid));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_fsuid_h) == 12, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_fsuid_h));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_fsuid_h) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_fsuid_h));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_fsgid) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_fsgid));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_fsgid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_fsgid));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_fsgid_h) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_fsgid_h));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_fsgid_h) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_fsgid_h));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_suppgid1) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_suppgid1));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid1) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid1));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_suppgid1_h) == 28, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_suppgid1_h));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid1_h) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid1_h));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_suppgid2) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_suppgid2));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid2) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid2));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_suppgid2_h) == 36, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_suppgid2_h));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid2_h) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_suppgid2_h));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_fid) == 40, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_fid));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_fid) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_fid));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding0) == 56, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding0));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding0) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding0));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding1) == 80, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding1));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding1) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding1));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding2) == 88, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding2));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding2));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding3) == 96, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding3));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding3) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding3));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding4) == 104, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding4));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding4) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding4));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_bias) == 112, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_bias));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_bias) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_bias));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding5) == 116, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding5));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding5) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding5));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding6) == 120, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding6));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding6) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding6));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding7) == 124, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding7));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding7) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding7));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding8) == 128, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding8));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding8) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding8));
+       LASSERTF((int)offsetof(struct mdt_rec_resync, rs_padding9) == 132, "found %lld\n",
+                (long long)(int)offsetof(struct mdt_rec_resync, rs_padding9));
+       LASSERTF((int)sizeof(((struct mdt_rec_resync *)0)->rs_padding9) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mdt_rec_resync *)0)->rs_padding9));
+
        /* Checks for struct mdt_rec_reint */
        LASSERTF((int)sizeof(struct mdt_rec_reint) == 136, "found %lld\n",
                 (long long)(int)sizeof(struct mdt_rec_reint));
@@ -3014,12 +3437,16 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)sizeof(((struct ldlm_extent *)0)->gid));
 
        /* Checks for struct ldlm_inodebits */
-       LASSERTF((int)sizeof(struct ldlm_inodebits) == 8, "found %lld\n",
+       LASSERTF((int)sizeof(struct ldlm_inodebits) == 16, "found %lld\n",
                 (long long)(int)sizeof(struct ldlm_inodebits));
        LASSERTF((int)offsetof(struct ldlm_inodebits, bits) == 0, "found %lld\n",
                 (long long)(int)offsetof(struct ldlm_inodebits, bits));
        LASSERTF((int)sizeof(((struct ldlm_inodebits *)0)->bits) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct ldlm_inodebits *)0)->bits));
+       LASSERTF((int)offsetof(struct ldlm_inodebits, try_bits) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct ldlm_inodebits, try_bits));
+       LASSERTF((int)sizeof(((struct ldlm_inodebits *)0)->try_bits) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ldlm_inodebits *)0)->try_bits));
 
        /* Checks for struct ldlm_flock_wire */
        LASSERTF((int)sizeof(struct ldlm_flock_wire) == 32, "found %lld\n",
@@ -3052,6 +3479,24 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct ldlm_intent, opc));
        LASSERTF((int)sizeof(((struct ldlm_intent *)0)->opc) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct ldlm_intent *)0)->opc));
+       LASSERTF(IT_OPEN == 1, "found %lld\n",
+                (long long)IT_OPEN);
+       LASSERTF(IT_CREAT == 2, "found %lld\n",
+                (long long)IT_CREAT);
+       LASSERTF(IT_READDIR == 4, "found %lld\n",
+                (long long)IT_READDIR);
+       LASSERTF(IT_GETATTR == 8, "found %lld\n",
+                (long long)IT_GETATTR);
+       LASSERTF(IT_LOOKUP == 16, "found %lld\n",
+                (long long)IT_LOOKUP);
+       LASSERTF(IT_GETXATTR == 128, "found %lld\n",
+                (long long)IT_GETXATTR);
+       LASSERTF(IT_LAYOUT == 1024, "found %lld\n",
+                (long long)IT_LAYOUT);
+       LASSERTF(IT_QUOTA_DQACQ == 2048, "found %lld\n",
+                (long long)IT_QUOTA_DQACQ);
+       LASSERTF(IT_QUOTA_CONN == 4096, "found %lld\n",
+                (long long)IT_QUOTA_CONN);
 
        /* Checks for struct ldlm_resource_desc */
        LASSERTF((int)sizeof(struct ldlm_resource_desc) == 40, "found %lld\n",
@@ -3060,10 +3505,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct ldlm_resource_desc, lr_type));
        LASSERTF((int)sizeof(((struct ldlm_resource_desc *)0)->lr_type) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct ldlm_resource_desc *)0)->lr_type));
-       LASSERTF((int)offsetof(struct ldlm_resource_desc, lr_padding) == 4, "found %lld\n",
-                (long long)(int)offsetof(struct ldlm_resource_desc, lr_padding));
-       LASSERTF((int)sizeof(((struct ldlm_resource_desc *)0)->lr_padding) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct ldlm_resource_desc *)0)->lr_padding));
+       LASSERTF((int)offsetof(struct ldlm_resource_desc, lr_pad) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct ldlm_resource_desc, lr_pad));
+       LASSERTF((int)sizeof(((struct ldlm_resource_desc *)0)->lr_pad) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ldlm_resource_desc *)0)->lr_pad));
        LASSERTF((int)offsetof(struct ldlm_resource_desc, lr_name) == 8, "found %lld\n",
                 (long long)(int)offsetof(struct ldlm_resource_desc, lr_name));
        LASSERTF((int)sizeof(((struct ldlm_resource_desc *)0)->lr_name) == 32, "found %lld\n",
@@ -3259,6 +3704,38 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct ldlm_gl_lquota_desc *)0)->gl_pad2) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct ldlm_gl_lquota_desc *)0)->gl_pad2));
 
+       /* Checks for struct ldlm_gl_barrier_desc */
+       LASSERTF((int)sizeof(struct ldlm_gl_barrier_desc) == 16, "found %lld\n",
+                (long long)(int)sizeof(struct ldlm_gl_barrier_desc));
+       LASSERTF((int)offsetof(struct ldlm_gl_barrier_desc, lgbd_status) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct ldlm_gl_barrier_desc, lgbd_status));
+       LASSERTF((int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_status) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_status));
+       LASSERTF((int)offsetof(struct ldlm_gl_barrier_desc, lgbd_timeout) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct ldlm_gl_barrier_desc, lgbd_timeout));
+       LASSERTF((int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_timeout) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_timeout));
+       LASSERTF((int)offsetof(struct ldlm_gl_barrier_desc, lgbd_padding) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct ldlm_gl_barrier_desc, lgbd_padding));
+       LASSERTF((int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_padding) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct ldlm_gl_barrier_desc *)0)->lgbd_padding));
+
+       /* Checks for struct barrier_lvb */
+       LASSERTF((int)sizeof(struct barrier_lvb) == 16, "found %lld\n",
+                (long long)(int)sizeof(struct barrier_lvb));
+       LASSERTF((int)offsetof(struct barrier_lvb, lvb_status) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct barrier_lvb, lvb_status));
+       LASSERTF((int)sizeof(((struct barrier_lvb *)0)->lvb_status) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct barrier_lvb *)0)->lvb_status));
+       LASSERTF((int)offsetof(struct barrier_lvb, lvb_index) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct barrier_lvb, lvb_index));
+       LASSERTF((int)sizeof(((struct barrier_lvb *)0)->lvb_index) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct barrier_lvb *)0)->lvb_index));
+       LASSERTF((int)offsetof(struct barrier_lvb, lvb_padding) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct barrier_lvb, lvb_padding));
+       LASSERTF((int)sizeof(((struct barrier_lvb *)0)->lvb_padding) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct barrier_lvb *)0)->lvb_padding));
+
        /* Checks for struct mgs_send_param */
        LASSERTF((int)sizeof(struct mgs_send_param) == 1024, "found %lld\n",
                 (long long)(int)sizeof(struct mgs_send_param));
@@ -3496,6 +3973,10 @@ void lustre_assert_wire_constants(void)
                 (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));
+       LASSERTF((int)offsetof(struct llog_setattr64_rec_v2, lsr_projid) == 56, "found %lld\n",
+                (long long)(int)offsetof(struct llog_setattr64_rec_v2, lsr_projid));
+       LASSERTF((int)sizeof(((struct llog_setattr64_rec_v2 *)0)->lsr_projid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct llog_setattr64_rec_v2 *)0)->lsr_projid));
 
        /* Checks for struct llog_size_change_rec */
        LASSERTF((int)sizeof(struct llog_size_change_rec) == 64, "found %lld\n",
@@ -3624,10 +4105,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct llog_changelog_user_rec, cur_id));
        LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_id));
-       LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_padding) == 20, "found %lld\n",
-                (long long)(int)offsetof(struct llog_changelog_user_rec, cur_padding));
-       LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_padding));
+       LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_time) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct llog_changelog_user_rec, cur_time));
+       LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_time) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct llog_changelog_user_rec *)0)->cur_time));
        LASSERTF((int)offsetof(struct llog_changelog_user_rec, cur_endrec) == 24, "found %lld\n",
                 (long long)(int)offsetof(struct llog_changelog_user_rec, cur_endrec));
        LASSERTF((int)sizeof(((struct llog_changelog_user_rec *)0)->cur_endrec) == 8, "found %lld\n",
@@ -3700,38 +4181,6 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct llog_log_hdr, llh_tgtuuid));
        LASSERTF((int)sizeof(((struct llog_log_hdr *)0)->llh_tgtuuid) == 40, "found %lld\n",
                 (long long)(int)sizeof(((struct llog_log_hdr *)0)->llh_tgtuuid));
-       LASSERTF((int)offsetof(struct llog_log_hdr, llh_reserved) == 84, "found %lld\n",
-                (long long)(int)offsetof(struct llog_log_hdr, llh_reserved));
-       LASSERTF((int)sizeof(((struct llog_log_hdr *)0)->llh_reserved) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_log_hdr *)0)->llh_reserved));
-       LASSERTF((int)offsetof(struct llog_log_hdr, llh_bitmap) == 88, "found %lld\n",
-                (long long)(int)offsetof(struct llog_log_hdr, llh_bitmap));
-       LASSERTF((int)sizeof(((struct llog_log_hdr *)0)->llh_bitmap) == 8096, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_log_hdr *)0)->llh_bitmap));
-       LASSERTF((int)offsetof(struct llog_log_hdr, llh_tail) == 8184, "found %lld\n",
-                (long long)(int)offsetof(struct llog_log_hdr, llh_tail));
-       LASSERTF((int)sizeof(((struct llog_log_hdr *)0)->llh_tail) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_log_hdr *)0)->llh_tail));
-
-       /* Checks for struct llog_cookie */
-       LASSERTF((int)sizeof(struct llog_cookie) == 32, "found %lld\n",
-                (long long)(int)sizeof(struct llog_cookie));
-       LASSERTF((int)offsetof(struct llog_cookie, lgc_lgl) == 0, "found %lld\n",
-                (long long)(int)offsetof(struct llog_cookie, lgc_lgl));
-       LASSERTF((int)sizeof(((struct llog_cookie *)0)->lgc_lgl) == 20, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_cookie *)0)->lgc_lgl));
-       LASSERTF((int)offsetof(struct llog_cookie, lgc_subsys) == 20, "found %lld\n",
-                (long long)(int)offsetof(struct llog_cookie, lgc_subsys));
-       LASSERTF((int)sizeof(((struct llog_cookie *)0)->lgc_subsys) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_cookie *)0)->lgc_subsys));
-       LASSERTF((int)offsetof(struct llog_cookie, lgc_index) == 24, "found %lld\n",
-                (long long)(int)offsetof(struct llog_cookie, lgc_index));
-       LASSERTF((int)sizeof(((struct llog_cookie *)0)->lgc_index) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_cookie *)0)->lgc_index));
-       LASSERTF((int)offsetof(struct llog_cookie, lgc_padding) == 28, "found %lld\n",
-                (long long)(int)offsetof(struct llog_cookie, lgc_padding));
-       LASSERTF((int)sizeof(((struct llog_cookie *)0)->lgc_padding) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct llog_cookie *)0)->lgc_padding));
 
        /* Checks for struct llogd_body */
        LASSERTF((int)sizeof(struct llogd_body) == 48, "found %lld\n",
@@ -3767,12 +4216,7 @@ void lustre_assert_wire_constants(void)
        CLASSERT(LLOG_ORIGIN_HANDLE_CREATE == 501);
        CLASSERT(LLOG_ORIGIN_HANDLE_NEXT_BLOCK == 502);
        CLASSERT(LLOG_ORIGIN_HANDLE_READ_HEADER == 503);
-       CLASSERT(LLOG_ORIGIN_HANDLE_WRITE_REC == 504);
-       CLASSERT(LLOG_ORIGIN_HANDLE_CLOSE == 505);
-       CLASSERT(LLOG_ORIGIN_CONNECT == 506);
-       CLASSERT(LLOG_CATINFO == 507);
        CLASSERT(LLOG_ORIGIN_HANDLE_PREV_BLOCK == 508);
-       CLASSERT(LLOG_ORIGIN_HANDLE_DESTROY == 509);
        CLASSERT(LLOG_FIRST_OPC == 501);
        CLASSERT(LLOG_LAST_OPC == 510);
        CLASSERT(LLOG_CONFIG_ORIG_CTXT == 0);
@@ -3787,7 +4231,9 @@ void lustre_assert_wire_constants(void)
        CLASSERT(LLOG_CHANGELOG_REPL_CTXT == 13);
        CLASSERT(LLOG_CHANGELOG_USER_ORIG_CTXT == 14);
        CLASSERT(LLOG_AGENT_ORIG_CTXT == 15);
-       CLASSERT(LLOG_MAX_CTXTS == 16);
+       CLASSERT(LLOG_UPDATELOG_ORIG_CTXT == 16);
+       CLASSERT(LLOG_UPDATELOG_REPL_CTXT == 17);
+       CLASSERT(LLOG_MAX_CTXTS == 18);
 
        /* Checks for struct llogd_conn_body */
        LASSERTF((int)sizeof(struct llogd_conn_body) == 40, "found %lld\n",
@@ -3913,6 +4359,92 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct mgs_target_info *)0)->mti_params) == 4096, "found %lld\n",
                 (long long)(int)sizeof(((struct mgs_target_info *)0)->mti_params));
 
+       /* Checks for struct mgs_nidtbl_entry */
+       LASSERTF((int)sizeof(struct mgs_nidtbl_entry) == 24, "found %lld\n",
+                (long long)(int)sizeof(struct mgs_nidtbl_entry));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_version) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_version));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_version) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_version));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_instance) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_instance));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_instance) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_instance));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_index) == 12, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_index));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_index) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_index));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_length) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_length));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_length) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_length));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_type) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_type));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_type) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_type));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_nid_type) == 21, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_nid_type));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_type) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_type));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_nid_size) == 22, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_nid_size));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_size) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_size));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, mne_nid_count) == 23, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, mne_nid_count));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_count) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->mne_nid_count));
+       LASSERTF((int)offsetof(struct mgs_nidtbl_entry, u.nids[0]) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_nidtbl_entry, u.nids[0]));
+       LASSERTF((int)sizeof(((struct mgs_nidtbl_entry *)0)->u.nids[0]) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_nidtbl_entry *)0)->u.nids[0]));
+
+       /* Checks for struct mgs_config_body */
+       LASSERTF((int)sizeof(struct mgs_config_body) == 80, "found %lld\n",
+                (long long)(int)sizeof(struct mgs_config_body));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_name) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_name));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_name) == 64, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_name));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_offset) == 64, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_offset));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_offset) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_offset));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_type) == 72, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_type));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_type) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_type));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_nm_cur_pass) == 74, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_nm_cur_pass));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_nm_cur_pass) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_nm_cur_pass));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_bits) == 75, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_bits));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_bits) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_bits));
+       LASSERTF((int)offsetof(struct mgs_config_body, mcb_units) == 76, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_body, mcb_units));
+       LASSERTF((int)sizeof(((struct mgs_config_body *)0)->mcb_units) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_body *)0)->mcb_units));
+       CLASSERT(CONFIG_T_CONFIG == 0);
+       CLASSERT(CONFIG_T_SPTLRPC == 1);
+       CLASSERT(CONFIG_T_RECOVER == 2);
+       CLASSERT(CONFIG_T_PARAMS == 3);
+       CLASSERT(CONFIG_T_NODEMAP == 4);
+       CLASSERT(CONFIG_T_BARRIER == 5);
+
+       /* Checks for struct mgs_config_res */
+       LASSERTF((int)sizeof(struct mgs_config_res) == 16, "found %lld\n",
+                (long long)(int)sizeof(struct mgs_config_res));
+       LASSERTF((int)offsetof(struct mgs_config_res, mcr_offset) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_res, mcr_offset));
+       LASSERTF((int)sizeof(((struct mgs_config_res *)0)->mcr_offset) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_res *)0)->mcr_offset));
+       LASSERTF((int)offsetof(struct mgs_config_res, mcr_size) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct mgs_config_res, mcr_size));
+       LASSERTF((int)sizeof(((struct mgs_config_res *)0)->mcr_size) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct mgs_config_res *)0)->mcr_size));
+
        /* Checks for struct lustre_capa */
        LASSERTF((int)sizeof(struct lustre_capa) == 120, "found %lld\n",
                 (long long)(int)sizeof(struct lustre_capa));
@@ -3994,10 +4526,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct getinfo_fid2path, gf_pathlen));
        LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_pathlen));
-       LASSERTF((int)offsetof(struct getinfo_fid2path, gf_path[0]) == 32, "found %lld\n",
-                (long long)(int)offsetof(struct getinfo_fid2path, gf_path[0]));
-       LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0]) == 1, "found %lld\n",
-                (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_path[0]));
+       LASSERTF((int)offsetof(struct getinfo_fid2path, gf_u.gf_path[0]) == 32, "found %lld\n",
+                (long long)(int)offsetof(struct getinfo_fid2path, gf_u.gf_path[0]));
+       LASSERTF((int)sizeof(((struct getinfo_fid2path *)0)->gf_u.gf_path[0]) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct getinfo_fid2path *)0)->gf_u.gf_path[0]));
 
        /* Checks for struct fiemap */
        LASSERTF((int)sizeof(struct fiemap) == 32, "found %lld\n",
@@ -4053,10 +4585,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct fiemap_extent, fe_flags));
        LASSERTF((int)sizeof(((struct fiemap_extent *)0)->fe_flags) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct fiemap_extent *)0)->fe_flags));
-       LASSERTF((int)offsetof(struct fiemap_extent, fe_device) == 44, "found %lld\n",
-                (long long)(int)offsetof(struct fiemap_extent, fe_device));
-       LASSERTF((int)sizeof(((struct fiemap_extent *)0)->fe_device) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct fiemap_extent *)0)->fe_device));
+       LASSERTF((int)offsetof(struct fiemap_extent, fe_reserved[0]) == 44, "found %lld\n",
+                (long long)(int)offsetof(struct fiemap_extent, fe_reserved[0]));
+       LASSERTF((int)sizeof(((struct fiemap_extent *)0)->fe_reserved[0]) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct fiemap_extent *)0)->fe_reserved[0]));
        CLASSERT(FIEMAP_EXTENT_LAST == 0x00000001);
        CLASSERT(FIEMAP_EXTENT_UNKNOWN == 0x00000002);
        CLASSERT(FIEMAP_EXTENT_DELALLOC == 0x00000004);
@@ -4096,10 +4628,12 @@ void lustre_assert_wire_constants(void)
                 (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));
+#ifndef HAVE_STRUCT_POSIX_ACL_XATTR
        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));
+#endif /* HAVE_STRUCT_POSIX_ACL_XATTR */
 #endif /* CONFIG_FS_POSIX_ACL */
 
        /* Checks for struct link_ea_header */
@@ -4117,14 +4651,14 @@ void lustre_assert_wire_constants(void)
                 (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));
+       LASSERTF((int)offsetof(struct link_ea_header, leh_overflow_time) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct link_ea_header, leh_overflow_time));
+       LASSERTF((int)sizeof(((struct link_ea_header *)0)->leh_overflow_time) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct link_ea_header *)0)->leh_overflow_time));
+       LASSERTF((int)offsetof(struct link_ea_header, leh_padding) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct link_ea_header, leh_padding));
+       LASSERTF((int)sizeof(((struct link_ea_header *)0)->leh_padding) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct link_ea_header *)0)->leh_padding));
        CLASSERT(LINK_EA_MAGIC == 0x11EAF1DFUL);
 
        /* Checks for struct link_ea_entry */
@@ -4154,14 +4688,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct layout_intent, li_flags));
        LASSERTF((int)sizeof(((struct layout_intent *)0)->li_flags) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct layout_intent *)0)->li_flags));
-       LASSERTF((int)offsetof(struct layout_intent, li_start) == 8, "found %lld\n",
-                (long long)(int)offsetof(struct layout_intent, li_start));
-       LASSERTF((int)sizeof(((struct layout_intent *)0)->li_start) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct layout_intent *)0)->li_start));
-       LASSERTF((int)offsetof(struct layout_intent, li_end) == 16, "found %lld\n",
-                (long long)(int)offsetof(struct layout_intent, li_end));
-       LASSERTF((int)sizeof(((struct layout_intent *)0)->li_end) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct layout_intent *)0)->li_end));
+       LASSERTF((int)offsetof(struct layout_intent, li_extent) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct layout_intent, li_extent));
+       LASSERTF((int)sizeof(((struct layout_intent *)0)->li_extent) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct layout_intent *)0)->li_extent));
        LASSERTF(LAYOUT_INTENT_ACCESS == 0, "found %lld\n",
                 (long long)LAYOUT_INTENT_ACCESS);
        LASSERTF(LAYOUT_INTENT_READ == 1, "found %lld\n",
@@ -4517,10 +5047,10 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct object_update, ou_params_count));
        LASSERTF((int)sizeof(((struct object_update *)0)->ou_params_count) == 2, "found %lld\n",
                 (long long)(int)sizeof(((struct object_update *)0)->ou_params_count));
-       LASSERTF((int)offsetof(struct object_update, ou_master_index) == 4, "found %lld\n",
-                (long long)(int)offsetof(struct object_update, ou_master_index));
-       LASSERTF((int)sizeof(((struct object_update *)0)->ou_master_index) == 4, "found %lld\n",
-                (long long)(int)sizeof(((struct object_update *)0)->ou_master_index));
+       LASSERTF((int)offsetof(struct object_update, ou_result_size) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct object_update, ou_result_size));
+       LASSERTF((int)sizeof(((struct object_update *)0)->ou_result_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct object_update *)0)->ou_result_size));
        LASSERTF((int)offsetof(struct object_update, ou_flags) == 8, "found %lld\n",
                 (long long)(int)offsetof(struct object_update, ou_flags));
        LASSERTF((int)sizeof(((struct object_update *)0)->ou_flags) == 4, "found %lld\n",
@@ -4602,6 +5132,150 @@ void lustre_assert_wire_constants(void)
        LASSERTF((int)sizeof(((struct object_update_reply *)0)->ourp_lens) == 0, "found %lld\n",
                 (long long)(int)sizeof(((struct object_update_reply *)0)->ourp_lens));
 
+       /* Checks for struct out_update_header */
+       LASSERTF((int)sizeof(struct out_update_header) == 16, "found %lld\n",
+                (long long)(int)sizeof(struct out_update_header));
+       LASSERTF((int)offsetof(struct out_update_header, ouh_magic) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_header, ouh_magic));
+       LASSERTF((int)sizeof(((struct out_update_header *)0)->ouh_magic) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_header *)0)->ouh_magic));
+       LASSERTF((int)offsetof(struct out_update_header, ouh_count) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_header, ouh_count));
+       LASSERTF((int)sizeof(((struct out_update_header *)0)->ouh_count) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_header *)0)->ouh_count));
+       LASSERTF((int)offsetof(struct out_update_header, ouh_inline_length) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_header, ouh_inline_length));
+       LASSERTF((int)sizeof(((struct out_update_header *)0)->ouh_inline_length) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_header *)0)->ouh_inline_length));
+       LASSERTF((int)offsetof(struct out_update_header, ouh_reply_size) == 12, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_header, ouh_reply_size));
+       LASSERTF((int)sizeof(((struct out_update_header *)0)->ouh_reply_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_header *)0)->ouh_reply_size));
+       LASSERTF((int)offsetof(struct out_update_header, ouh_inline_data) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_header, ouh_inline_data));
+       LASSERTF((int)sizeof(((struct out_update_header *)0)->ouh_inline_data) == 0, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_header *)0)->ouh_inline_data));
+
+       /* Checks for struct out_update_buffer */
+       LASSERTF((int)sizeof(struct out_update_buffer) == 8, "found %lld\n",
+                (long long)(int)sizeof(struct out_update_buffer));
+       LASSERTF((int)offsetof(struct out_update_buffer, oub_size) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_buffer, oub_size));
+       LASSERTF((int)sizeof(((struct out_update_buffer *)0)->oub_size) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_buffer *)0)->oub_size));
+       LASSERTF((int)offsetof(struct out_update_buffer, oub_padding) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct out_update_buffer, oub_padding));
+       LASSERTF((int)sizeof(((struct out_update_buffer *)0)->oub_padding) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct out_update_buffer *)0)->oub_padding));
+
+       /* Checks for struct nodemap_cluster_rec */
+       LASSERTF((int)sizeof(struct nodemap_cluster_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct nodemap_cluster_rec));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_name) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_name));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_name) == 17, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_name));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_flags) == 17, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_flags));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_flags) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_flags));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_padding1) == 18, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_padding1));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_padding1) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_padding1));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_padding2) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_padding2));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_padding2) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_padding2));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_squash_uid) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_squash_uid));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_squash_uid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_squash_uid));
+       LASSERTF((int)offsetof(struct nodemap_cluster_rec, ncr_squash_gid) == 28, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_cluster_rec, ncr_squash_gid));
+       LASSERTF((int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_squash_gid) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_cluster_rec *)0)->ncr_squash_gid));
+
+       /* Checks for struct nodemap_range_rec */
+       LASSERTF((int)sizeof(struct nodemap_range_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct nodemap_range_rec));
+       LASSERTF((int)offsetof(struct nodemap_range_rec, nrr_start_nid) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_range_rec, nrr_start_nid));
+       LASSERTF((int)sizeof(((struct nodemap_range_rec *)0)->nrr_start_nid) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_range_rec *)0)->nrr_start_nid));
+       LASSERTF((int)offsetof(struct nodemap_range_rec, nrr_end_nid) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_range_rec, nrr_end_nid));
+       LASSERTF((int)sizeof(((struct nodemap_range_rec *)0)->nrr_end_nid) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_range_rec *)0)->nrr_end_nid));
+       LASSERTF((int)offsetof(struct nodemap_range_rec, nrr_padding1) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_range_rec, nrr_padding1));
+       LASSERTF((int)sizeof(((struct nodemap_range_rec *)0)->nrr_padding1) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_range_rec *)0)->nrr_padding1));
+       LASSERTF((int)offsetof(struct nodemap_range_rec, nrr_padding2) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_range_rec, nrr_padding2));
+       LASSERTF((int)sizeof(((struct nodemap_range_rec *)0)->nrr_padding2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_range_rec *)0)->nrr_padding2));
+
+       /* Checks for struct nodemap_id_rec */
+       LASSERTF((int)sizeof(struct nodemap_id_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct nodemap_id_rec));
+       LASSERTF((int)offsetof(struct nodemap_id_rec, nir_id_fs) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_id_rec, nir_id_fs));
+       LASSERTF((int)sizeof(((struct nodemap_id_rec *)0)->nir_id_fs) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_id_rec *)0)->nir_id_fs));
+       LASSERTF((int)offsetof(struct nodemap_id_rec, nir_padding1) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_id_rec, nir_padding1));
+       LASSERTF((int)sizeof(((struct nodemap_id_rec *)0)->nir_padding1) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_id_rec *)0)->nir_padding1));
+       LASSERTF((int)offsetof(struct nodemap_id_rec, nir_padding2) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_id_rec, nir_padding2));
+       LASSERTF((int)sizeof(((struct nodemap_id_rec *)0)->nir_padding2) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_id_rec *)0)->nir_padding2));
+       LASSERTF((int)offsetof(struct nodemap_id_rec, nir_padding3) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_id_rec, nir_padding3));
+       LASSERTF((int)sizeof(((struct nodemap_id_rec *)0)->nir_padding3) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_id_rec *)0)->nir_padding3));
+       LASSERTF((int)offsetof(struct nodemap_id_rec, nir_padding4) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_id_rec, nir_padding4));
+       LASSERTF((int)sizeof(((struct nodemap_id_rec *)0)->nir_padding4) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_id_rec *)0)->nir_padding4));
+
+       /* Checks for struct nodemap_global_rec */
+       LASSERTF((int)sizeof(struct nodemap_global_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct nodemap_global_rec));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_is_active) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_is_active));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_is_active) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_is_active));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding1) == 1, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding1));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding1) == 1, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding1));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding2) == 2, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding2));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding2) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding2));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding3) == 4, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding3));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding3) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding3));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding4) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding4));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding4) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding4));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding5) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding5));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding5) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding5));
+       LASSERTF((int)offsetof(struct nodemap_global_rec, ngr_padding6) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct nodemap_global_rec, ngr_padding6));
+       LASSERTF((int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding6) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct nodemap_global_rec *)0)->ngr_padding6));
+
+       /* Checks for union nodemap_rec */
+       LASSERTF((int)sizeof(union nodemap_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(union nodemap_rec));
+
        /* Checks for struct lfsck_request */
        LASSERTF((int)sizeof(struct lfsck_request) == 96, "found %lld\n",
                 (long long)(int)sizeof(struct lfsck_request));
@@ -4653,24 +5327,34 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct lfsck_request, lr_fid2));
        LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_fid2) == 16, "found %lld\n",
                 (long long)(int)sizeof(((struct lfsck_request *)0)->lr_fid2));
-       LASSERTF((int)offsetof(struct lfsck_request, lr_fid3) == 64, "found %lld\n",
-                (long long)(int)offsetof(struct lfsck_request, lr_fid3));
-       LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_fid3) == 16, "found %lld\n",
-                (long long)(int)sizeof(((struct lfsck_request *)0)->lr_fid3));
-       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_1) == 80, "found %lld\n",
+       LASSERTF((int)offsetof(struct lfsck_request, lr_comp_id) == 64, "found %lld\n",
+                (long long)(int)offsetof(struct lfsck_request, lr_comp_id));
+       LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_comp_id) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lfsck_request *)0)->lr_comp_id));
+       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_0) == 68, "found %lld\n",
+                (long long)(int)offsetof(struct lfsck_request, lr_padding_0));
+       LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_padding_0) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct lfsck_request *)0)->lr_padding_0));
+       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_1) == 72, "found %lld\n",
                 (long long)(int)offsetof(struct lfsck_request, lr_padding_1));
        LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_padding_1) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct lfsck_request *)0)->lr_padding_1));
-       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_2) == 88, "found %lld\n",
+       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_2) == 80, "found %lld\n",
                 (long long)(int)offsetof(struct lfsck_request, lr_padding_2));
        LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_padding_2) == 8, "found %lld\n",
                 (long long)(int)sizeof(((struct lfsck_request *)0)->lr_padding_2));
+       LASSERTF((int)offsetof(struct lfsck_request, lr_padding_3) == 88, "found %lld\n",
+                (long long)(int)offsetof(struct lfsck_request, lr_padding_3));
+       LASSERTF((int)sizeof(((struct lfsck_request *)0)->lr_padding_3) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lfsck_request *)0)->lr_padding_3));
+#ifdef HAVE_SERVER_SUPPORT
        LASSERTF(LFSCK_TYPE_SCRUB == 0x00000000UL, "found 0x%.8xUL\n",
                (unsigned)LFSCK_TYPE_SCRUB);
        LASSERTF(LFSCK_TYPE_LAYOUT == 0x00000001UL, "found 0x%.8xUL\n",
                (unsigned)LFSCK_TYPE_LAYOUT);
        LASSERTF(LFSCK_TYPE_NAMESPACE == 0x00000004UL, "found 0x%.8xUL\n",
                (unsigned)LFSCK_TYPE_NAMESPACE);
+#endif
        LASSERTF(LE_LASTID_REBUILDING == 1, "found %lld\n",
                 (long long)LE_LASTID_REBUILDING);
        LASSERTF(LE_LASTID_REBUILT == 2, "found %lld\n",
@@ -4685,18 +5369,12 @@ void lustre_assert_wire_constants(void)
                 (long long)LE_STOP);
        LASSERTF(LE_QUERY == 7, "found %lld\n",
                 (long long)LE_QUERY);
-       LASSERTF(LE_FID_ACCESSED == 8, "found %lld\n",
-                (long long)LE_FID_ACCESSED);
        LASSERTF(LE_PEER_EXIT == 9, "found %lld\n",
                 (long long)LE_PEER_EXIT);
        LASSERTF(LE_CONDITIONAL_DESTROY == 10, "found %lld\n",
                 (long long)LE_CONDITIONAL_DESTROY);
        LASSERTF(LE_PAIRS_VERIFY == 11, "found %lld\n",
                 (long long)LE_PAIRS_VERIFY);
-       LASSERTF(LE_SKIP_NLINK_DECLARE == 13, "found %lld\n",
-                (long long)LE_SKIP_NLINK_DECLARE);
-       LASSERTF(LE_SKIP_NLINK == 14, "found %lld\n",
-                (long long)LE_SKIP_NLINK);
        LASSERTF(LE_SET_LMV_MASTER == 15, "found %lld\n",
                 (long long)LE_SET_LMV_MASTER);
        LASSERTF(LE_SET_LMV_SLAVE == 16, "found %lld\n",
@@ -4711,6 +5389,8 @@ void lustre_assert_wire_constants(void)
                (unsigned)LEF_SET_LMV_ALL);
        LASSERTF(LEF_RECHECK_NAME_HASH == 0x00000010UL, "found 0x%.8xUL\n",
                (unsigned)LEF_RECHECK_NAME_HASH);
+       LASSERTF(LEF_QUERY_ALL == 0x00000020UL, "found 0x%.8xUL\n",
+               (unsigned)LEF_QUERY_ALL);
 
        /* Checks for struct lfsck_reply */
        LASSERTF((int)sizeof(struct lfsck_reply) == 16, "found %lld\n",
@@ -4723,9 +5403,87 @@ void lustre_assert_wire_constants(void)
                 (long long)(int)offsetof(struct lfsck_reply, lr_padding_1));
        LASSERTF((int)sizeof(((struct lfsck_reply *)0)->lr_padding_1) == 4, "found %lld\n",
                 (long long)(int)sizeof(((struct lfsck_reply *)0)->lr_padding_1));
-       LASSERTF((int)offsetof(struct lfsck_reply, lr_padding_2) == 8, "found %lld\n",
-                (long long)(int)offsetof(struct lfsck_reply, lr_padding_2));
-       LASSERTF((int)sizeof(((struct lfsck_reply *)0)->lr_padding_2) == 8, "found %lld\n",
-                (long long)(int)sizeof(((struct lfsck_reply *)0)->lr_padding_2));
+       LASSERTF((int)offsetof(struct lfsck_reply, lr_repaired) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct lfsck_reply, lr_repaired));
+       LASSERTF((int)sizeof(((struct lfsck_reply *)0)->lr_repaired) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct lfsck_reply *)0)->lr_repaired));
+
+       /* Checks for struct update_params */
+       LASSERTF((int)sizeof(struct update_params) == 0, "found %lld\n",
+                (long long)(int)sizeof(struct update_params));
+       LASSERTF((int)offsetof(struct update_params, up_params) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct update_params, up_params));
+       LASSERTF((int)sizeof(((struct update_params *)0)->up_params) == 0, "found %lld\n",
+                (long long)(int)sizeof(((struct update_params *)0)->up_params));
+
+       /* Checks for struct update_op */
+       LASSERTF((int)sizeof(struct update_op) == 24, "found %lld\n",
+                (long long)(int)sizeof(struct update_op));
+       LASSERTF((int)offsetof(struct update_op, uop_fid) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct update_op, uop_fid));
+       LASSERTF((int)sizeof(((struct update_op *)0)->uop_fid) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct update_op *)0)->uop_fid));
+       LASSERTF((int)offsetof(struct update_op, uop_type) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct update_op, uop_type));
+       LASSERTF((int)sizeof(((struct update_op *)0)->uop_type) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct update_op *)0)->uop_type));
+       LASSERTF((int)offsetof(struct update_op, uop_param_count) == 18, "found %lld\n",
+                (long long)(int)offsetof(struct update_op, uop_param_count));
+       LASSERTF((int)sizeof(((struct update_op *)0)->uop_param_count) == 2, "found %lld\n",
+                (long long)(int)sizeof(((struct update_op *)0)->uop_param_count));
+       LASSERTF((int)offsetof(struct update_op, uop_params_off) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct update_op, uop_params_off));
+       LASSERTF((int)sizeof(((struct update_op *)0)->uop_params_off) == 0, "found %lld\n",
+                (long long)(int)sizeof(((struct update_op *)0)->uop_params_off));
+
+       /* Checks for struct update_ops */
+       LASSERTF((int)sizeof(struct update_ops) == 0, "found %lld\n",
+                (long long)(int)sizeof(struct update_ops));
+       LASSERTF((int)offsetof(struct update_ops, uops_op) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct update_ops, uops_op));
+       LASSERTF((int)sizeof(((struct update_ops *)0)->uops_op) == 0, "found %lld\n",
+                (long long)(int)sizeof(((struct update_ops *)0)->uops_op));
+
+       /* Checks for struct update_records */
+       LASSERTF((int)sizeof(struct update_records) == 32, "found %lld\n",
+                (long long)(int)sizeof(struct update_records));
+       LASSERTF((int)offsetof(struct update_records, ur_master_transno) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_master_transno));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_master_transno) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_master_transno));
+       LASSERTF((int)offsetof(struct update_records, ur_batchid) == 8, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_batchid));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_batchid) == 8, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_batchid));
+       LASSERTF((int)offsetof(struct update_records, ur_flags) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_flags));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_flags) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_flags));
+       LASSERTF((int)offsetof(struct update_records, ur_index) == 20, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_index));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_index) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_index));
+       LASSERTF((int)offsetof(struct update_records, ur_update_count) == 24, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_update_count));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_update_count) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_update_count));
+       LASSERTF((int)offsetof(struct update_records, ur_param_count) == 28, "found %lld\n",
+                (long long)(int)offsetof(struct update_records, ur_param_count));
+       LASSERTF((int)sizeof(((struct update_records *)0)->ur_param_count) == 4, "found %lld\n",
+                (long long)(int)sizeof(((struct update_records *)0)->ur_param_count));
+       LASSERTF(UPDATE_RECORD_CONTINUE == 0x00000001UL, "found 0x%.8xUL\n",
+               (unsigned)UPDATE_RECORD_CONTINUE);
+
+       /* Checks for struct llog_update_record */
+       LASSERTF((int)sizeof(struct llog_update_record) == 48, "found %lld\n",
+                (long long)(int)sizeof(struct llog_update_record));
+       LASSERTF((int)offsetof(struct llog_update_record, lur_hdr) == 0, "found %lld\n",
+                (long long)(int)offsetof(struct llog_update_record, lur_hdr));
+       LASSERTF((int)sizeof(((struct llog_update_record *)0)->lur_hdr) == 16, "found %lld\n",
+                (long long)(int)sizeof(((struct llog_update_record *)0)->lur_hdr));
+       LASSERTF((int)offsetof(struct llog_update_record, lur_update_rec) == 16, "found %lld\n",
+                (long long)(int)offsetof(struct llog_update_record, lur_update_rec));
+       LASSERTF((int)sizeof(((struct llog_update_record *)0)->lur_update_rec) == 32, "found %lld\n",
+                (long long)(int)sizeof(((struct llog_update_record *)0)->lur_update_rec));
 }