Whamcloud - gitweb
LU-12275 sec: enable client side encryption
[fs/lustre-release.git] / lustre / ptlrpc / wiretest.c
1 /*
2  * GPL HEADER START
3  *
4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 only,
8  * as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * General Public License version 2 for more details (a copy is included
14  * in the LICENSE file that accompanied this code).
15  *
16  * You should have received a copy of the GNU General Public License
17  * version 2 along with this program; If not, see
18  * http://www.gnu.org/licenses/gpl-2.0.html
19  *
20  * GPL HEADER END
21  */
22 /*
23  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
24  * Use is subject to license terms.
25  *
26  * Copyright (c) 2011, 2017, Intel Corporation.
27  */
28 /*
29  * This file is part of Lustre, http://www.lustre.org/
30  * Lustre is a trademark of Sun Microsystems, Inc.
31  */
32
33 #define DEBUG_SUBSYSTEM S_RPC
34
35 #ifdef CONFIG_LUSTRE_FS_POSIX_ACL
36 # include <linux/fs.h>
37 # include <linux/posix_acl_xattr.h>
38 #endif /* CONFIG_LUSTRE_FS_POSIX_ACL */
39
40 #include <obd_support.h>
41 #include <obd_class.h>
42 #include <lustre_net.h>
43 #include <lustre_disk.h>
44 #include <uapi/linux/lustre/lustre_access_log.h>
45 #include <uapi/linux/lustre/lustre_lfsck_user.h>
46 #include <uapi/linux/lustre/lustre_cfg.h>
47
48
49 void lustre_assert_wire_constants(void)
50 {
51         /* Wire protocol assertions generated by 'wirecheck'
52          * (make -C lustre/utils newwiretest)
53          */
54
55         /* Constants... */
56         LASSERTF(PTL_RPC_MSG_REQUEST == 4711, "found %lld\n",
57                  (long long)PTL_RPC_MSG_REQUEST);
58         LASSERTF(PTL_RPC_MSG_ERR == 4712, "found %lld\n",
59                  (long long)PTL_RPC_MSG_ERR);
60         LASSERTF(PTL_RPC_MSG_REPLY == 4713, "found %lld\n",
61                  (long long)PTL_RPC_MSG_REPLY);
62         LASSERTF(MDS_DIR_END_OFF == 0xfffffffffffffffeULL, "found 0x%.16llxULL\n",
63                  MDS_DIR_END_OFF);
64         LASSERTF(DEAD_HANDLE_MAGIC == 0xdeadbeefcafebabeULL, "found 0x%.16llxULL\n",
65                  DEAD_HANDLE_MAGIC);
66         BUILD_BUG_ON(MTI_NAME_MAXLEN != 64);
67         LASSERTF(OST_REPLY == 0, "found %lld\n",
68                  (long long)OST_REPLY);
69         LASSERTF(OST_GETATTR == 1, "found %lld\n",
70                  (long long)OST_GETATTR);
71         LASSERTF(OST_SETATTR == 2, "found %lld\n",
72                  (long long)OST_SETATTR);
73         LASSERTF(OST_READ == 3, "found %lld\n",
74                  (long long)OST_READ);
75         LASSERTF(OST_WRITE == 4, "found %lld\n",
76                  (long long)OST_WRITE);
77         LASSERTF(OST_CREATE == 5, "found %lld\n",
78                  (long long)OST_CREATE);
79         LASSERTF(OST_DESTROY == 6, "found %lld\n",
80                  (long long)OST_DESTROY);
81         LASSERTF(OST_GET_INFO == 7, "found %lld\n",
82                  (long long)OST_GET_INFO);
83         LASSERTF(OST_CONNECT == 8, "found %lld\n",
84                  (long long)OST_CONNECT);
85         LASSERTF(OST_DISCONNECT == 9, "found %lld\n",
86                  (long long)OST_DISCONNECT);
87         LASSERTF(OST_PUNCH == 10, "found %lld\n",
88                  (long long)OST_PUNCH);
89         LASSERTF(OST_OPEN == 11, "found %lld\n",
90                  (long long)OST_OPEN);
91         LASSERTF(OST_CLOSE == 12, "found %lld\n",
92                  (long long)OST_CLOSE);
93         LASSERTF(OST_STATFS == 13, "found %lld\n",
94                  (long long)OST_STATFS);
95         LASSERTF(OST_SYNC == 16, "found %lld\n",
96                  (long long)OST_SYNC);
97         LASSERTF(OST_SET_INFO == 17, "found %lld\n",
98                  (long long)OST_SET_INFO);
99         LASSERTF(OST_QUOTACHECK == 18, "found %lld\n",
100                  (long long)OST_QUOTACHECK);
101         LASSERTF(OST_QUOTACTL == 19, "found %lld\n",
102                  (long long)OST_QUOTACTL);
103         LASSERTF(OST_QUOTA_ADJUST_QUNIT == 20, "found %lld\n",
104                  (long long)OST_QUOTA_ADJUST_QUNIT);
105         LASSERTF(OST_LADVISE == 21, "found %lld\n",
106                  (long long)OST_LADVISE);
107         LASSERTF(OST_FALLOCATE == 22, "found %lld\n",
108                  (long long)OST_FALLOCATE);
109         LASSERTF(OST_LAST_OPC == 23, "found %lld\n",
110                  (long long)OST_LAST_OPC);
111         LASSERTF(OBD_OBJECT_EOF == 0xffffffffffffffffULL, "found 0x%.16llxULL\n",
112                  OBD_OBJECT_EOF);
113         LASSERTF(OST_MIN_PRECREATE == 32, "found %lld\n",
114                  (long long)OST_MIN_PRECREATE);
115         LASSERTF(OST_MAX_PRECREATE == 20000, "found %lld\n",
116                  (long long)OST_MAX_PRECREATE);
117         LASSERTF(OST_LVB_ERR_INIT == 0xffbadbad80000000ULL, "found 0x%.16llxULL\n",
118                  OST_LVB_ERR_INIT);
119         LASSERTF(OST_LVB_ERR_MASK == 0xffbadbad00000000ULL, "found 0x%.16llxULL\n",
120                  OST_LVB_ERR_MASK);
121         LASSERTF(MDS_FIRST_OPC == 33, "found %lld\n",
122                  (long long)MDS_FIRST_OPC);
123         LASSERTF(MDS_GETATTR == 33, "found %lld\n",
124                  (long long)MDS_GETATTR);
125         LASSERTF(MDS_GETATTR_NAME == 34, "found %lld\n",
126                  (long long)MDS_GETATTR_NAME);
127         LASSERTF(MDS_CLOSE == 35, "found %lld\n",
128                  (long long)MDS_CLOSE);
129         LASSERTF(MDS_REINT == 36, "found %lld\n",
130                  (long long)MDS_REINT);
131         LASSERTF(MDS_READPAGE == 37, "found %lld\n",
132                  (long long)MDS_READPAGE);
133         LASSERTF(MDS_CONNECT == 38, "found %lld\n",
134                  (long long)MDS_CONNECT);
135         LASSERTF(MDS_DISCONNECT == 39, "found %lld\n",
136                  (long long)MDS_DISCONNECT);
137         LASSERTF(MDS_GET_ROOT == 40, "found %lld\n",
138                  (long long)MDS_GET_ROOT);
139         LASSERTF(MDS_STATFS == 41, "found %lld\n",
140                  (long long)MDS_STATFS);
141         LASSERTF(MDS_PIN == 42, "found %lld\n",
142                  (long long)MDS_PIN);
143         LASSERTF(MDS_UNPIN == 43, "found %lld\n",
144                  (long long)MDS_UNPIN);
145         LASSERTF(MDS_SYNC == 44, "found %lld\n",
146                  (long long)MDS_SYNC);
147         LASSERTF(MDS_DONE_WRITING == 45, "found %lld\n",
148                  (long long)MDS_DONE_WRITING);
149         LASSERTF(MDS_SET_INFO == 46, "found %lld\n",
150                  (long long)MDS_SET_INFO);
151         LASSERTF(MDS_QUOTACHECK == 47, "found %lld\n",
152                  (long long)MDS_QUOTACHECK);
153         LASSERTF(MDS_QUOTACTL == 48, "found %lld\n",
154                  (long long)MDS_QUOTACTL);
155         LASSERTF(MDS_GETXATTR == 49, "found %lld\n",
156                  (long long)MDS_GETXATTR);
157         LASSERTF(MDS_SETXATTR == 50, "found %lld\n",
158                  (long long)MDS_SETXATTR);
159         LASSERTF(MDS_WRITEPAGE == 51, "found %lld\n",
160                  (long long)MDS_WRITEPAGE);
161         LASSERTF(MDS_IS_SUBDIR == 52, "found %lld\n",
162                  (long long)MDS_IS_SUBDIR);
163         LASSERTF(MDS_GET_INFO == 53, "found %lld\n",
164                  (long long)MDS_GET_INFO);
165         LASSERTF(MDS_HSM_STATE_GET == 54, "found %lld\n",
166                  (long long)MDS_HSM_STATE_GET);
167         LASSERTF(MDS_HSM_STATE_SET == 55, "found %lld\n",
168                  (long long)MDS_HSM_STATE_SET);
169         LASSERTF(MDS_HSM_ACTION == 56, "found %lld\n",
170                  (long long)MDS_HSM_ACTION);
171         LASSERTF(MDS_HSM_PROGRESS == 57, "found %lld\n",
172                  (long long)MDS_HSM_PROGRESS);
173         LASSERTF(MDS_HSM_REQUEST == 58, "found %lld\n",
174                  (long long)MDS_HSM_REQUEST);
175         LASSERTF(MDS_HSM_CT_REGISTER == 59, "found %lld\n",
176                  (long long)MDS_HSM_CT_REGISTER);
177         LASSERTF(MDS_HSM_CT_UNREGISTER == 60, "found %lld\n",
178                  (long long)MDS_HSM_CT_UNREGISTER);
179         LASSERTF(MDS_SWAP_LAYOUTS == 61, "found %lld\n",
180                  (long long)MDS_SWAP_LAYOUTS);
181         LASSERTF(MDS_RMFID == 62, "found %lld\n",
182                  (long long)MDS_RMFID);
183         LASSERTF(MDS_LAST_OPC == 63, "found %lld\n",
184                  (long long)MDS_LAST_OPC);
185         LASSERTF(REINT_SETATTR == 1, "found %lld\n",
186                  (long long)REINT_SETATTR);
187         LASSERTF(REINT_CREATE == 2, "found %lld\n",
188                  (long long)REINT_CREATE);
189         LASSERTF(REINT_LINK == 3, "found %lld\n",
190                  (long long)REINT_LINK);
191         LASSERTF(REINT_UNLINK == 4, "found %lld\n",
192                  (long long)REINT_UNLINK);
193         LASSERTF(REINT_RENAME == 5, "found %lld\n",
194                  (long long)REINT_RENAME);
195         LASSERTF(REINT_OPEN == 6, "found %lld\n",
196                  (long long)REINT_OPEN);
197         LASSERTF(REINT_SETXATTR == 7, "found %lld\n",
198                  (long long)REINT_SETXATTR);
199         LASSERTF(REINT_RMENTRY == 8, "found %lld\n",
200                  (long long)REINT_RMENTRY);
201         LASSERTF(REINT_MIGRATE == 9, "found %lld\n",
202                  (long long)REINT_MIGRATE);
203         LASSERTF(REINT_MAX == 11, "found %lld\n",
204                  (long long)REINT_MAX);
205         LASSERTF(DISP_IT_EXECD == 0x00000001UL, "found 0x%.8xUL\n",
206                 (unsigned)DISP_IT_EXECD);
207         LASSERTF(DISP_LOOKUP_EXECD == 0x00000002UL, "found 0x%.8xUL\n",
208                 (unsigned)DISP_LOOKUP_EXECD);
209         LASSERTF(DISP_LOOKUP_NEG == 0x00000004UL, "found 0x%.8xUL\n",
210                 (unsigned)DISP_LOOKUP_NEG);
211         LASSERTF(DISP_LOOKUP_POS == 0x00000008UL, "found 0x%.8xUL\n",
212                 (unsigned)DISP_LOOKUP_POS);
213         LASSERTF(DISP_OPEN_CREATE == 0x00000010UL, "found 0x%.8xUL\n",
214                 (unsigned)DISP_OPEN_CREATE);
215         LASSERTF(DISP_OPEN_OPEN == 0x00000020UL, "found 0x%.8xUL\n",
216                 (unsigned)DISP_OPEN_OPEN);
217         LASSERTF(DISP_ENQ_COMPLETE == 0x00400000UL, "found 0x%.8xUL\n",
218                 (unsigned)DISP_ENQ_COMPLETE);
219         LASSERTF(DISP_ENQ_OPEN_REF == 0x00800000UL, "found 0x%.8xUL\n",
220                 (unsigned)DISP_ENQ_OPEN_REF);
221         LASSERTF(DISP_ENQ_CREATE_REF == 0x01000000UL, "found 0x%.8xUL\n",
222                 (unsigned)DISP_ENQ_CREATE_REF);
223         LASSERTF(DISP_OPEN_LOCK == 0x02000000UL, "found 0x%.8xUL\n",
224                 (unsigned)DISP_OPEN_LOCK);
225         LASSERTF(MDS_STATUS_CONN == 1, "found %lld\n",
226                  (long long)MDS_STATUS_CONN);
227         LASSERTF(MDS_STATUS_LOV == 2, "found %lld\n",
228                  (long long)MDS_STATUS_LOV);
229         LASSERTF(MDS_ATTR_MODE == 0x0000000000000001ULL, "found 0x%.16llxULL\n",
230                         (long long)MDS_ATTR_MODE);
231         LASSERTF(MDS_ATTR_UID == 0x0000000000000002ULL, "found 0x%.16llxULL\n",
232                         (long long)MDS_ATTR_UID);
233         LASSERTF(MDS_ATTR_GID == 0x0000000000000004ULL, "found 0x%.16llxULL\n",
234                         (long long)MDS_ATTR_GID);
235         LASSERTF(MDS_ATTR_SIZE == 0x0000000000000008ULL, "found 0x%.16llxULL\n",
236                         (long long)MDS_ATTR_SIZE);
237         LASSERTF(MDS_ATTR_ATIME == 0x0000000000000010ULL, "found 0x%.16llxULL\n",
238                         (long long)MDS_ATTR_ATIME);
239         LASSERTF(MDS_ATTR_MTIME == 0x0000000000000020ULL, "found 0x%.16llxULL\n",
240                         (long long)MDS_ATTR_MTIME);
241         LASSERTF(MDS_ATTR_CTIME == 0x0000000000000040ULL, "found 0x%.16llxULL\n",
242                         (long long)MDS_ATTR_CTIME);
243         LASSERTF(MDS_ATTR_ATIME_SET == 0x0000000000000080ULL, "found 0x%.16llxULL\n",
244                         (long long)MDS_ATTR_ATIME_SET);
245         LASSERTF(MDS_ATTR_MTIME_SET == 0x0000000000000100ULL, "found 0x%.16llxULL\n",
246                         (long long)MDS_ATTR_MTIME_SET);
247         LASSERTF(MDS_ATTR_FORCE == 0x0000000000000200ULL, "found 0x%.16llxULL\n",
248                         (long long)MDS_ATTR_FORCE);
249         LASSERTF(MDS_ATTR_ATTR_FLAG == 0x0000000000000400ULL, "found 0x%.16llxULL\n",
250                         (long long)MDS_ATTR_ATTR_FLAG);
251         LASSERTF(MDS_ATTR_KILL_SUID == 0x0000000000000800ULL, "found 0x%.16llxULL\n",
252                         (long long)MDS_ATTR_KILL_SUID);
253         LASSERTF(MDS_ATTR_KILL_SGID == 0x0000000000001000ULL, "found 0x%.16llxULL\n",
254                         (long long)MDS_ATTR_KILL_SGID);
255         LASSERTF(MDS_ATTR_CTIME_SET == 0x0000000000002000ULL, "found 0x%.16llxULL\n",
256                         (long long)MDS_ATTR_CTIME_SET);
257         LASSERTF(MDS_ATTR_FROM_OPEN == 0x0000000000004000ULL, "found 0x%.16llxULL\n",
258                         (long long)MDS_ATTR_FROM_OPEN);
259         LASSERTF(MDS_ATTR_BLOCKS == 0x0000000000008000ULL, "found 0x%.16llxULL\n",
260                         (long long)MDS_ATTR_BLOCKS);
261         LASSERTF(MDS_ATTR_PROJID == 0x0000000000010000ULL, "found 0x%.16llxULL\n",
262                         (long long)MDS_ATTR_PROJID);
263         LASSERTF(MDS_ATTR_LSIZE == 0x0000000000020000ULL, "found 0x%.16llxULL\n",
264                         (long long)MDS_ATTR_LSIZE);
265         LASSERTF(MDS_ATTR_LBLOCKS == 0x0000000000040000ULL, "found 0x%.16llxULL\n",
266                         (long long)MDS_ATTR_LBLOCKS);
267         LASSERTF(MDS_ATTR_OVERRIDE == 0x0000000002000000ULL, "found 0x%.16llxULL\n",
268                         (long long)MDS_ATTR_OVERRIDE);
269         LASSERTF(FLD_QUERY == 900, "found %lld\n",
270                  (long long)FLD_QUERY);
271         LASSERTF(FLD_READ == 901, "found %lld\n",
272                  (long long)FLD_READ);
273         LASSERTF(FLD_FIRST_OPC == 900, "found %lld\n",
274                  (long long)FLD_FIRST_OPC);
275         LASSERTF(FLD_LAST_OPC == 902, "found %lld\n",
276                  (long long)FLD_LAST_OPC);
277         LASSERTF(SEQ_QUERY == 700, "found %lld\n",
278                  (long long)SEQ_QUERY);
279         LASSERTF(SEQ_FIRST_OPC == 700, "found %lld\n",
280                  (long long)SEQ_FIRST_OPC);
281         LASSERTF(SEQ_LAST_OPC == 701, "found %lld\n",
282                  (long long)SEQ_LAST_OPC);
283         LASSERTF(LFSCK_NOTIFY == 1101, "found %lld\n",
284                  (long long)LFSCK_NOTIFY);
285         LASSERTF(LFSCK_QUERY == 1102, "found %lld\n",
286                  (long long)LFSCK_QUERY);
287         LASSERTF(LFSCK_FIRST_OPC == 1101, "found %lld\n",
288                  (long long)LFSCK_FIRST_OPC);
289         LASSERTF(LFSCK_LAST_OPC == 1103, "found %lld\n",
290                  (long long)LFSCK_LAST_OPC);
291         LASSERTF(SEQ_ALLOC_SUPER == 0, "found %lld\n",
292                  (long long)SEQ_ALLOC_SUPER);
293         LASSERTF(SEQ_ALLOC_META == 1, "found %lld\n",
294                  (long long)SEQ_ALLOC_META);
295         LASSERTF(LDLM_ENQUEUE == 101, "found %lld\n",
296                  (long long)LDLM_ENQUEUE);
297         LASSERTF(LDLM_CONVERT == 102, "found %lld\n",
298                  (long long)LDLM_CONVERT);
299         LASSERTF(LDLM_CANCEL == 103, "found %lld\n",
300                  (long long)LDLM_CANCEL);
301         LASSERTF(LDLM_BL_CALLBACK == 104, "found %lld\n",
302                  (long long)LDLM_BL_CALLBACK);
303         LASSERTF(LDLM_CP_CALLBACK == 105, "found %lld\n",
304                  (long long)LDLM_CP_CALLBACK);
305         LASSERTF(LDLM_GL_CALLBACK == 106, "found %lld\n",
306                  (long long)LDLM_GL_CALLBACK);
307         LASSERTF(LDLM_SET_INFO == 107, "found %lld\n",
308                  (long long)LDLM_SET_INFO);
309         LASSERTF(LDLM_LAST_OPC == 108, "found %lld\n",
310                  (long long)LDLM_LAST_OPC);
311         LASSERTF(LCK_MINMODE == 0, "found %lld\n",
312                  (long long)LCK_MINMODE);
313         LASSERTF(LCK_EX == 1, "found %lld\n",
314                  (long long)LCK_EX);
315         LASSERTF(LCK_PW == 2, "found %lld\n",
316                  (long long)LCK_PW);
317         LASSERTF(LCK_PR == 4, "found %lld\n",
318                  (long long)LCK_PR);
319         LASSERTF(LCK_CW == 8, "found %lld\n",
320                  (long long)LCK_CW);
321         LASSERTF(LCK_CR == 16, "found %lld\n",
322                  (long long)LCK_CR);
323         LASSERTF(LCK_NL == 32, "found %lld\n",
324                  (long long)LCK_NL);
325         LASSERTF(LCK_GROUP == 64, "found %lld\n",
326                  (long long)LCK_GROUP);
327         LASSERTF(LCK_COS == 128, "found %lld\n",
328                  (long long)LCK_COS);
329         LASSERTF(LCK_MAXMODE == 129, "found %lld\n",
330                  (long long)LCK_MAXMODE);
331         LASSERTF(LCK_MODE_NUM == 8, "found %lld\n",
332                  (long long)LCK_MODE_NUM);
333         BUILD_BUG_ON(LDLM_PLAIN != 10);
334         BUILD_BUG_ON(LDLM_EXTENT != 11);
335         BUILD_BUG_ON(LDLM_FLOCK != 12);
336         BUILD_BUG_ON(LDLM_IBITS != 13);
337         BUILD_BUG_ON(LDLM_MAX_TYPE != 14);
338         BUILD_BUG_ON(LUSTRE_RES_ID_SEQ_OFF != 0);
339         BUILD_BUG_ON(LUSTRE_RES_ID_VER_OID_OFF != 1);
340         LASSERTF(OUT_UPDATE == 1000, "found %lld\n",
341                  (long long)OUT_UPDATE);
342         LASSERTF(OUT_UPDATE_LAST_OPC == 1001, "found %lld\n",
343                  (long long)OUT_UPDATE_LAST_OPC);
344         BUILD_BUG_ON(LUSTRE_RES_ID_QUOTA_SEQ_OFF != 2);
345         BUILD_BUG_ON(LUSTRE_RES_ID_QUOTA_VER_OID_OFF != 3);
346         BUILD_BUG_ON(LUSTRE_RES_ID_HSH_OFF != 3);
347         BUILD_BUG_ON(LQUOTA_TYPE_USR != 0);
348         BUILD_BUG_ON(LQUOTA_TYPE_GRP != 1);
349         BUILD_BUG_ON(LQUOTA_RES_MD != 1);
350         BUILD_BUG_ON(LQUOTA_RES_DT != 2);
351         LASSERTF(OBD_PING == 400, "found %lld\n",
352                  (long long)OBD_PING);
353         LASSERTF(OBD_IDX_READ == 403, "found %lld\n",
354                  (long long)OBD_IDX_READ);
355         LASSERTF(OBD_LAST_OPC == 404, "found %lld\n",
356                  (long long)OBD_LAST_OPC);
357         LASSERTF(QUOTA_DQACQ == 601, "found %lld\n",
358                  (long long)QUOTA_DQACQ);
359         LASSERTF(QUOTA_DQREL == 602, "found %lld\n",
360                  (long long)QUOTA_DQREL);
361         LASSERTF(QUOTA_LAST_OPC == 603, "found %lld\n",
362                  (long long)QUOTA_LAST_OPC);
363         LASSERTF(MGS_CONNECT == 250, "found %lld\n",
364                  (long long)MGS_CONNECT);
365         LASSERTF(MGS_DISCONNECT == 251, "found %lld\n",
366                  (long long)MGS_DISCONNECT);
367         LASSERTF(MGS_EXCEPTION == 252, "found %lld\n",
368                  (long long)MGS_EXCEPTION);
369         LASSERTF(MGS_TARGET_REG == 253, "found %lld\n",
370                  (long long)MGS_TARGET_REG);
371         LASSERTF(MGS_TARGET_DEL == 254, "found %lld\n",
372                  (long long)MGS_TARGET_DEL);
373         LASSERTF(MGS_SET_INFO == 255, "found %lld\n",
374                  (long long)MGS_SET_INFO);
375         LASSERTF(MGS_CONFIG_READ == 256, "found %lld\n",
376                  (long long)MGS_CONFIG_READ);
377         LASSERTF(MGS_LAST_OPC == 257, "found %lld\n",
378                  (long long)MGS_LAST_OPC);
379         LASSERTF(SEC_CTX_INIT == 801, "found %lld\n",
380                  (long long)SEC_CTX_INIT);
381         LASSERTF(SEC_CTX_INIT_CONT == 802, "found %lld\n",
382                  (long long)SEC_CTX_INIT_CONT);
383         LASSERTF(SEC_CTX_FINI == 803, "found %lld\n",
384                  (long long)SEC_CTX_FINI);
385         LASSERTF(SEC_LAST_OPC == 804, "found %lld\n",
386                  (long long)SEC_LAST_OPC);
387         /* Sizes and Offsets */
388
389         /* Checks for struct obd_uuid */
390         LASSERTF((int)sizeof(struct obd_uuid) == 40, "found %lld\n",
391                  (long long)(int)sizeof(struct obd_uuid));
392
393         /* Checks for struct lu_seq_range */
394         LASSERTF((int)sizeof(struct lu_seq_range) == 24, "found %lld\n",
395                  (long long)(int)sizeof(struct lu_seq_range));
396         LASSERTF((int)offsetof(struct lu_seq_range, lsr_start) == 0, "found %lld\n",
397                  (long long)(int)offsetof(struct lu_seq_range, lsr_start));
398         LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_start) == 8, "found %lld\n",
399                  (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_start));
400         LASSERTF((int)offsetof(struct lu_seq_range, lsr_end) == 8, "found %lld\n",
401                  (long long)(int)offsetof(struct lu_seq_range, lsr_end));
402         LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_end) == 8, "found %lld\n",
403                  (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_end));
404         LASSERTF((int)offsetof(struct lu_seq_range, lsr_index) == 16, "found %lld\n",
405                  (long long)(int)offsetof(struct lu_seq_range, lsr_index));
406         LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_index) == 4, "found %lld\n",
407                  (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_index));
408         LASSERTF((int)offsetof(struct lu_seq_range, lsr_flags) == 20, "found %lld\n",
409                  (long long)(int)offsetof(struct lu_seq_range, lsr_flags));
410         LASSERTF((int)sizeof(((struct lu_seq_range *)0)->lsr_flags) == 4, "found %lld\n",
411                  (long long)(int)sizeof(((struct lu_seq_range *)0)->lsr_flags));
412         LASSERTF(LU_SEQ_RANGE_MDT == 0, "found %lld\n",
413                  (long long)LU_SEQ_RANGE_MDT);
414         LASSERTF(LU_SEQ_RANGE_OST == 1, "found %lld\n",
415                  (long long)LU_SEQ_RANGE_OST);
416
417         /* Checks for struct lustre_mdt_attrs */
418         LASSERTF((int)sizeof(struct lustre_mdt_attrs) == 24, "found %lld\n",
419                  (long long)(int)sizeof(struct lustre_mdt_attrs));
420         LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_compat) == 0, "found %lld\n",
421                  (long long)(int)offsetof(struct lustre_mdt_attrs, lma_compat));
422         LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat) == 4, "found %lld\n",
423                  (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_compat));
424         LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_incompat) == 4, "found %lld\n",
425                  (long long)(int)offsetof(struct lustre_mdt_attrs, lma_incompat));
426         LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat) == 4, "found %lld\n",
427                  (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_incompat));
428         LASSERTF((int)offsetof(struct lustre_mdt_attrs, lma_self_fid) == 8, "found %lld\n",
429                  (long long)(int)offsetof(struct lustre_mdt_attrs, lma_self_fid));
430         LASSERTF((int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid) == 16, "found %lld\n",
431                  (long long)(int)sizeof(((struct lustre_mdt_attrs *)0)->lma_self_fid));
432         LASSERTF(LMAC_HSM == 0x00000001UL, "found 0x%.8xUL\n",
433                 (unsigned)LMAC_HSM);
434         LASSERTF(LMAC_NOT_IN_OI == 0x00000004UL, "found 0x%.8xUL\n",
435                 (unsigned)LMAC_NOT_IN_OI);
436         LASSERTF(LMAC_FID_ON_OST == 0x00000008UL, "found 0x%.8xUL\n",
437                 (unsigned)LMAC_FID_ON_OST);
438         LASSERTF(LMAC_STRIPE_INFO == 0x00000010UL, "found 0x%.8xUL\n",
439                 (unsigned)LMAC_STRIPE_INFO);
440         LASSERTF(LMAC_COMP_INFO == 0x00000020UL, "found 0x%.8xUL\n",
441                 (unsigned)LMAC_COMP_INFO);
442         LASSERTF(LMAC_IDX_BACKUP == 0x00000040UL, "found 0x%.8xUL\n",
443                 (unsigned)LMAC_IDX_BACKUP);
444         LASSERTF(LMAI_RELEASED == 0x00000001UL, "found 0x%.8xUL\n",
445                 (unsigned)LMAI_RELEASED);
446         LASSERTF(LMAI_AGENT == 0x00000002UL, "found 0x%.8xUL\n",
447                 (unsigned)LMAI_AGENT);
448         LASSERTF(LMAI_REMOTE_PARENT == 0x00000004UL, "found 0x%.8xUL\n",
449                 (unsigned)LMAI_REMOTE_PARENT);
450         LASSERTF(LMAI_STRIPED == 0x00000008UL, "found 0x%.8xUL\n",
451                 (unsigned)LMAI_STRIPED);
452         LASSERTF(LMAI_ORPHAN == 0x00000010UL, "found 0x%.8xUL\n",
453                 (unsigned)LMAI_ORPHAN);
454         LASSERTF(LMAI_ENCRYPT == 0x00000020UL, "found 0x%.8xUL\n",
455                  (unsigned)LMAI_ENCRYPT);
456
457         /* Checks for struct lustre_ost_attrs */
458         LASSERTF((int)sizeof(struct lustre_ost_attrs) == 64, "found %lld\n",
459                  (long long)(int)sizeof(struct lustre_ost_attrs));
460         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_lma) == 0, "found %lld\n",
461                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_lma));
462         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_lma) == 24, "found %lld\n",
463                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_lma));
464         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_parent_fid) == 24, "found %lld\n",
465                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_parent_fid));
466         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_parent_fid) == 16, "found %lld\n",
467                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_parent_fid));
468         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_stripe_size) == 40, "found %lld\n",
469                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_stripe_size));
470         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_stripe_size) == 4, "found %lld\n",
471                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_stripe_size));
472         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_id) == 44, "found %lld\n",
473                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_id));
474         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_id) == 4, "found %lld\n",
475                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_id));
476         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_start) == 48, "found %lld\n",
477                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_start));
478         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_start) == 8, "found %lld\n",
479                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_start));
480         LASSERTF((int)offsetof(struct lustre_ost_attrs, loa_comp_end) == 56, "found %lld\n",
481                  (long long)(int)offsetof(struct lustre_ost_attrs, loa_comp_end));
482         LASSERTF((int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_end) == 8, "found %lld\n",
483                  (long long)(int)sizeof(((struct lustre_ost_attrs *)0)->loa_comp_end));
484         LASSERTF(OUT_CREATE == 1, "found %lld\n",
485                  (long long)OUT_CREATE);
486         LASSERTF(OUT_DESTROY == 2, "found %lld\n",
487                  (long long)OUT_DESTROY);
488         LASSERTF(OUT_REF_ADD == 3, "found %lld\n",
489                  (long long)OUT_REF_ADD);
490         LASSERTF(OUT_REF_DEL == 4, "found %lld\n",
491                  (long long)OUT_REF_DEL);
492         LASSERTF(OUT_ATTR_SET == 5, "found %lld\n",
493                  (long long)OUT_ATTR_SET);
494         LASSERTF(OUT_ATTR_GET == 6, "found %lld\n",
495                  (long long)OUT_ATTR_GET);
496         LASSERTF(OUT_XATTR_SET == 7, "found %lld\n",
497                  (long long)OUT_XATTR_SET);
498         LASSERTF(OUT_XATTR_GET == 8, "found %lld\n",
499                  (long long)OUT_XATTR_GET);
500         LASSERTF(OUT_INDEX_LOOKUP == 9, "found %lld\n",
501                  (long long)OUT_INDEX_LOOKUP);
502         LASSERTF(OUT_INDEX_LOOKUP == 9, "found %lld\n",
503                  (long long)OUT_INDEX_LOOKUP);
504         LASSERTF(OUT_INDEX_INSERT == 10, "found %lld\n",
505                  (long long)OUT_INDEX_INSERT);
506         LASSERTF(OUT_INDEX_DELETE == 11, "found %lld\n",
507                  (long long)OUT_INDEX_DELETE);
508         LASSERTF(OUT_WRITE == 12, "found %lld\n",
509                  (long long)OUT_WRITE);
510         LASSERTF(OUT_XATTR_DEL == 13, "found %lld\n",
511                  (long long)OUT_XATTR_DEL);
512         LASSERTF(OUT_PUNCH == 14, "found %lld\n",
513                  (long long)OUT_PUNCH);
514         LASSERTF(OUT_READ == 15, "found %lld\n",
515                  (long long)OUT_READ);
516         LASSERTF(OUT_NOOP == 16, "found %lld\n",
517                  (long long)OUT_NOOP);
518         LASSERTF(OUT_XATTR_LIST == 17, "found %lld\n",
519                  (long long)OUT_XATTR_LIST);
520
521         /* Checks for struct lustre_som_attrs */
522         LASSERTF((int)sizeof(struct lustre_som_attrs) == 24, "found %lld\n",
523                  (long long)(int)sizeof(struct lustre_som_attrs));
524         LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_valid) == 0, "found %lld\n",
525                  (long long)(int)offsetof(struct lustre_som_attrs, lsa_valid));
526         LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_valid) == 2, "found %lld\n",
527                  (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_valid));
528         LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_reserved) == 2, "found %lld\n",
529                  (long long)(int)offsetof(struct lustre_som_attrs, lsa_reserved));
530         LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_reserved) == 6, "found %lld\n",
531                  (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_reserved));
532         LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_size) == 8, "found %lld\n",
533                  (long long)(int)offsetof(struct lustre_som_attrs, lsa_size));
534         LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_size) == 8, "found %lld\n",
535                  (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_size));
536         LASSERTF((int)offsetof(struct lustre_som_attrs, lsa_blocks) == 16, "found %lld\n",
537                  (long long)(int)offsetof(struct lustre_som_attrs, lsa_blocks));
538         LASSERTF((int)sizeof(((struct lustre_som_attrs *)0)->lsa_blocks) == 8, "found %lld\n",
539                  (long long)(int)sizeof(((struct lustre_som_attrs *)0)->lsa_blocks));
540
541         /* Checks for struct hsm_attrs */
542         LASSERTF((int)sizeof(struct hsm_attrs) == 24, "found %lld\n",
543                  (long long)(int)sizeof(struct hsm_attrs));
544         LASSERTF((int)offsetof(struct hsm_attrs, hsm_compat) == 0, "found %lld\n",
545                  (long long)(int)offsetof(struct hsm_attrs, hsm_compat));
546         LASSERTF((int)sizeof(((struct hsm_attrs *)0)->hsm_compat) == 4, "found %lld\n",
547                  (long long)(int)sizeof(((struct hsm_attrs *)0)->hsm_compat));
548         LASSERTF((int)offsetof(struct hsm_attrs, hsm_flags) == 4, "found %lld\n",
549                  (long long)(int)offsetof(struct hsm_attrs, hsm_flags));
550         LASSERTF((int)sizeof(((struct hsm_attrs *)0)->hsm_flags) == 4, "found %lld\n",
551                  (long long)(int)sizeof(((struct hsm_attrs *)0)->hsm_flags));
552         LASSERTF((int)offsetof(struct hsm_attrs, hsm_arch_id) == 8, "found %lld\n",
553                  (long long)(int)offsetof(struct hsm_attrs, hsm_arch_id));
554         LASSERTF((int)sizeof(((struct hsm_attrs *)0)->hsm_arch_id) == 8, "found %lld\n",
555                  (long long)(int)sizeof(((struct hsm_attrs *)0)->hsm_arch_id));
556         LASSERTF((int)offsetof(struct hsm_attrs, hsm_arch_ver) == 16, "found %lld\n",
557                  (long long)(int)offsetof(struct hsm_attrs, hsm_arch_ver));
558         LASSERTF((int)sizeof(((struct hsm_attrs *)0)->hsm_arch_ver) == 8, "found %lld\n",
559                  (long long)(int)sizeof(((struct hsm_attrs *)0)->hsm_arch_ver));
560
561         /* Checks for struct ost_id */
562         LASSERTF((int)sizeof(struct ost_id) == 16, "found %lld\n",
563                  (long long)(int)sizeof(struct ost_id));
564         LASSERTF((int)offsetof(struct ost_id, oi) == 0, "found %lld\n",
565                  (long long)(int)offsetof(struct ost_id, oi));
566         LASSERTF((int)sizeof(((struct ost_id *)0)->oi) == 16, "found %lld\n",
567                  (long long)(int)sizeof(((struct ost_id *)0)->oi));
568         LASSERTF(LUSTRE_FID_INIT_OID == 1, "found %lld\n",
569                  (long long)LUSTRE_FID_INIT_OID);
570         LASSERTF(FID_SEQ_OST_MDT0 == 0, "found %lld\n",
571                  (long long)FID_SEQ_OST_MDT0);
572         LASSERTF(FID_SEQ_LLOG == 1, "found %lld\n",
573                  (long long)FID_SEQ_LLOG);
574         LASSERTF(FID_SEQ_ECHO == 2, "found %lld\n",
575                  (long long)FID_SEQ_ECHO);
576         LASSERTF(FID_SEQ_UNUSED_START == 3, "found %lld\n",
577                  (long long)FID_SEQ_UNUSED_START);
578         LASSERTF(FID_SEQ_UNUSED_END == 9, "found %lld\n",
579                  (long long)FID_SEQ_UNUSED_END);
580         LASSERTF(FID_SEQ_LLOG_NAME == 10, "found %lld\n",
581                  (long long)FID_SEQ_LLOG_NAME);
582         LASSERTF(FID_SEQ_RSVD == 11, "found %lld\n",
583                  (long long)FID_SEQ_RSVD);
584         LASSERTF(FID_SEQ_IGIF == 12, "found %lld\n",
585                  (long long)FID_SEQ_IGIF);
586         LASSERTF(FID_SEQ_IGIF_MAX == 0x00000000ffffffffULL, "found 0x%.16llxULL\n",
587                         (long long)FID_SEQ_IGIF_MAX);
588         LASSERTF(FID_SEQ_IDIF == 0x0000000100000000ULL, "found 0x%.16llxULL\n",
589                         (long long)FID_SEQ_IDIF);
590         LASSERTF(FID_SEQ_IDIF_MAX == 0x00000001ffffffffULL, "found 0x%.16llxULL\n",
591                         (long long)FID_SEQ_IDIF_MAX);
592         LASSERTF(FID_SEQ_START == 0x0000000200000000ULL, "found 0x%.16llxULL\n",
593                         (long long)FID_SEQ_START);
594         LASSERTF(FID_SEQ_LOCAL_FILE == 0x0000000200000001ULL, "found 0x%.16llxULL\n",
595                         (long long)FID_SEQ_LOCAL_FILE);
596         LASSERTF(FID_SEQ_DOT_LUSTRE == 0x0000000200000002ULL, "found 0x%.16llxULL\n",
597                         (long long)FID_SEQ_DOT_LUSTRE);
598         LASSERTF(FID_SEQ_LOCAL_NAME == 0x0000000200000003ULL, "found 0x%.16llxULL\n",
599                         (long long)FID_SEQ_LOCAL_NAME);
600         LASSERTF(FID_SEQ_SPECIAL == 0x0000000200000004ULL, "found 0x%.16llxULL\n",
601                         (long long)FID_SEQ_SPECIAL);
602         LASSERTF(FID_SEQ_QUOTA == 0x0000000200000005ULL, "found 0x%.16llxULL\n",
603                         (long long)FID_SEQ_QUOTA);
604         LASSERTF(FID_SEQ_QUOTA_GLB == 0x0000000200000006ULL, "found 0x%.16llxULL\n",
605                         (long long)FID_SEQ_QUOTA_GLB);
606         LASSERTF(FID_SEQ_ROOT == 0x0000000200000007ULL, "found 0x%.16llxULL\n",
607                         (long long)FID_SEQ_ROOT);
608         LASSERTF(FID_SEQ_LAYOUT_RBTREE == 0x0000000200000008ULL, "found 0x%.16llxULL\n",
609                         (long long)FID_SEQ_LAYOUT_RBTREE);
610         LASSERTF(FID_SEQ_UPDATE_LOG == 0x0000000200000009ULL, "found 0x%.16llxULL\n",
611                         (long long)FID_SEQ_UPDATE_LOG);
612         LASSERTF(FID_SEQ_UPDATE_LOG_DIR == 0x000000020000000aULL, "found 0x%.16llxULL\n",
613                         (long long)FID_SEQ_UPDATE_LOG_DIR);
614         LASSERTF(FID_SEQ_NORMAL == 0x0000000200000400ULL, "found 0x%.16llxULL\n",
615                         (long long)FID_SEQ_NORMAL);
616         LASSERTF(FID_SEQ_LOV_DEFAULT == 0xffffffffffffffffULL, "found 0x%.16llxULL\n",
617                         (long long)FID_SEQ_LOV_DEFAULT);
618         LASSERTF(FID_OID_SPECIAL_BFL == 0x00000001UL, "found 0x%.8xUL\n",
619                 (unsigned)FID_OID_SPECIAL_BFL);
620         LASSERTF(FID_OID_DOT_LUSTRE == 0x00000001UL, "found 0x%.8xUL\n",
621                 (unsigned)FID_OID_DOT_LUSTRE);
622         LASSERTF(FID_OID_DOT_LUSTRE_OBF == 0x00000002UL, "found 0x%.8xUL\n",
623                 (unsigned)FID_OID_DOT_LUSTRE_OBF);
624         LASSERTF(FID_OID_DOT_LUSTRE_LPF == 0x00000003UL, "found 0x%.8xUL\n",
625                 (unsigned)FID_OID_DOT_LUSTRE_LPF);
626
627         /* Checks for struct lu_dirent */
628         LASSERTF((int)sizeof(struct lu_dirent) == 32, "found %lld\n",
629                  (long long)(int)sizeof(struct lu_dirent));
630         LASSERTF((int)offsetof(struct lu_dirent, lde_fid) == 0, "found %lld\n",
631                  (long long)(int)offsetof(struct lu_dirent, lde_fid));
632         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_fid) == 16, "found %lld\n",
633                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_fid));
634         LASSERTF((int)offsetof(struct lu_dirent, lde_hash) == 16, "found %lld\n",
635                  (long long)(int)offsetof(struct lu_dirent, lde_hash));
636         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_hash) == 8, "found %lld\n",
637                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_hash));
638         LASSERTF((int)offsetof(struct lu_dirent, lde_reclen) == 24, "found %lld\n",
639                  (long long)(int)offsetof(struct lu_dirent, lde_reclen));
640         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_reclen) == 2, "found %lld\n",
641                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_reclen));
642         LASSERTF((int)offsetof(struct lu_dirent, lde_namelen) == 26, "found %lld\n",
643                  (long long)(int)offsetof(struct lu_dirent, lde_namelen));
644         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_namelen) == 2, "found %lld\n",
645                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_namelen));
646         LASSERTF((int)offsetof(struct lu_dirent, lde_attrs) == 28, "found %lld\n",
647                  (long long)(int)offsetof(struct lu_dirent, lde_attrs));
648         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_attrs) == 4, "found %lld\n",
649                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_attrs));
650         LASSERTF((int)offsetof(struct lu_dirent, lde_name[0]) == 32, "found %lld\n",
651                  (long long)(int)offsetof(struct lu_dirent, lde_name[0]));
652         LASSERTF((int)sizeof(((struct lu_dirent *)0)->lde_name[0]) == 1, "found %lld\n",
653                  (long long)(int)sizeof(((struct lu_dirent *)0)->lde_name[0]));
654         LASSERTF(LUDA_FID == 0x00000001UL, "found 0x%.8xUL\n",
655                 (unsigned)LUDA_FID);
656         LASSERTF(LUDA_TYPE == 0x00000002UL, "found 0x%.8xUL\n",
657                 (unsigned)LUDA_TYPE);
658         LASSERTF(LUDA_64BITHASH == 0x00000004UL, "found 0x%.8xUL\n",
659                 (unsigned)LUDA_64BITHASH);
660
661         /* Checks for struct luda_type */
662         LASSERTF((int)sizeof(struct luda_type) == 2, "found %lld\n",
663                  (long long)(int)sizeof(struct luda_type));
664         LASSERTF((int)offsetof(struct luda_type, lt_type) == 0, "found %lld\n",
665                  (long long)(int)offsetof(struct luda_type, lt_type));
666         LASSERTF((int)sizeof(((struct luda_type *)0)->lt_type) == 2, "found %lld\n",
667                  (long long)(int)sizeof(((struct luda_type *)0)->lt_type));
668
669         /* Checks for struct lu_dirpage */
670         LASSERTF((int)sizeof(struct lu_dirpage) == 24, "found %lld\n",
671                  (long long)(int)sizeof(struct lu_dirpage));
672         LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_start) == 0, "found %lld\n",
673                  (long long)(int)offsetof(struct lu_dirpage, ldp_hash_start));
674         LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start) == 8, "found %lld\n",
675                  (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_start));
676         LASSERTF((int)offsetof(struct lu_dirpage, ldp_hash_end) == 8, "found %lld\n",
677                  (long long)(int)offsetof(struct lu_dirpage, ldp_hash_end));
678         LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end) == 8, "found %lld\n",
679                  (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_hash_end));
680         LASSERTF((int)offsetof(struct lu_dirpage, ldp_flags) == 16, "found %lld\n",
681                  (long long)(int)offsetof(struct lu_dirpage, ldp_flags));
682         LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_flags) == 4, "found %lld\n",
683                  (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_flags));
684         LASSERTF((int)offsetof(struct lu_dirpage, ldp_pad0) == 20, "found %lld\n",
685                  (long long)(int)offsetof(struct lu_dirpage, ldp_pad0));
686         LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_pad0) == 4, "found %lld\n",
687                  (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_pad0));
688         LASSERTF((int)offsetof(struct lu_dirpage, ldp_entries[0]) == 24, "found %lld\n",
689                  (long long)(int)offsetof(struct lu_dirpage, ldp_entries[0]));
690         LASSERTF((int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0]) == 32, "found %lld\n",
691                  (long long)(int)sizeof(((struct lu_dirpage *)0)->ldp_entries[0]));
692         LASSERTF(LDF_EMPTY == 1, "found %lld\n",
693                  (long long)LDF_EMPTY);
694         LASSERTF(LDF_COLLIDE == 2, "found %lld\n",
695                  (long long)LDF_COLLIDE);
696         LASSERTF(LU_PAGE_SIZE == 4096, "found %lld\n",
697                  (long long)LU_PAGE_SIZE);
698         /* Checks for union lu_page */
699         LASSERTF((int)sizeof(union lu_page) == 4096, "found %lld\n",
700                  (long long)(int)sizeof(union lu_page));
701
702         /* Checks for struct lu_ladvise */
703         LASSERTF((int)sizeof(struct lu_ladvise) == 32, "found %lld\n",
704                  (long long)(int)sizeof(struct lu_ladvise));
705         LASSERTF((int)offsetof(struct lu_ladvise, lla_advice) == 0, "found %lld\n",
706                  (long long)(int)offsetof(struct lu_ladvise, lla_advice));
707         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_advice) == 2, "found %lld\n",
708                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_advice));
709         LASSERTF((int)offsetof(struct lu_ladvise, lla_value1) == 2, "found %lld\n",
710                  (long long)(int)offsetof(struct lu_ladvise, lla_value1));
711         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value1) == 2, "found %lld\n",
712                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value1));
713         LASSERTF((int)offsetof(struct lu_ladvise, lla_value2) == 4, "found %lld\n",
714                  (long long)(int)offsetof(struct lu_ladvise, lla_value2));
715         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value2) == 4, "found %lld\n",
716                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value2));
717         LASSERTF((int)offsetof(struct lu_ladvise, lla_start) == 8, "found %lld\n",
718                  (long long)(int)offsetof(struct lu_ladvise, lla_start));
719         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_start) == 8, "found %lld\n",
720                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_start));
721         LASSERTF((int)offsetof(struct lu_ladvise, lla_end) == 16, "found %lld\n",
722                  (long long)(int)offsetof(struct lu_ladvise, lla_end));
723         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_end) == 8, "found %lld\n",
724                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_end));
725         LASSERTF((int)offsetof(struct lu_ladvise, lla_value3) == 24, "found %lld\n",
726                  (long long)(int)offsetof(struct lu_ladvise, lla_value3));
727         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value3) == 4, "found %lld\n",
728                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value3));
729         LASSERTF((int)offsetof(struct lu_ladvise, lla_value4) == 28, "found %lld\n",
730                  (long long)(int)offsetof(struct lu_ladvise, lla_value4));
731         LASSERTF((int)sizeof(((struct lu_ladvise *)0)->lla_value4) == 4, "found %lld\n",
732                  (long long)(int)sizeof(((struct lu_ladvise *)0)->lla_value4));
733         LASSERTF(LU_LADVISE_WILLREAD == 1, "found %lld\n",
734                  (long long)LU_LADVISE_WILLREAD);
735         LASSERTF(LU_LADVISE_DONTNEED == 2, "found %lld\n",
736                  (long long)LU_LADVISE_DONTNEED);
737         LASSERTF(LU_LADVISE_LOCKNOEXPAND == 3, "found %lld\n",
738                  (long long)LU_LADVISE_LOCKNOEXPAND);
739         LASSERTF(LU_LADVISE_LOCKAHEAD == 4, "found %lld\n",
740                  (long long)LU_LADVISE_LOCKAHEAD);
741
742         /* Checks for struct ladvise_hdr */
743         LASSERTF((int)sizeof(struct ladvise_hdr) == 32, "found %lld\n",
744                  (long long)(int)sizeof(struct ladvise_hdr));
745         LASSERTF((int)offsetof(struct ladvise_hdr, lah_magic) == 0, "found %lld\n",
746                  (long long)(int)offsetof(struct ladvise_hdr, lah_magic));
747         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_magic) == 4, "found %lld\n",
748                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_magic));
749         LASSERTF((int)offsetof(struct ladvise_hdr, lah_count) == 4, "found %lld\n",
750                  (long long)(int)offsetof(struct ladvise_hdr, lah_count));
751         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_count) == 4, "found %lld\n",
752                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_count));
753         LASSERTF((int)offsetof(struct ladvise_hdr, lah_flags) == 8, "found %lld\n",
754                  (long long)(int)offsetof(struct ladvise_hdr, lah_flags));
755         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_flags) == 8, "found %lld\n",
756                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_flags));
757         LASSERTF((int)offsetof(struct ladvise_hdr, lah_value1) == 16, "found %lld\n",
758                  (long long)(int)offsetof(struct ladvise_hdr, lah_value1));
759         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value1) == 4, "found %lld\n",
760                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value1));
761         LASSERTF((int)offsetof(struct ladvise_hdr, lah_value2) == 20, "found %lld\n",
762                  (long long)(int)offsetof(struct ladvise_hdr, lah_value2));
763         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value2) == 4, "found %lld\n",
764                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value2));
765         LASSERTF((int)offsetof(struct ladvise_hdr, lah_value3) == 24, "found %lld\n",
766                  (long long)(int)offsetof(struct ladvise_hdr, lah_value3));
767         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_value3) == 8, "found %lld\n",
768                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_value3));
769         LASSERTF((int)offsetof(struct ladvise_hdr, lah_advise) == 32, "found %lld\n",
770                  (long long)(int)offsetof(struct ladvise_hdr, lah_advise));
771         LASSERTF((int)sizeof(((struct ladvise_hdr *)0)->lah_advise) == 0, "found %lld\n",
772                  (long long)(int)sizeof(((struct ladvise_hdr *)0)->lah_advise));
773         BUILD_BUG_ON(LF_ASYNC != 0x00000001);
774         BUILD_BUG_ON(LF_UNSET != 0x00000002);
775         BUILD_BUG_ON(LADVISE_MAGIC != 0x1adf1ce0);
776
777         /* Checks for struct lustre_handle */
778         LASSERTF((int)sizeof(struct lustre_handle) == 8, "found %lld\n",
779                  (long long)(int)sizeof(struct lustre_handle));
780         LASSERTF((int)offsetof(struct lustre_handle, cookie) == 0, "found %lld\n",
781                  (long long)(int)offsetof(struct lustre_handle, cookie));
782         LASSERTF((int)sizeof(((struct lustre_handle *)0)->cookie) == 8, "found %lld\n",
783                  (long long)(int)sizeof(((struct lustre_handle *)0)->cookie));
784
785         /* Checks for struct lustre_msg_v2 */
786         LASSERTF((int)sizeof(struct lustre_msg_v2) == 32, "found %lld\n",
787                  (long long)(int)sizeof(struct lustre_msg_v2));
788         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_bufcount) == 0, "found %lld\n",
789                  (long long)(int)offsetof(struct lustre_msg_v2, lm_bufcount));
790         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_bufcount) == 4, "found %lld\n",
791                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_bufcount));
792         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_secflvr) == 4, "found %lld\n",
793                  (long long)(int)offsetof(struct lustre_msg_v2, lm_secflvr));
794         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_secflvr) == 4, "found %lld\n",
795                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_secflvr));
796         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_magic) == 8, "found %lld\n",
797                  (long long)(int)offsetof(struct lustre_msg_v2, lm_magic));
798         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_magic) == 4, "found %lld\n",
799                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_magic));
800         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_repsize) == 12, "found %lld\n",
801                  (long long)(int)offsetof(struct lustre_msg_v2, lm_repsize));
802         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_repsize) == 4, "found %lld\n",
803                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_repsize));
804         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_cksum) == 16, "found %lld\n",
805                  (long long)(int)offsetof(struct lustre_msg_v2, lm_cksum));
806         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_cksum) == 4, "found %lld\n",
807                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_cksum));
808         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_flags) == 20, "found %lld\n",
809                  (long long)(int)offsetof(struct lustre_msg_v2, lm_flags));
810         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_flags) == 4, "found %lld\n",
811                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_flags));
812         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_padding_2) == 24, "found %lld\n",
813                  (long long)(int)offsetof(struct lustre_msg_v2, lm_padding_2));
814         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_2) == 4, "found %lld\n",
815                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_2));
816         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_padding_3) == 28, "found %lld\n",
817                  (long long)(int)offsetof(struct lustre_msg_v2, lm_padding_3));
818         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_3) == 4, "found %lld\n",
819                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_padding_3));
820         LASSERTF((int)offsetof(struct lustre_msg_v2, lm_buflens[0]) == 32, "found %lld\n",
821                  (long long)(int)offsetof(struct lustre_msg_v2, lm_buflens[0]));
822         LASSERTF((int)sizeof(((struct lustre_msg_v2 *)0)->lm_buflens[0]) == 4, "found %lld\n",
823                  (long long)(int)sizeof(((struct lustre_msg_v2 *)0)->lm_buflens[0]));
824         LASSERTF(LUSTRE_MSG_MAGIC_V2 == 0x0bd00bd3UL, "found 0x%.8xUL\n",
825                 (unsigned)LUSTRE_MSG_MAGIC_V2);
826         LASSERTF(LUSTRE_MSG_MAGIC_V2_SWABBED == 0xd30bd00bUL, "found 0x%.8xUL\n",
827                 (unsigned)LUSTRE_MSG_MAGIC_V2_SWABBED);
828
829         /* Checks for struct ptlrpc_body */
830         LASSERTF((int)sizeof(struct ptlrpc_body_v3) == 184, "found %lld\n",
831                  (long long)(int)sizeof(struct ptlrpc_body_v3));
832         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_handle) == 0, "found %lld\n",
833                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_handle));
834         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_handle) == 8, "found %lld\n",
835                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_handle));
836         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_type) == 8, "found %lld\n",
837                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_type));
838         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_type) == 4, "found %lld\n",
839                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_type));
840         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_version) == 12, "found %lld\n",
841                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_version));
842         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_version) == 4, "found %lld\n",
843                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_version));
844         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_opc) == 16, "found %lld\n",
845                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_opc));
846         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_opc) == 4, "found %lld\n",
847                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_opc));
848         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_status) == 20, "found %lld\n",
849                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_status));
850         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_status) == 4, "found %lld\n",
851                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_status));
852         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_last_xid) == 24, "found %lld\n",
853                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_last_xid));
854         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_xid) == 8, "found %lld\n",
855                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_xid));
856         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_tag) == 32, "found %lld\n",
857                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_tag));
858         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_tag) == 2, "found %lld\n",
859                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_tag));
860         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding0) == 34, "found %lld\n",
861                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding0));
862         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding0) == 2, "found %lld\n",
863                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding0));
864         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding1) == 36, "found %lld\n",
865                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding1));
866         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding1) == 4, "found %lld\n",
867                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding1));
868         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_last_committed) == 40, "found %lld\n",
869                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_last_committed));
870         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_committed) == 8, "found %lld\n",
871                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_committed));
872         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_transno) == 48, "found %lld\n",
873                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_transno));
874         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_transno) == 8, "found %lld\n",
875                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_transno));
876         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_flags) == 56, "found %lld\n",
877                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_flags));
878         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_flags) == 4, "found %lld\n",
879                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_flags));
880         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_op_flags) == 60, "found %lld\n",
881                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_op_flags));
882         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_op_flags) == 4, "found %lld\n",
883                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_op_flags));
884         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_conn_cnt) == 64, "found %lld\n",
885                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_conn_cnt));
886         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_conn_cnt) == 4, "found %lld\n",
887                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_conn_cnt));
888         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_timeout) == 68, "found %lld\n",
889                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_timeout));
890         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_timeout) == 4, "found %lld\n",
891                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_timeout));
892         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_service_time) == 72, "found %lld\n",
893                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_service_time));
894         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_service_time) == 4, "found %lld\n",
895                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_service_time));
896         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_limit) == 76, "found %lld\n",
897                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_limit));
898         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_limit) == 4, "found %lld\n",
899                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_limit));
900         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_slv) == 80, "found %lld\n",
901                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_slv));
902         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_slv) == 8, "found %lld\n",
903                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_slv));
904         BUILD_BUG_ON(PTLRPC_NUM_VERSIONS != 4);
905         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_pre_versions) == 88, "found %lld\n",
906                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_pre_versions));
907         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions) == 32, "found %lld\n",
908                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions));
909         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_mbits) == 120, "found %lld\n",
910                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_mbits));
911         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits) == 8, "found %lld\n",
912                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits));
913         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_0) == 128, "found %lld\n",
914                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_0));
915         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0) == 8, "found %lld\n",
916                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0));
917         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_1) == 136, "found %lld\n",
918                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_1));
919         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1) == 8, "found %lld\n",
920                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1));
921         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_2) == 144, "found %lld\n",
922                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_padding64_2));
923         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2) == 8, "found %lld\n",
924                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2));
925         BUILD_BUG_ON(LUSTRE_JOBID_SIZE != 32);
926         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_jobid) == 152, "found %lld\n",
927                  (long long)(int)offsetof(struct ptlrpc_body_v3, pb_jobid));
928         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_jobid) == 32, "found %lld\n",
929                  (long long)(int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_jobid));
930         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_handle) == (int)offsetof(struct ptlrpc_body_v2, pb_handle), "%d != %d\n",
931                  (int)offsetof(struct ptlrpc_body_v3, pb_handle), (int)offsetof(struct ptlrpc_body_v2, pb_handle));
932         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_handle) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_handle), "%d != %d\n",
933                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_handle), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_handle));
934         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_type) == (int)offsetof(struct ptlrpc_body_v2, pb_type), "%d != %d\n",
935                  (int)offsetof(struct ptlrpc_body_v3, pb_type), (int)offsetof(struct ptlrpc_body_v2, pb_type));
936         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_type) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_type), "%d != %d\n",
937                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_type), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_type));
938         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_version) == (int)offsetof(struct ptlrpc_body_v2, pb_version), "%d != %d\n",
939                  (int)offsetof(struct ptlrpc_body_v3, pb_version), (int)offsetof(struct ptlrpc_body_v2, pb_version));
940         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_version) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_version), "%d != %d\n",
941                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_version), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_version));
942         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_opc) == (int)offsetof(struct ptlrpc_body_v2, pb_opc), "%d != %d\n",
943                  (int)offsetof(struct ptlrpc_body_v3, pb_opc), (int)offsetof(struct ptlrpc_body_v2, pb_opc));
944         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_opc) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_opc), "%d != %d\n",
945                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_opc), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_opc));
946         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_status) == (int)offsetof(struct ptlrpc_body_v2, pb_status), "%d != %d\n",
947                  (int)offsetof(struct ptlrpc_body_v3, pb_status), (int)offsetof(struct ptlrpc_body_v2, pb_status));
948         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_status) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_status), "%d != %d\n",
949                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_status), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_status));
950         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_last_xid) == (int)offsetof(struct ptlrpc_body_v2, pb_last_xid), "%d != %d\n",
951                  (int)offsetof(struct ptlrpc_body_v3, pb_last_xid), (int)offsetof(struct ptlrpc_body_v2, pb_last_xid));
952         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_xid) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_last_xid), "%d != %d\n",
953                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_xid), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_last_xid));
954         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_tag) == (int)offsetof(struct ptlrpc_body_v2, pb_tag), "%d != %d\n",
955                  (int)offsetof(struct ptlrpc_body_v3, pb_tag), (int)offsetof(struct ptlrpc_body_v2, pb_tag));
956         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_tag) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_tag), "%d != %d\n",
957                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_tag), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_tag));
958         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding0) == (int)offsetof(struct ptlrpc_body_v2, pb_padding0), "%d != %d\n",
959                  (int)offsetof(struct ptlrpc_body_v3, pb_padding0), (int)offsetof(struct ptlrpc_body_v2, pb_padding0));
960         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding0) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding0), "%d != %d\n",
961                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding0), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding0));
962         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding1) == (int)offsetof(struct ptlrpc_body_v2, pb_padding1), "%d != %d\n",
963                  (int)offsetof(struct ptlrpc_body_v3, pb_padding1), (int)offsetof(struct ptlrpc_body_v2, pb_padding1));
964         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding1) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding1), "%d != %d\n",
965                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding1), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding1));
966         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_last_committed) == (int)offsetof(struct ptlrpc_body_v2, pb_last_committed), "%d != %d\n",
967                  (int)offsetof(struct ptlrpc_body_v3, pb_last_committed), (int)offsetof(struct ptlrpc_body_v2, pb_last_committed));
968         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_committed) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_last_committed), "%d != %d\n",
969                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_last_committed), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_last_committed));
970         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_transno) == (int)offsetof(struct ptlrpc_body_v2, pb_transno), "%d != %d\n",
971                  (int)offsetof(struct ptlrpc_body_v3, pb_transno), (int)offsetof(struct ptlrpc_body_v2, pb_transno));
972         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_transno) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_transno), "%d != %d\n",
973                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_transno), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_transno));
974         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_flags) == (int)offsetof(struct ptlrpc_body_v2, pb_flags), "%d != %d\n",
975                  (int)offsetof(struct ptlrpc_body_v3, pb_flags), (int)offsetof(struct ptlrpc_body_v2, pb_flags));
976         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_flags) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_flags), "%d != %d\n",
977                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_flags), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_flags));
978         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_op_flags) == (int)offsetof(struct ptlrpc_body_v2, pb_op_flags), "%d != %d\n",
979                  (int)offsetof(struct ptlrpc_body_v3, pb_op_flags), (int)offsetof(struct ptlrpc_body_v2, pb_op_flags));
980         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_op_flags) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_op_flags), "%d != %d\n",
981                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_op_flags), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_op_flags));
982         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_conn_cnt) == (int)offsetof(struct ptlrpc_body_v2, pb_conn_cnt), "%d != %d\n",
983                  (int)offsetof(struct ptlrpc_body_v3, pb_conn_cnt), (int)offsetof(struct ptlrpc_body_v2, pb_conn_cnt));
984         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_conn_cnt) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_conn_cnt), "%d != %d\n",
985                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_conn_cnt), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_conn_cnt));
986         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_timeout) == (int)offsetof(struct ptlrpc_body_v2, pb_timeout), "%d != %d\n",
987                  (int)offsetof(struct ptlrpc_body_v3, pb_timeout), (int)offsetof(struct ptlrpc_body_v2, pb_timeout));
988         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_timeout) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_timeout), "%d != %d\n",
989                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_timeout), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_timeout));
990         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_service_time) == (int)offsetof(struct ptlrpc_body_v2, pb_service_time), "%d != %d\n",
991                  (int)offsetof(struct ptlrpc_body_v3, pb_service_time), (int)offsetof(struct ptlrpc_body_v2, pb_service_time));
992         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_service_time) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_service_time), "%d != %d\n",
993                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_service_time), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_service_time));
994         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_limit) == (int)offsetof(struct ptlrpc_body_v2, pb_limit), "%d != %d\n",
995                  (int)offsetof(struct ptlrpc_body_v3, pb_limit), (int)offsetof(struct ptlrpc_body_v2, pb_limit));
996         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_limit) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_limit), "%d != %d\n",
997                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_limit), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_limit));
998         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_slv) == (int)offsetof(struct ptlrpc_body_v2, pb_slv), "%d != %d\n",
999                  (int)offsetof(struct ptlrpc_body_v3, pb_slv), (int)offsetof(struct ptlrpc_body_v2, pb_slv));
1000         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_slv) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_slv), "%d != %d\n",
1001                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_slv), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_slv));
1002         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_pre_versions) == (int)offsetof(struct ptlrpc_body_v2, pb_pre_versions), "%d != %d\n",
1003                  (int)offsetof(struct ptlrpc_body_v3, pb_pre_versions), (int)offsetof(struct ptlrpc_body_v2, pb_pre_versions));
1004         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_pre_versions), "%d != %d\n",
1005                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_pre_versions), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_pre_versions));
1006         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_mbits) == (int)offsetof(struct ptlrpc_body_v2, pb_mbits), "%d != %d\n",
1007                  (int)offsetof(struct ptlrpc_body_v3, pb_mbits), (int)offsetof(struct ptlrpc_body_v2, pb_mbits));
1008         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_mbits), "%d != %d\n",
1009                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_mbits), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_mbits));
1010         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_0) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_0), "%d != %d\n",
1011                  (int)offsetof(struct ptlrpc_body_v3, pb_padding64_0), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_0));
1012         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_0), "%d != %d\n",
1013                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_0), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_0));
1014         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_1) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_1), "%d != %d\n",
1015                  (int)offsetof(struct ptlrpc_body_v3, pb_padding64_1), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_1));
1016         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_1), "%d != %d\n",
1017                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_1), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_1));
1018         LASSERTF((int)offsetof(struct ptlrpc_body_v3, pb_padding64_2) == (int)offsetof(struct ptlrpc_body_v2, pb_padding64_2), "%d != %d\n",
1019                  (int)offsetof(struct ptlrpc_body_v3, pb_padding64_2), (int)offsetof(struct ptlrpc_body_v2, pb_padding64_2));
1020         LASSERTF((int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2) == (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_2), "%d != %d\n",
1021                  (int)sizeof(((struct ptlrpc_body_v3 *)0)->pb_padding64_2), (int)sizeof(((struct ptlrpc_body_v2 *)0)->pb_padding64_2));
1022         LASSERTF(MSG_PTLRPC_BODY_OFF == 0, "found %lld\n",
1023                  (long long)MSG_PTLRPC_BODY_OFF);
1024         LASSERTF(REQ_REC_OFF == 1, "found %lld\n",
1025                  (long long)REQ_REC_OFF);
1026         LASSERTF(REPLY_REC_OFF == 1, "found %lld\n",
1027                  (long long)REPLY_REC_OFF);
1028         LASSERTF(DLM_LOCKREQ_OFF == 1, "found %lld\n",
1029                  (long long)DLM_LOCKREQ_OFF);
1030         LASSERTF(DLM_REQ_REC_OFF == 2, "found %lld\n",
1031                  (long long)DLM_REQ_REC_OFF);
1032         LASSERTF(DLM_INTENT_IT_OFF == 2, "found %lld\n",
1033                  (long long)DLM_INTENT_IT_OFF);
1034         LASSERTF(DLM_INTENT_REC_OFF == 3, "found %lld\n",
1035                  (long long)DLM_INTENT_REC_OFF);
1036         LASSERTF(DLM_LOCKREPLY_OFF == 1, "found %lld\n",
1037                  (long long)DLM_LOCKREPLY_OFF);
1038         LASSERTF(DLM_REPLY_REC_OFF == 2, "found %lld\n",
1039                  (long long)DLM_REPLY_REC_OFF);
1040         LASSERTF(MSG_PTLRPC_HEADER_OFF == 31, "found %lld\n",
1041                  (long long)MSG_PTLRPC_HEADER_OFF);
1042         LASSERTF(PTLRPC_MSG_VERSION == 0x00000003UL, "found 0x%.8xUL\n",
1043                 (unsigned)PTLRPC_MSG_VERSION);
1044         LASSERTF(LUSTRE_VERSION_MASK == 0xffff0000UL, "found 0x%.8xUL\n",
1045                 (unsigned)LUSTRE_VERSION_MASK);
1046         LASSERTF(LUSTRE_OBD_VERSION == 0x00010000UL, "found 0x%.8xUL\n",
1047                 (unsigned)LUSTRE_OBD_VERSION);
1048         LASSERTF(LUSTRE_MDS_VERSION == 0x00020000UL, "found 0x%.8xUL\n",
1049                 (unsigned)LUSTRE_MDS_VERSION);
1050         LASSERTF(LUSTRE_OST_VERSION == 0x00030000UL, "found 0x%.8xUL\n",
1051                 (unsigned)LUSTRE_OST_VERSION);
1052         LASSERTF(LUSTRE_DLM_VERSION == 0x00040000UL, "found 0x%.8xUL\n",
1053                 (unsigned)LUSTRE_DLM_VERSION);
1054         LASSERTF(LUSTRE_LOG_VERSION == 0x00050000UL, "found 0x%.8xUL\n",
1055                 (unsigned)LUSTRE_LOG_VERSION);
1056         LASSERTF(LUSTRE_MGS_VERSION == 0x00060000UL, "found 0x%.8xUL\n",
1057                 (unsigned)LUSTRE_MGS_VERSION);
1058         LASSERTF(MSGHDR_AT_SUPPORT == 1, "found %lld\n",
1059                  (long long)MSGHDR_AT_SUPPORT);
1060         LASSERTF(MSGHDR_CKSUM_INCOMPAT18 == 2, "found %lld\n",
1061                  (long long)MSGHDR_CKSUM_INCOMPAT18);
1062         LASSERTF(MSG_RESENT == 0x00000002UL, "found 0x%.8xUL\n",
1063                 (unsigned)MSG_RESENT);
1064         LASSERTF(MSG_REPLAY == 0x00000004UL, "found 0x%.8xUL\n",
1065                 (unsigned)MSG_REPLAY);
1066         LASSERTF(MSG_REQ_REPLAY_DONE == 0x00000040UL, "found 0x%.8xUL\n",
1067                 (unsigned)MSG_REQ_REPLAY_DONE);
1068         LASSERTF(MSG_LOCK_REPLAY_DONE == 0x00000080UL, "found 0x%.8xUL\n",
1069                 (unsigned)MSG_LOCK_REPLAY_DONE);
1070         LASSERTF(MSG_CONNECT_RECOVERING == 0x00000001UL, "found 0x%.8xUL\n",
1071                 (unsigned)MSG_CONNECT_RECOVERING);
1072         LASSERTF(MSG_CONNECT_RECONNECT == 0x00000002UL, "found 0x%.8xUL\n",
1073                 (unsigned)MSG_CONNECT_RECONNECT);
1074         LASSERTF(MSG_CONNECT_REPLAYABLE == 0x00000004UL, "found 0x%.8xUL\n",
1075                 (unsigned)MSG_CONNECT_REPLAYABLE);
1076         LASSERTF(MSG_CONNECT_LIBCLIENT == 0x00000010UL, "found 0x%.8xUL\n",
1077                 (unsigned)MSG_CONNECT_LIBCLIENT);
1078         LASSERTF(MSG_CONNECT_INITIAL == 0x00000020UL, "found 0x%.8xUL\n",
1079                 (unsigned)MSG_CONNECT_INITIAL);
1080         LASSERTF(MSG_CONNECT_NEXT_VER == 0x00000080UL, "found 0x%.8xUL\n",
1081                 (unsigned)MSG_CONNECT_NEXT_VER);
1082         LASSERTF(MSG_CONNECT_TRANSNO == 0x00000100UL, "found 0x%.8xUL\n",
1083                 (unsigned)MSG_CONNECT_TRANSNO);
1084
1085         /* Checks for struct obd_connect_data */
1086         LASSERTF((int)sizeof(struct obd_connect_data) == 192, "found %lld\n",
1087                  (long long)(int)sizeof(struct obd_connect_data));
1088         LASSERTF((int)offsetof(struct obd_connect_data, ocd_connect_flags) == 0, "found %lld\n",
1089                  (long long)(int)offsetof(struct obd_connect_data, ocd_connect_flags));
1090         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags) == 8, "found %lld\n",
1091                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags));
1092         LASSERTF((int)offsetof(struct obd_connect_data, ocd_version) == 8, "found %lld\n",
1093                  (long long)(int)offsetof(struct obd_connect_data, ocd_version));
1094         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_version) == 4, "found %lld\n",
1095                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_version));
1096         LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant) == 12, "found %lld\n",
1097                  (long long)(int)offsetof(struct obd_connect_data, ocd_grant));
1098         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant) == 4, "found %lld\n",
1099                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant));
1100         LASSERTF((int)offsetof(struct obd_connect_data, ocd_index) == 16, "found %lld\n",
1101                  (long long)(int)offsetof(struct obd_connect_data, ocd_index));
1102         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_index) == 4, "found %lld\n",
1103                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_index));
1104         LASSERTF((int)offsetof(struct obd_connect_data, ocd_brw_size) == 20, "found %lld\n",
1105                  (long long)(int)offsetof(struct obd_connect_data, ocd_brw_size));
1106         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_brw_size) == 4, "found %lld\n",
1107                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_brw_size));
1108         LASSERTF((int)offsetof(struct obd_connect_data, ocd_ibits_known) == 24, "found %lld\n",
1109                  (long long)(int)offsetof(struct obd_connect_data, ocd_ibits_known));
1110         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_ibits_known) == 8, "found %lld\n",
1111                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_ibits_known));
1112         LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_blkbits) == 32, "found %lld\n",
1113                  (long long)(int)offsetof(struct obd_connect_data, ocd_grant_blkbits));
1114         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_blkbits) == 1, "found %lld\n",
1115                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_blkbits));
1116         LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_inobits) == 33, "found %lld\n",
1117                  (long long)(int)offsetof(struct obd_connect_data, ocd_grant_inobits));
1118         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_inobits) == 1, "found %lld\n",
1119                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_inobits));
1120         LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_tax_kb) == 34, "found %lld\n",
1121                  (long long)(int)offsetof(struct obd_connect_data, ocd_grant_tax_kb));
1122         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_tax_kb) == 2, "found %lld\n",
1123                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_tax_kb));
1124         LASSERTF((int)offsetof(struct obd_connect_data, ocd_grant_max_blks) == 36, "found %lld\n",
1125                  (long long)(int)offsetof(struct obd_connect_data, ocd_grant_max_blks));
1126         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_grant_max_blks) == 4, "found %lld\n",
1127                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_grant_max_blks));
1128         LASSERTF((int)offsetof(struct obd_connect_data, ocd_transno) == 40, "found %lld\n",
1129                  (long long)(int)offsetof(struct obd_connect_data, ocd_transno));
1130         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_transno) == 8, "found %lld\n",
1131                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_transno));
1132         LASSERTF((int)offsetof(struct obd_connect_data, ocd_group) == 48, "found %lld\n",
1133                  (long long)(int)offsetof(struct obd_connect_data, ocd_group));
1134         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_group) == 4, "found %lld\n",
1135                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_group));
1136         LASSERTF((int)offsetof(struct obd_connect_data, ocd_cksum_types) == 52, "found %lld\n",
1137                  (long long)(int)offsetof(struct obd_connect_data, ocd_cksum_types));
1138         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_cksum_types) == 4, "found %lld\n",
1139                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_cksum_types));
1140         LASSERTF((int)offsetof(struct obd_connect_data, ocd_max_easize) == 56, "found %lld\n",
1141                  (long long)(int)offsetof(struct obd_connect_data, ocd_max_easize));
1142         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_max_easize) == 4, "found %lld\n",
1143                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_max_easize));
1144         LASSERTF((int)offsetof(struct obd_connect_data, ocd_instance) == 60, "found %lld\n",
1145                  (long long)(int)offsetof(struct obd_connect_data, ocd_instance));
1146         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_instance) == 4, "found %lld\n",
1147                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_instance));
1148         LASSERTF((int)offsetof(struct obd_connect_data, ocd_maxbytes) == 64, "found %lld\n",
1149                  (long long)(int)offsetof(struct obd_connect_data, ocd_maxbytes));
1150         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_maxbytes) == 8, "found %lld\n",
1151                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_maxbytes));
1152         LASSERTF((int)offsetof(struct obd_connect_data, ocd_maxmodrpcs) == 72, "found %lld\n",
1153                  (long long)(int)offsetof(struct obd_connect_data, ocd_maxmodrpcs));
1154         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_maxmodrpcs) == 2, "found %lld\n",
1155                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_maxmodrpcs));
1156         LASSERTF((int)offsetof(struct obd_connect_data, padding0) == 74, "found %lld\n",
1157                  (long long)(int)offsetof(struct obd_connect_data, padding0));
1158         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding0) == 2, "found %lld\n",
1159                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding0));
1160         LASSERTF((int)offsetof(struct obd_connect_data, padding1) == 76, "found %lld\n",
1161                  (long long)(int)offsetof(struct obd_connect_data, padding1));
1162         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding1) == 4, "found %lld\n",
1163                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding1));
1164         LASSERTF((int)offsetof(struct obd_connect_data, ocd_connect_flags2) == 80, "found %lld\n",
1165                  (long long)(int)offsetof(struct obd_connect_data, ocd_connect_flags2));
1166         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags2) == 8, "found %lld\n",
1167                  (long long)(int)sizeof(((struct obd_connect_data *)0)->ocd_connect_flags2));
1168         LASSERTF((int)offsetof(struct obd_connect_data, padding3) == 88, "found %lld\n",
1169                  (long long)(int)offsetof(struct obd_connect_data, padding3));
1170         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding3) == 8, "found %lld\n",
1171                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding3));
1172         LASSERTF((int)offsetof(struct obd_connect_data, padding4) == 96, "found %lld\n",
1173                  (long long)(int)offsetof(struct obd_connect_data, padding4));
1174         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding4) == 8, "found %lld\n",
1175                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding4));
1176         LASSERTF((int)offsetof(struct obd_connect_data, padding5) == 104, "found %lld\n",
1177                  (long long)(int)offsetof(struct obd_connect_data, padding5));
1178         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding5) == 8, "found %lld\n",
1179                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding5));
1180         LASSERTF((int)offsetof(struct obd_connect_data, padding6) == 112, "found %lld\n",
1181                  (long long)(int)offsetof(struct obd_connect_data, padding6));
1182         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding6) == 8, "found %lld\n",
1183                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding6));
1184         LASSERTF((int)offsetof(struct obd_connect_data, padding7) == 120, "found %lld\n",
1185                  (long long)(int)offsetof(struct obd_connect_data, padding7));
1186         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding7) == 8, "found %lld\n",
1187                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding7));
1188         LASSERTF((int)offsetof(struct obd_connect_data, padding8) == 128, "found %lld\n",
1189                  (long long)(int)offsetof(struct obd_connect_data, padding8));
1190         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding8) == 8, "found %lld\n",
1191                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding8));
1192         LASSERTF((int)offsetof(struct obd_connect_data, padding9) == 136, "found %lld\n",
1193                  (long long)(int)offsetof(struct obd_connect_data, padding9));
1194         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->padding9) == 8, "found %lld\n",
1195                  (long long)(int)sizeof(((struct obd_connect_data *)0)->padding9));
1196         LASSERTF((int)offsetof(struct obd_connect_data, paddingA) == 144, "found %lld\n",
1197                  (long long)(int)offsetof(struct obd_connect_data, paddingA));
1198         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingA) == 8, "found %lld\n",
1199                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingA));
1200         LASSERTF((int)offsetof(struct obd_connect_data, paddingB) == 152, "found %lld\n",
1201                  (long long)(int)offsetof(struct obd_connect_data, paddingB));
1202         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingB) == 8, "found %lld\n",
1203                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingB));
1204         LASSERTF((int)offsetof(struct obd_connect_data, paddingC) == 160, "found %lld\n",
1205                  (long long)(int)offsetof(struct obd_connect_data, paddingC));
1206         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingC) == 8, "found %lld\n",
1207                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingC));
1208         LASSERTF((int)offsetof(struct obd_connect_data, paddingD) == 168, "found %lld\n",
1209                  (long long)(int)offsetof(struct obd_connect_data, paddingD));
1210         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingD) == 8, "found %lld\n",
1211                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingD));
1212         LASSERTF((int)offsetof(struct obd_connect_data, paddingE) == 176, "found %lld\n",
1213                  (long long)(int)offsetof(struct obd_connect_data, paddingE));
1214         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingE) == 8, "found %lld\n",
1215                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingE));
1216         LASSERTF((int)offsetof(struct obd_connect_data, paddingF) == 184, "found %lld\n",
1217                  (long long)(int)offsetof(struct obd_connect_data, paddingF));
1218         LASSERTF((int)sizeof(((struct obd_connect_data *)0)->paddingF) == 8, "found %lld\n",
1219                  (long long)(int)sizeof(((struct obd_connect_data *)0)->paddingF));
1220         LASSERTF(OBD_CONNECT_RDONLY == 0x1ULL, "found 0x%.16llxULL\n",
1221                  OBD_CONNECT_RDONLY);
1222         LASSERTF(OBD_CONNECT_INDEX == 0x2ULL, "found 0x%.16llxULL\n",
1223                  OBD_CONNECT_INDEX);
1224         LASSERTF(OBD_CONNECT_MDS == 0x4ULL, "found 0x%.16llxULL\n",
1225                  OBD_CONNECT_MDS);
1226         LASSERTF(OBD_CONNECT_GRANT == 0x8ULL, "found 0x%.16llxULL\n",
1227                  OBD_CONNECT_GRANT);
1228         LASSERTF(OBD_CONNECT_SRVLOCK == 0x10ULL, "found 0x%.16llxULL\n",
1229                  OBD_CONNECT_SRVLOCK);
1230         LASSERTF(OBD_CONNECT_VERSION == 0x20ULL, "found 0x%.16llxULL\n",
1231                  OBD_CONNECT_VERSION);
1232         LASSERTF(OBD_CONNECT_REQPORTAL == 0x40ULL, "found 0x%.16llxULL\n",
1233                  OBD_CONNECT_REQPORTAL);
1234         LASSERTF(OBD_CONNECT_ACL == 0x80ULL, "found 0x%.16llxULL\n",
1235                  OBD_CONNECT_ACL);
1236         LASSERTF(OBD_CONNECT_XATTR == 0x100ULL, "found 0x%.16llxULL\n",
1237                  OBD_CONNECT_XATTR);
1238         LASSERTF(OBD_CONNECT_LARGE_ACL == 0x200ULL, "found 0x%.16llxULL\n",
1239                  OBD_CONNECT_LARGE_ACL);
1240         LASSERTF(OBD_CONNECT_TRUNCLOCK == 0x400ULL, "found 0x%.16llxULL\n",
1241                  OBD_CONNECT_TRUNCLOCK);
1242         LASSERTF(OBD_CONNECT_TRANSNO == 0x800ULL, "found 0x%.16llxULL\n",
1243                  OBD_CONNECT_TRANSNO);
1244         LASSERTF(OBD_CONNECT_IBITS == 0x1000ULL, "found 0x%.16llxULL\n",
1245                  OBD_CONNECT_IBITS);
1246         LASSERTF(OBD_CONNECT_BARRIER == 0x2000ULL, "found 0x%.16llxULL\n",
1247                  OBD_CONNECT_BARRIER);
1248         LASSERTF(OBD_CONNECT_ATTRFID == 0x4000ULL, "found 0x%.16llxULL\n",
1249                  OBD_CONNECT_ATTRFID);
1250         LASSERTF(OBD_CONNECT_NODEVOH == 0x8000ULL, "found 0x%.16llxULL\n",
1251                  OBD_CONNECT_NODEVOH);
1252         LASSERTF(OBD_CONNECT_RMT_CLIENT == 0x10000ULL, "found 0x%.16llxULL\n",
1253                  OBD_CONNECT_RMT_CLIENT);
1254         LASSERTF(OBD_CONNECT_RMT_CLIENT_FORCE == 0x20000ULL, "found 0x%.16llxULL\n",
1255                  OBD_CONNECT_RMT_CLIENT_FORCE);
1256         LASSERTF(OBD_CONNECT_BRW_SIZE == 0x40000ULL, "found 0x%.16llxULL\n",
1257                  OBD_CONNECT_BRW_SIZE);
1258         LASSERTF(OBD_CONNECT_QUOTA64 == 0x80000ULL, "found 0x%.16llxULL\n",
1259                  OBD_CONNECT_QUOTA64);
1260         LASSERTF(OBD_CONNECT_MDS_CAPA == 0x100000ULL, "found 0x%.16llxULL\n",
1261                  OBD_CONNECT_MDS_CAPA);
1262         LASSERTF(OBD_CONNECT_OSS_CAPA == 0x200000ULL, "found 0x%.16llxULL\n",
1263                  OBD_CONNECT_OSS_CAPA);
1264         LASSERTF(OBD_CONNECT_CANCELSET == 0x400000ULL, "found 0x%.16llxULL\n",
1265                  OBD_CONNECT_CANCELSET);
1266         LASSERTF(OBD_CONNECT_SOM == 0x800000ULL, "found 0x%.16llxULL\n",
1267                  OBD_CONNECT_SOM);
1268         LASSERTF(OBD_CONNECT_AT == 0x1000000ULL, "found 0x%.16llxULL\n",
1269                  OBD_CONNECT_AT);
1270         LASSERTF(OBD_CONNECT_LRU_RESIZE == 0x2000000ULL, "found 0x%.16llxULL\n",
1271                  OBD_CONNECT_LRU_RESIZE);
1272         LASSERTF(OBD_CONNECT_MDS_MDS == 0x4000000ULL, "found 0x%.16llxULL\n",
1273                  OBD_CONNECT_MDS_MDS);
1274         LASSERTF(OBD_CONNECT_REAL == 0x8000000ULL, "found 0x%.16llxULL\n",
1275                  OBD_CONNECT_REAL);
1276         LASSERTF(OBD_CONNECT_CHANGE_QS == 0x10000000ULL, "found 0x%.16llxULL\n",
1277                  OBD_CONNECT_CHANGE_QS);
1278         LASSERTF(OBD_CONNECT_CKSUM == 0x20000000ULL, "found 0x%.16llxULL\n",
1279                  OBD_CONNECT_CKSUM);
1280         LASSERTF(OBD_CONNECT_FID == 0x40000000ULL, "found 0x%.16llxULL\n",
1281                  OBD_CONNECT_FID);
1282         LASSERTF(OBD_CONNECT_VBR == 0x80000000ULL, "found 0x%.16llxULL\n",
1283                  OBD_CONNECT_VBR);
1284         LASSERTF(OBD_CONNECT_LOV_V3 == 0x100000000ULL, "found 0x%.16llxULL\n",
1285                  OBD_CONNECT_LOV_V3);
1286         LASSERTF(OBD_CONNECT_GRANT_SHRINK == 0x200000000ULL, "found 0x%.16llxULL\n",
1287                  OBD_CONNECT_GRANT_SHRINK);
1288         LASSERTF(OBD_CONNECT_SKIP_ORPHAN == 0x400000000ULL, "found 0x%.16llxULL\n",
1289                  OBD_CONNECT_SKIP_ORPHAN);
1290         LASSERTF(OBD_CONNECT_MAX_EASIZE == 0x800000000ULL, "found 0x%.16llxULL\n",
1291                  OBD_CONNECT_MAX_EASIZE);
1292         LASSERTF(OBD_CONNECT_FULL20 == 0x1000000000ULL, "found 0x%.16llxULL\n",
1293                  OBD_CONNECT_FULL20);
1294         LASSERTF(OBD_CONNECT_LAYOUTLOCK == 0x2000000000ULL, "found 0x%.16llxULL\n",
1295                  OBD_CONNECT_LAYOUTLOCK);
1296         LASSERTF(OBD_CONNECT_64BITHASH == 0x4000000000ULL, "found 0x%.16llxULL\n",
1297                  OBD_CONNECT_64BITHASH);
1298         LASSERTF(OBD_CONNECT_MAXBYTES == 0x8000000000ULL, "found 0x%.16llxULL\n",
1299                  OBD_CONNECT_MAXBYTES);
1300         LASSERTF(OBD_CONNECT_IMP_RECOV == 0x10000000000ULL, "found 0x%.16llxULL\n",
1301                  OBD_CONNECT_IMP_RECOV);
1302         LASSERTF(OBD_CONNECT_JOBSTATS == 0x20000000000ULL, "found 0x%.16llxULL\n",
1303                  OBD_CONNECT_JOBSTATS);
1304         LASSERTF(OBD_CONNECT_UMASK == 0x40000000000ULL, "found 0x%.16llxULL\n",
1305                  OBD_CONNECT_UMASK);
1306         LASSERTF(OBD_CONNECT_EINPROGRESS == 0x80000000000ULL, "found 0x%.16llxULL\n",
1307                  OBD_CONNECT_EINPROGRESS);
1308         LASSERTF(OBD_CONNECT_GRANT_PARAM == 0x100000000000ULL, "found 0x%.16llxULL\n",
1309                  OBD_CONNECT_GRANT_PARAM);
1310         LASSERTF(OBD_CONNECT_FLOCK_OWNER == 0x200000000000ULL, "found 0x%.16llxULL\n",
1311                  OBD_CONNECT_FLOCK_OWNER);
1312         LASSERTF(OBD_CONNECT_LVB_TYPE == 0x400000000000ULL, "found 0x%.16llxULL\n",
1313                  OBD_CONNECT_LVB_TYPE);
1314         LASSERTF(OBD_CONNECT_NANOSEC_TIME == 0x800000000000ULL, "found 0x%.16llxULL\n",
1315                  OBD_CONNECT_NANOSEC_TIME);
1316         LASSERTF(OBD_CONNECT_LIGHTWEIGHT == 0x1000000000000ULL, "found 0x%.16llxULL\n",
1317                  OBD_CONNECT_LIGHTWEIGHT);
1318         LASSERTF(OBD_CONNECT_SHORTIO == 0x2000000000000ULL, "found 0x%.16llxULL\n",
1319                  OBD_CONNECT_SHORTIO);
1320         LASSERTF(OBD_CONNECT_PINGLESS == 0x4000000000000ULL, "found 0x%.16llxULL\n",
1321                  OBD_CONNECT_PINGLESS);
1322         LASSERTF(OBD_CONNECT_FLOCK_DEAD == 0x8000000000000ULL, "found 0x%.16llxULL\n",
1323                  OBD_CONNECT_FLOCK_DEAD);
1324         LASSERTF(OBD_CONNECT_DISP_STRIPE == 0x10000000000000ULL, "found 0x%.16llxULL\n",
1325                  OBD_CONNECT_DISP_STRIPE);
1326         LASSERTF(OBD_CONNECT_OPEN_BY_FID == 0x20000000000000ULL, "found 0x%.16llxULL\n",
1327                  OBD_CONNECT_OPEN_BY_FID);
1328         LASSERTF(OBD_CONNECT_LFSCK == 0x40000000000000ULL, "found 0x%.16llxULL\n",
1329                  OBD_CONNECT_LFSCK);
1330         LASSERTF(OBD_CONNECT_UNLINK_CLOSE == 0x100000000000000ULL, "found 0x%.16llxULL\n",
1331                  OBD_CONNECT_UNLINK_CLOSE);
1332         LASSERTF(OBD_CONNECT_MULTIMODRPCS == 0x200000000000000ULL, "found 0x%.16llxULL\n",
1333                  OBD_CONNECT_MULTIMODRPCS);
1334         LASSERTF(OBD_CONNECT_DIR_STRIPE == 0x400000000000000ULL, "found 0x%.16llxULL\n",
1335                  OBD_CONNECT_DIR_STRIPE);
1336         LASSERTF(OBD_CONNECT_SUBTREE == 0x800000000000000ULL, "found 0x%.16llxULL\n",
1337                  OBD_CONNECT_SUBTREE);
1338         LASSERTF(OBD_CONNECT_BULK_MBITS == 0x2000000000000000ULL, "found 0x%.16llxULL\n",
1339                  OBD_CONNECT_BULK_MBITS);
1340         LASSERTF(OBD_CONNECT_OBDOPACK == 0x4000000000000000ULL, "found 0x%.16llxULL\n",
1341                  OBD_CONNECT_OBDOPACK);
1342         LASSERTF(OBD_CONNECT_FLAGS2 == 0x8000000000000000ULL, "found 0x%.16llxULL\n",
1343                  OBD_CONNECT_FLAGS2);
1344         LASSERTF(OBD_CONNECT2_FILE_SECCTX == 0x1ULL, "found 0x%.16llxULL\n",
1345                  OBD_CONNECT2_FILE_SECCTX);
1346         LASSERTF(OBD_CONNECT2_LOCKAHEAD == 0x2ULL, "found 0x%.16llxULL\n",
1347                  OBD_CONNECT2_LOCKAHEAD);
1348         LASSERTF(OBD_CONNECT2_DIR_MIGRATE == 0x4ULL, "found 0x%.16llxULL\n",
1349                  OBD_CONNECT2_DIR_MIGRATE);
1350         LASSERTF(OBD_CONNECT2_SUM_STATFS == 0x8ULL, "found 0x%.16llxULL\n",
1351                  OBD_CONNECT2_SUM_STATFS);
1352         LASSERTF(OBD_CONNECT2_OVERSTRIPING == 0x10ULL, "found 0x%.16llxULL\n",
1353                  OBD_CONNECT2_OVERSTRIPING);
1354         LASSERTF(OBD_CONNECT2_FLR == 0x20ULL, "found 0x%.16llxULL\n",
1355                  OBD_CONNECT2_FLR);
1356         LASSERTF(OBD_CONNECT2_WBC_INTENTS == 0x40ULL, "found 0x%.16llxULL\n",
1357                  OBD_CONNECT2_WBC_INTENTS);
1358         LASSERTF(OBD_CONNECT2_LOCK_CONVERT == 0x80ULL, "found 0x%.16llxULL\n",
1359                  OBD_CONNECT2_LOCK_CONVERT);
1360         LASSERTF(OBD_CONNECT2_ARCHIVE_ID_ARRAY == 0x100ULL, "found 0x%.16llxULL\n",
1361                  OBD_CONNECT2_ARCHIVE_ID_ARRAY);
1362         LASSERTF(OBD_CONNECT2_INC_XID == 0x200ULL, "found 0x%.16llxULL\n",
1363                  OBD_CONNECT2_INC_XID);
1364         LASSERTF(OBD_CONNECT2_SELINUX_POLICY == 0x400ULL, "found 0x%.16llxULL\n",
1365                  OBD_CONNECT2_SELINUX_POLICY);
1366         LASSERTF(OBD_CONNECT2_LSOM == 0x800ULL, "found 0x%.16llxULL\n",
1367                  OBD_CONNECT2_LSOM);
1368         LASSERTF(OBD_CONNECT2_PCC == 0x1000ULL, "found 0x%.16llxULL\n",
1369                  OBD_CONNECT2_PCC);
1370         LASSERTF(OBD_CONNECT2_CRUSH == 0x2000ULL, "found 0x%.16llxULL\n",
1371                  OBD_CONNECT2_CRUSH);
1372         LASSERTF(OBD_CONNECT2_ASYNC_DISCARD == 0x4000ULL, "found 0x%.16llxULL\n",
1373                  OBD_CONNECT2_ASYNC_DISCARD);
1374         LASSERTF(OBD_CONNECT2_ENCRYPT == 0x8000ULL, "found 0x%.16llxULL\n",
1375                  OBD_CONNECT2_ENCRYPT);
1376         LASSERTF(OBD_CONNECT2_FIDMAP== 0x10000ULL, "found 0x%.16llxULL\n",
1377                  OBD_CONNECT2_FIDMAP);
1378         LASSERTF(OBD_CKSUM_CRC32 == 0x00000001UL, "found 0x%.8xUL\n",
1379                 (unsigned)OBD_CKSUM_CRC32);
1380         LASSERTF(OBD_CKSUM_ADLER == 0x00000002UL, "found 0x%.8xUL\n",
1381                 (unsigned)OBD_CKSUM_ADLER);
1382         LASSERTF(OBD_CKSUM_CRC32C == 0x00000004UL, "found 0x%.8xUL\n",
1383                 (unsigned)OBD_CKSUM_CRC32C);
1384         LASSERTF(OBD_CKSUM_RESERVED == 0x00000008UL, "found 0x%.8xUL\n",
1385                 (unsigned)OBD_CKSUM_RESERVED);
1386         LASSERTF(OBD_CKSUM_T10IP512 == 0x00000010UL, "found 0x%.8xUL\n",
1387                 (unsigned)OBD_CKSUM_T10IP512);
1388         LASSERTF(OBD_CKSUM_T10IP4K == 0x00000020UL, "found 0x%.8xUL\n",
1389                 (unsigned)OBD_CKSUM_T10IP4K);
1390         LASSERTF(OBD_CKSUM_T10CRC512 == 0x00000040UL, "found 0x%.8xUL\n",
1391                 (unsigned)OBD_CKSUM_T10CRC512);
1392         LASSERTF(OBD_CKSUM_T10CRC4K == 0x00000080UL, "found 0x%.8xUL\n",
1393                 (unsigned)OBD_CKSUM_T10CRC4K);
1394         LASSERTF(OBD_CKSUM_T10_TOP == 0x00000002UL, "found 0x%.8xUL\n",
1395                 (unsigned)OBD_CKSUM_T10_TOP);
1396
1397         /* Checks for struct ost_layout */
1398         LASSERTF((int)sizeof(struct ost_layout) == 28, "found %lld\n",
1399                  (long long)(int)sizeof(struct ost_layout));
1400         LASSERTF((int)offsetof(struct ost_layout, ol_stripe_size) == 0, "found %lld\n",
1401                  (long long)(int)offsetof(struct ost_layout, ol_stripe_size));
1402         LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_stripe_size) == 4, "found %lld\n",
1403                  (long long)(int)sizeof(((struct ost_layout *)0)->ol_stripe_size));
1404         LASSERTF((int)offsetof(struct ost_layout, ol_stripe_count) == 4, "found %lld\n",
1405                  (long long)(int)offsetof(struct ost_layout, ol_stripe_count));
1406         LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_stripe_count) == 4, "found %lld\n",
1407                  (long long)(int)sizeof(((struct ost_layout *)0)->ol_stripe_count));
1408         LASSERTF((int)offsetof(struct ost_layout, ol_comp_start) == 8, "found %lld\n",
1409                  (long long)(int)offsetof(struct ost_layout, ol_comp_start));
1410         LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_start) == 8, "found %lld\n",
1411                  (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_start));
1412         LASSERTF((int)offsetof(struct ost_layout, ol_comp_end) == 16, "found %lld\n",
1413                  (long long)(int)offsetof(struct ost_layout, ol_comp_end));
1414         LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_end) == 8, "found %lld\n",
1415                  (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_end));
1416         LASSERTF((int)offsetof(struct ost_layout, ol_comp_id) == 24, "found %lld\n",
1417                  (long long)(int)offsetof(struct ost_layout, ol_comp_id));
1418         LASSERTF((int)sizeof(((struct ost_layout *)0)->ol_comp_id) == 4, "found %lld\n",
1419                  (long long)(int)sizeof(((struct ost_layout *)0)->ol_comp_id));
1420
1421         /* Checks for struct obdo */
1422         LASSERTF((int)sizeof(struct obdo) == 208, "found %lld\n",
1423                  (long long)(int)sizeof(struct obdo));
1424         LASSERTF((int)offsetof(struct obdo, o_valid) == 0, "found %lld\n",
1425                  (long long)(int)offsetof(struct obdo, o_valid));
1426         LASSERTF((int)sizeof(((struct obdo *)0)->o_valid) == 8, "found %lld\n",
1427                  (long long)(int)sizeof(((struct obdo *)0)->o_valid));
1428         LASSERTF((int)offsetof(struct obdo, o_oi) == 8, "found %lld\n",
1429                  (long long)(int)offsetof(struct obdo, o_oi));
1430         LASSERTF((int)sizeof(((struct obdo *)0)->o_oi) == 16, "found %lld\n",
1431                  (long long)(int)sizeof(((struct obdo *)0)->o_oi));
1432         LASSERTF((int)offsetof(struct obdo, o_parent_seq) == 24, "found %lld\n",
1433                  (long long)(int)offsetof(struct obdo, o_parent_seq));
1434         LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_seq) == 8, "found %lld\n",
1435                  (long long)(int)sizeof(((struct obdo *)0)->o_parent_seq));
1436         LASSERTF((int)offsetof(struct obdo, o_size) == 32, "found %lld\n",
1437                  (long long)(int)offsetof(struct obdo, o_size));
1438         LASSERTF((int)sizeof(((struct obdo *)0)->o_size) == 8, "found %lld\n",
1439                  (long long)(int)sizeof(((struct obdo *)0)->o_size));
1440         LASSERTF((int)offsetof(struct obdo, o_mtime) == 40, "found %lld\n",
1441                  (long long)(int)offsetof(struct obdo, o_mtime));
1442         LASSERTF((int)sizeof(((struct obdo *)0)->o_mtime) == 8, "found %lld\n",
1443                  (long long)(int)sizeof(((struct obdo *)0)->o_mtime));
1444         LASSERTF((int)offsetof(struct obdo, o_atime) == 48, "found %lld\n",
1445                  (long long)(int)offsetof(struct obdo, o_atime));
1446         LASSERTF((int)sizeof(((struct obdo *)0)->o_atime) == 8, "found %lld\n",
1447                  (long long)(int)sizeof(((struct obdo *)0)->o_atime));
1448         LASSERTF((int)offsetof(struct obdo, o_ctime) == 56, "found %lld\n",
1449                  (long long)(int)offsetof(struct obdo, o_ctime));
1450         LASSERTF((int)sizeof(((struct obdo *)0)->o_ctime) == 8, "found %lld\n",
1451                  (long long)(int)sizeof(((struct obdo *)0)->o_ctime));
1452         LASSERTF((int)offsetof(struct obdo, o_blocks) == 64, "found %lld\n",
1453                  (long long)(int)offsetof(struct obdo, o_blocks));
1454         LASSERTF((int)sizeof(((struct obdo *)0)->o_blocks) == 8, "found %lld\n",
1455                  (long long)(int)sizeof(((struct obdo *)0)->o_blocks));
1456         LASSERTF((int)offsetof(struct obdo, o_grant) == 72, "found %lld\n",
1457                  (long long)(int)offsetof(struct obdo, o_grant));
1458         LASSERTF((int)sizeof(((struct obdo *)0)->o_grant) == 8, "found %lld\n",
1459                  (long long)(int)sizeof(((struct obdo *)0)->o_grant));
1460         LASSERTF((int)offsetof(struct obdo, o_blksize) == 80, "found %lld\n",
1461                  (long long)(int)offsetof(struct obdo, o_blksize));
1462         LASSERTF((int)sizeof(((struct obdo *)0)->o_blksize) == 4, "found %lld\n",
1463                  (long long)(int)sizeof(((struct obdo *)0)->o_blksize));
1464         LASSERTF((int)offsetof(struct obdo, o_mode) == 84, "found %lld\n",
1465                  (long long)(int)offsetof(struct obdo, o_mode));
1466         LASSERTF((int)sizeof(((struct obdo *)0)->o_mode) == 4, "found %lld\n",
1467                  (long long)(int)sizeof(((struct obdo *)0)->o_mode));
1468         LASSERTF((int)offsetof(struct obdo, o_uid) == 88, "found %lld\n",
1469                  (long long)(int)offsetof(struct obdo, o_uid));
1470         LASSERTF((int)sizeof(((struct obdo *)0)->o_uid) == 4, "found %lld\n",
1471                  (long long)(int)sizeof(((struct obdo *)0)->o_uid));
1472         LASSERTF((int)offsetof(struct obdo, o_gid) == 92, "found %lld\n",
1473                  (long long)(int)offsetof(struct obdo, o_gid));
1474         LASSERTF((int)sizeof(((struct obdo *)0)->o_gid) == 4, "found %lld\n",
1475                  (long long)(int)sizeof(((struct obdo *)0)->o_gid));
1476         LASSERTF((int)offsetof(struct obdo, o_flags) == 96, "found %lld\n",
1477                  (long long)(int)offsetof(struct obdo, o_flags));
1478         LASSERTF((int)sizeof(((struct obdo *)0)->o_flags) == 4, "found %lld\n",
1479                  (long long)(int)sizeof(((struct obdo *)0)->o_flags));
1480         LASSERTF((int)offsetof(struct obdo, o_nlink) == 100, "found %lld\n",
1481                  (long long)(int)offsetof(struct obdo, o_nlink));
1482         LASSERTF((int)sizeof(((struct obdo *)0)->o_nlink) == 4, "found %lld\n",
1483                  (long long)(int)sizeof(((struct obdo *)0)->o_nlink));
1484         LASSERTF((int)offsetof(struct obdo, o_parent_oid) == 104, "found %lld\n",
1485                  (long long)(int)offsetof(struct obdo, o_parent_oid));
1486         LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_oid) == 4, "found %lld\n",
1487                  (long long)(int)sizeof(((struct obdo *)0)->o_parent_oid));
1488         LASSERTF((int)offsetof(struct obdo, o_misc) == 108, "found %lld\n",
1489                  (long long)(int)offsetof(struct obdo, o_misc));
1490         LASSERTF((int)sizeof(((struct obdo *)0)->o_misc) == 4, "found %lld\n",
1491                  (long long)(int)sizeof(((struct obdo *)0)->o_misc));
1492         LASSERTF((int)offsetof(struct obdo, o_ioepoch) == 112, "found %lld\n",
1493                  (long long)(int)offsetof(struct obdo, o_ioepoch));
1494         LASSERTF((int)sizeof(((struct obdo *)0)->o_ioepoch) == 8, "found %lld\n",
1495                  (long long)(int)sizeof(((struct obdo *)0)->o_ioepoch));
1496         LASSERTF((int)offsetof(struct obdo, o_stripe_idx) == 120, "found %lld\n",
1497                  (long long)(int)offsetof(struct obdo, o_stripe_idx));
1498         LASSERTF((int)sizeof(((struct obdo *)0)->o_stripe_idx) == 4, "found %lld\n",
1499                  (long long)(int)sizeof(((struct obdo *)0)->o_stripe_idx));
1500         LASSERTF((int)offsetof(struct obdo, o_parent_ver) == 124, "found %lld\n",
1501                  (long long)(int)offsetof(struct obdo, o_parent_ver));
1502         LASSERTF((int)sizeof(((struct obdo *)0)->o_parent_ver) == 4, "found %lld\n",
1503                  (long long)(int)sizeof(((struct obdo *)0)->o_parent_ver));
1504         LASSERTF((int)offsetof(struct obdo, o_handle) == 128, "found %lld\n",
1505                  (long long)(int)offsetof(struct obdo, o_handle));
1506         LASSERTF((int)sizeof(((struct obdo *)0)->o_handle) == 8, "found %lld\n",
1507                  (long long)(int)sizeof(((struct obdo *)0)->o_handle));
1508         LASSERTF((int)offsetof(struct obdo, o_layout) == 136, "found %lld\n",
1509                  (long long)(int)offsetof(struct obdo, o_layout));
1510         LASSERTF((int)sizeof(((struct obdo *)0)->o_layout) == 28, "found %lld\n",
1511                  (long long)(int)sizeof(((struct obdo *)0)->o_layout));
1512         LASSERTF((int)offsetof(struct obdo, o_layout_version) == 164, "found %lld\n",
1513                  (long long)(int)offsetof(struct obdo, o_layout_version));
1514         LASSERTF((int)sizeof(((struct obdo *)0)->o_layout_version) == 4, "found %lld\n",
1515                  (long long)(int)sizeof(((struct obdo *)0)->o_layout_version));
1516         LASSERTF((int)offsetof(struct obdo, o_uid_h) == 168, "found %lld\n",
1517                  (long long)(int)offsetof(struct obdo, o_uid_h));
1518         LASSERTF((int)sizeof(((struct obdo *)0)->o_uid_h) == 4, "found %lld\n",
1519                  (long long)(int)sizeof(((struct obdo *)0)->o_uid_h));
1520         LASSERTF((int)offsetof(struct obdo, o_gid_h) == 172, "found %lld\n",
1521                  (long long)(int)offsetof(struct obdo, o_gid_h));
1522         LASSERTF((int)sizeof(((struct obdo *)0)->o_gid_h) == 4, "found %lld\n",
1523                  (long long)(int)sizeof(((struct obdo *)0)->o_gid_h));
1524         LASSERTF((int)offsetof(struct obdo, o_data_version) == 176, "found %lld\n",
1525                  (long long)(int)offsetof(struct obdo, o_data_version));
1526         LASSERTF((int)sizeof(((struct obdo *)0)->o_data_version) == 8, "found %lld\n",
1527                  (long long)(int)sizeof(((struct obdo *)0)->o_data_version));
1528         LASSERTF((int)offsetof(struct obdo, o_projid) == 184, "found %lld\n",
1529                  (long long)(int)offsetof(struct obdo, o_projid));
1530         LASSERTF((int)sizeof(((struct obdo *)0)->o_projid) == 4, "found %lld\n",
1531                  (long long)(int)sizeof(((struct obdo *)0)->o_projid));
1532         LASSERTF((int)offsetof(struct obdo, o_padding_4) == 188, "found %lld\n",
1533                  (long long)(int)offsetof(struct obdo, o_padding_4));
1534         LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_4) == 4, "found %lld\n",
1535                  (long long)(int)sizeof(((struct obdo *)0)->o_padding_4));
1536         LASSERTF((int)offsetof(struct obdo, o_padding_5) == 192, "found %lld\n",
1537                  (long long)(int)offsetof(struct obdo, o_padding_5));
1538         LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_5) == 8, "found %lld\n",
1539                  (long long)(int)sizeof(((struct obdo *)0)->o_padding_5));
1540         LASSERTF((int)offsetof(struct obdo, o_padding_6) == 200, "found %lld\n",
1541                  (long long)(int)offsetof(struct obdo, o_padding_6));
1542         LASSERTF((int)sizeof(((struct obdo *)0)->o_padding_6) == 8, "found %lld\n",
1543                  (long long)(int)sizeof(((struct obdo *)0)->o_padding_6));
1544         LASSERTF(OBD_MD_FLID == (0x00000001ULL), "found 0x%.16llxULL\n",
1545                  OBD_MD_FLID);
1546         LASSERTF(OBD_MD_FLATIME == (0x00000002ULL), "found 0x%.16llxULL\n",
1547                  OBD_MD_FLATIME);
1548         LASSERTF(OBD_MD_FLMTIME == (0x00000004ULL), "found 0x%.16llxULL\n",
1549                  OBD_MD_FLMTIME);
1550         LASSERTF(OBD_MD_FLCTIME == (0x00000008ULL), "found 0x%.16llxULL\n",
1551                  OBD_MD_FLCTIME);
1552         LASSERTF(OBD_MD_FLSIZE == (0x00000010ULL), "found 0x%.16llxULL\n",
1553                  OBD_MD_FLSIZE);
1554         LASSERTF(OBD_MD_FLBLOCKS == (0x00000020ULL), "found 0x%.16llxULL\n",
1555                  OBD_MD_FLBLOCKS);
1556         LASSERTF(OBD_MD_FLBLKSZ == (0x00000040ULL), "found 0x%.16llxULL\n",
1557                  OBD_MD_FLBLKSZ);
1558         LASSERTF(OBD_MD_FLMODE == (0x00000080ULL), "found 0x%.16llxULL\n",
1559                  OBD_MD_FLMODE);
1560         LASSERTF(OBD_MD_FLTYPE == (0x00000100ULL), "found 0x%.16llxULL\n",
1561                  OBD_MD_FLTYPE);
1562         LASSERTF(OBD_MD_FLUID == (0x00000200ULL), "found 0x%.16llxULL\n",
1563                  OBD_MD_FLUID);
1564         LASSERTF(OBD_MD_FLGID == (0x00000400ULL), "found 0x%.16llxULL\n",
1565                  OBD_MD_FLGID);
1566         LASSERTF(OBD_MD_FLFLAGS == (0x00000800ULL), "found 0x%.16llxULL\n",
1567                  OBD_MD_FLFLAGS);
1568         LASSERTF(OBD_MD_DOM_SIZE == (0X00001000ULL), "found 0x%.16llxULL\n",
1569                  OBD_MD_DOM_SIZE);
1570         LASSERTF(OBD_MD_FLNLINK == (0x00002000ULL), "found 0x%.16llxULL\n",
1571                  OBD_MD_FLNLINK);
1572         LASSERTF(OBD_MD_FLPARENT == (0x00004000ULL), "found 0x%.16llxULL\n",
1573                  OBD_MD_FLPARENT);
1574         LASSERTF(OBD_MD_FLRDEV == (0x00010000ULL), "found 0x%.16llxULL\n",
1575                  OBD_MD_FLRDEV);
1576         LASSERTF(OBD_MD_FLEASIZE == (0x00020000ULL), "found 0x%.16llxULL\n",
1577                  OBD_MD_FLEASIZE);
1578         LASSERTF(OBD_MD_LINKNAME == (0x00040000ULL), "found 0x%.16llxULL\n",
1579                  OBD_MD_LINKNAME);
1580         LASSERTF(OBD_MD_FLHANDLE == (0x00080000ULL), "found 0x%.16llxULL\n",
1581                  OBD_MD_FLHANDLE);
1582         LASSERTF(OBD_MD_FLCKSUM == (0x00100000ULL), "found 0x%.16llxULL\n",
1583                  OBD_MD_FLCKSUM);
1584         LASSERTF(OBD_MD_FLPRJQUOTA == (0x00400000ULL), "found 0x%.16llxULL\n",
1585                  OBD_MD_FLPRJQUOTA);
1586         LASSERTF(OBD_MD_FLGROUP == (0x01000000ULL), "found 0x%.16llxULL\n",
1587                  OBD_MD_FLGROUP);
1588         LASSERTF(OBD_MD_FLFID == (0x02000000ULL), "found 0x%.16llxULL\n",
1589                  OBD_MD_FLFID);
1590         LASSERTF(OBD_MD_FLGRANT == (0x08000000ULL), "found 0x%.16llxULL\n",
1591                  OBD_MD_FLGRANT);
1592         LASSERTF(OBD_MD_FLDIREA == (0x10000000ULL), "found 0x%.16llxULL\n",
1593                  OBD_MD_FLDIREA);
1594         LASSERTF(OBD_MD_FLUSRQUOTA == (0x20000000ULL), "found 0x%.16llxULL\n",
1595                  OBD_MD_FLUSRQUOTA);
1596         LASSERTF(OBD_MD_FLGRPQUOTA == (0x40000000ULL), "found 0x%.16llxULL\n",
1597                  OBD_MD_FLGRPQUOTA);
1598         LASSERTF(OBD_MD_FLMODEASIZE == (0x80000000ULL), "found 0x%.16llxULL\n",
1599                  OBD_MD_FLMODEASIZE);
1600         LASSERTF(OBD_MD_MDS == (0x0000000100000000ULL), "found 0x%.16llxULL\n",
1601                  OBD_MD_MDS);
1602         LASSERTF(OBD_MD_MEA == (0x0000000400000000ULL), "found 0x%.16llxULL\n",
1603                  OBD_MD_MEA);
1604         LASSERTF(OBD_MD_TSTATE == (0x0000000800000000ULL), "found 0x%.16llxULL\n",
1605                  OBD_MD_TSTATE);
1606         LASSERTF(OBD_MD_FLXATTR == (0x0000001000000000ULL), "found 0x%.16llxULL\n",
1607                  OBD_MD_FLXATTR);
1608         LASSERTF(OBD_MD_FLXATTRLS == (0x0000002000000000ULL), "found 0x%.16llxULL\n",
1609                  OBD_MD_FLXATTRLS);
1610         LASSERTF(OBD_MD_FLXATTRRM == (0x0000004000000000ULL), "found 0x%.16llxULL\n",
1611                  OBD_MD_FLXATTRRM);
1612         LASSERTF(OBD_MD_FLACL == (0x0000008000000000ULL), "found 0x%.16llxULL\n",
1613                  OBD_MD_FLACL);
1614         LASSERTF(OBD_MD_FLAGSTATFS == (0x0000010000000000ULL), "found 0x%.16llxULL\n",
1615                  OBD_MD_FLAGSTATFS);
1616         LASSERTF(OBD_MD_FLCROSSREF == (0x0000100000000000ULL), "found 0x%.16llxULL\n",
1617                  OBD_MD_FLCROSSREF);
1618         LASSERTF(OBD_MD_FLGETATTRLOCK == (0x0000200000000000ULL), "found 0x%.16llxULL\n",
1619                  OBD_MD_FLGETATTRLOCK);
1620         LASSERTF(OBD_MD_FLOBJCOUNT == (0x0000400000000000ULL), "found 0x%.16llxULL\n",
1621                  OBD_MD_FLOBJCOUNT);
1622         LASSERTF(OBD_MD_FLDATAVERSION == (0x0010000000000000ULL), "found 0x%.16llxULL\n",
1623                  OBD_MD_FLDATAVERSION);
1624         LASSERTF(OBD_MD_CLOSE_INTENT_EXECED == (0x0020000000000000ULL), "found 0x%.16llxULL\n",
1625                  OBD_MD_CLOSE_INTENT_EXECED);
1626         LASSERTF(OBD_MD_DEFAULT_MEA == (0x0040000000000000ULL), "found 0x%.16llxULL\n",
1627                  OBD_MD_DEFAULT_MEA);
1628         LASSERTF(OBD_MD_FLOSTLAYOUT == (0x0080000000000000ULL), "found 0x%.16llxULL\n",
1629                  OBD_MD_FLOSTLAYOUT);
1630         LASSERTF(OBD_MD_FLPROJID == (0x0100000000000000ULL), "found 0x%.16llxULL\n",
1631                  OBD_MD_FLPROJID);
1632         LASSERTF(OBD_MD_SECCTX == (0x0200000000000000ULL), "found 0x%.16llxULL\n",
1633                  OBD_MD_SECCTX);
1634         LASSERTF(OBD_MD_FLLAZYSIZE == (0x0400000000000000ULL), "found 0x%.16llxULL\n",
1635                  OBD_MD_FLLAZYSIZE);
1636         LASSERTF(OBD_MD_FLLAZYBLOCKS == (0x0800000000000000ULL), "found 0x%.16llxULL\n",
1637                  OBD_MD_FLLAZYBLOCKS);
1638         BUILD_BUG_ON(OBD_FL_INLINEDATA != 0x00000001);
1639         BUILD_BUG_ON(OBD_FL_OBDMDEXISTS != 0x00000002);
1640         BUILD_BUG_ON(OBD_FL_DELORPHAN != 0x00000004);
1641         BUILD_BUG_ON(OBD_FL_NORPC != 0x00000008);
1642         BUILD_BUG_ON(OBD_FL_IDONLY != 0x00000010);
1643         BUILD_BUG_ON(OBD_FL_RECREATE_OBJS != 0x00000020);
1644         BUILD_BUG_ON(OBD_FL_DEBUG_CHECK != 0x00000040);
1645         BUILD_BUG_ON(OBD_FL_NO_PRJQUOTA != 0x00000080);
1646         BUILD_BUG_ON(OBD_FL_NO_USRQUOTA != 0x00000100);
1647         BUILD_BUG_ON(OBD_FL_NO_GRPQUOTA != 0x00000200);
1648         BUILD_BUG_ON(OBD_FL_CREATE_CROW != 0x00000400);
1649         BUILD_BUG_ON(OBD_FL_SRVLOCK != 0x00000800);
1650         BUILD_BUG_ON(OBD_FL_CKSUM_CRC32 != 0x00001000);
1651         BUILD_BUG_ON(OBD_FL_CKSUM_ADLER != 0x00002000);
1652         BUILD_BUG_ON(OBD_FL_CKSUM_CRC32C != 0x00004000);
1653         BUILD_BUG_ON(OBD_FL_CKSUM_T10IP512 != 0x00005000);
1654         BUILD_BUG_ON(OBD_FL_CKSUM_T10IP4K != 0x00006000);
1655         BUILD_BUG_ON(OBD_FL_CKSUM_T10CRC512 != 0x00007000);
1656         BUILD_BUG_ON(OBD_FL_CKSUM_T10CRC4K != 0x00008000);
1657         BUILD_BUG_ON(OBD_FL_CKSUM_RSVD3 != 0x00010000);
1658         BUILD_BUG_ON(OBD_FL_SHRINK_GRANT != 0x00020000);
1659         BUILD_BUG_ON(OBD_FL_MMAP != 0x00040000);
1660         BUILD_BUG_ON(OBD_FL_RECOV_RESEND != 0x00080000);
1661         BUILD_BUG_ON(OBD_FL_NOSPC_BLK != 0x00100000);
1662         BUILD_BUG_ON(OBD_FL_FLUSH != 0x00200000);
1663         BUILD_BUG_ON(OBD_FL_SHORT_IO != 0x00400000);
1664
1665         /* Checks for struct lov_ost_data_v1 */
1666         LASSERTF((int)sizeof(struct lov_ost_data_v1) == 24, "found %lld\n",
1667                  (long long)(int)sizeof(struct lov_ost_data_v1));
1668         LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_oi) == 0, "found %lld\n",
1669                  (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_oi));
1670         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_oi) == 16, "found %lld\n",
1671                  (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_oi));
1672         LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_gen) == 16, "found %lld\n",
1673                  (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_gen));
1674         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_gen) == 4, "found %lld\n",
1675                  (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_gen));
1676         LASSERTF((int)offsetof(struct lov_ost_data_v1, l_ost_idx) == 20, "found %lld\n",
1677                  (long long)(int)offsetof(struct lov_ost_data_v1, l_ost_idx));
1678         LASSERTF((int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx) == 4, "found %lld\n",
1679                  (long long)(int)sizeof(((struct lov_ost_data_v1 *)0)->l_ost_idx));
1680
1681         /* Checks for struct lov_mds_md_v1 */
1682         LASSERTF((int)sizeof(struct lov_mds_md_v1) == 32, "found %lld\n",
1683                  (long long)(int)sizeof(struct lov_mds_md_v1));
1684         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_magic) == 0, "found %lld\n",
1685                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_magic));
1686         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_magic) == 4, "found %lld\n",
1687                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_magic));
1688         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_pattern) == 4, "found %lld\n",
1689                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_pattern));
1690         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_pattern) == 4, "found %lld\n",
1691                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_pattern));
1692         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_oi) == 8, "found %lld\n",
1693                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_oi));
1694         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_oi) == 16, "found %lld\n",
1695                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_oi));
1696         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_stripe_size) == 24, "found %lld\n",
1697                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_stripe_size));
1698         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_stripe_size) == 4, "found %lld\n",
1699                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_stripe_size));
1700         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_stripe_count) == 28, "found %lld\n",
1701                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_stripe_count));
1702         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_stripe_count) == 2, "found %lld\n",
1703                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_stripe_count));
1704         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_layout_gen) == 30, "found %lld\n",
1705                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_layout_gen));
1706         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_layout_gen) == 2, "found %lld\n",
1707                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_layout_gen));
1708         LASSERTF((int)offsetof(struct lov_mds_md_v1, lmm_objects[0]) == 32, "found %lld\n",
1709                  (long long)(int)offsetof(struct lov_mds_md_v1, lmm_objects[0]));
1710         LASSERTF((int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_objects[0]) == 24, "found %lld\n",
1711                  (long long)(int)sizeof(((struct lov_mds_md_v1 *)0)->lmm_objects[0]));
1712         BUILD_BUG_ON(LOV_MAGIC_V1 != (0x0BD10000 | 0x0BD0));
1713
1714         /* Checks for struct lov_mds_md_v3 */
1715         LASSERTF((int)sizeof(struct lov_mds_md_v3) == 48, "found %lld\n",
1716                  (long long)(int)sizeof(struct lov_mds_md_v3));
1717         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_magic) == 0, "found %lld\n",
1718                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_magic));
1719         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_magic) == 4, "found %lld\n",
1720                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_magic));
1721         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pattern) == 4, "found %lld\n",
1722                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pattern));
1723         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pattern) == 4, "found %lld\n",
1724                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pattern));
1725         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_oi) == 8, "found %lld\n",
1726                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_oi));
1727         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_oi) == 16, "found %lld\n",
1728                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_oi));
1729         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_stripe_size) == 24, "found %lld\n",
1730                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_stripe_size));
1731         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_size) == 4, "found %lld\n",
1732                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_size));
1733         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_stripe_count) == 28, "found %lld\n",
1734                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_stripe_count));
1735         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_count) == 2, "found %lld\n",
1736                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_stripe_count));
1737         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_layout_gen) == 30, "found %lld\n",
1738                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_layout_gen));
1739         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_layout_gen) == 2, "found %lld\n",
1740                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_layout_gen));
1741         BUILD_BUG_ON(LOV_MAXPOOLNAME != 15);
1742         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_pool_name[15 + 1]) == 48, "found %lld\n",
1743                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_pool_name[15 + 1]));
1744         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[15 + 1]) == 1, "found %lld\n",
1745                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_pool_name[15 + 1]));
1746         LASSERTF((int)offsetof(struct lov_mds_md_v3, lmm_objects[0]) == 48, "found %lld\n",
1747                  (long long)(int)offsetof(struct lov_mds_md_v3, lmm_objects[0]));
1748         LASSERTF((int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_objects[0]) == 24, "found %lld\n",
1749                  (long long)(int)sizeof(((struct lov_mds_md_v3 *)0)->lmm_objects[0]));
1750         BUILD_BUG_ON(LOV_MAGIC_V3 != (0x0BD30000 | 0x0BD0));
1751         LASSERTF(LOV_PATTERN_RAID0 == 0x00000001UL, "found 0x%.8xUL\n",
1752                 (unsigned)LOV_PATTERN_RAID0);
1753         LASSERTF(LOV_PATTERN_RAID1 == 0x00000002UL, "found 0x%.8xUL\n",
1754                 (unsigned)LOV_PATTERN_RAID1);
1755         LASSERTF(LOV_PATTERN_MDT == 0x00000100UL, "found 0x%.8xUL\n",
1756                 (unsigned)LOV_PATTERN_MDT);
1757         LASSERTF(LOV_PATTERN_OVERSTRIPING == 0x00000200UL, "found 0x%.8xUL\n",
1758                 (unsigned)LOV_PATTERN_OVERSTRIPING);
1759
1760         /* Checks for struct lov_comp_md_entry_v1 */
1761         LASSERTF((int)sizeof(struct lov_comp_md_entry_v1) == 48, "found %lld\n",
1762                  (long long)(int)sizeof(struct lov_comp_md_entry_v1));
1763         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_id) == 0, "found %lld\n",
1764                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_id));
1765         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_id) == 4, "found %lld\n",
1766                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_id));
1767         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_flags) == 4, "found %lld\n",
1768                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_flags));
1769         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_flags) == 4, "found %lld\n",
1770                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_flags));
1771         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_extent) == 8, "found %lld\n",
1772                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_extent));
1773         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_extent) == 16, "found %lld\n",
1774                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_extent));
1775         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_offset) == 24, "found %lld\n",
1776                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_offset));
1777         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_offset) == 4, "found %lld\n",
1778                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_offset));
1779         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_size) == 28, "found %lld\n",
1780                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_size));
1781         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_size) == 4, "found %lld\n",
1782                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_size));
1783         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_layout_gen) == 32, "found %lld\n",
1784                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_layout_gen));
1785         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_layout_gen) == 4, "found %lld\n",
1786                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_layout_gen));
1787         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_timestamp) == 36, "found %lld\n",
1788                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_timestamp));
1789         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_timestamp) == 8, "found %lld\n",
1790                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_timestamp));
1791         LASSERTF((int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_1) == 44, "found %lld\n",
1792                  (long long)(int)offsetof(struct lov_comp_md_entry_v1, lcme_padding_1));
1793         LASSERTF((int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_1) == 4, "found %lld\n",
1794                  (long long)(int)sizeof(((struct lov_comp_md_entry_v1 *)0)->lcme_padding_1));
1795         BUILD_BUG_ON(LCME_FL_STALE != 0x00000001);
1796         BUILD_BUG_ON(LCME_FL_PREF_RD != 0x00000002);
1797         BUILD_BUG_ON(LCME_FL_PREF_WR != 0x00000004);
1798         BUILD_BUG_ON(LCME_FL_PREF_RW != 0x00000006);
1799         BUILD_BUG_ON(LCME_FL_OFFLINE != 0x00000008);
1800         BUILD_BUG_ON(LCME_FL_INIT != 0x00000010);
1801         BUILD_BUG_ON(LCME_FL_NOSYNC != 0x00000020);
1802         BUILD_BUG_ON(LCME_FL_EXTENSION != 0x00000040);
1803         BUILD_BUG_ON(LCME_FL_NEG != 0x80000000);
1804
1805         /* Checks for struct lov_comp_md_v1 */
1806         LASSERTF((int)sizeof(struct lov_comp_md_v1) == 32, "found %lld\n",
1807                  (long long)(int)sizeof(struct lov_comp_md_v1));
1808         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_magic) == 0, "found %lld\n",
1809                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_magic));
1810         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_magic) == 4, "found %lld\n",
1811                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_magic));
1812         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_size) == 4, "found %lld\n",
1813                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_size));
1814         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_size) == 4, "found %lld\n",
1815                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_size));
1816         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_layout_gen) == 8, "found %lld\n",
1817                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_layout_gen));
1818         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_layout_gen) == 4, "found %lld\n",
1819                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_layout_gen));
1820         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_flags) == 12, "found %lld\n",
1821                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_flags));
1822         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_flags) == 2, "found %lld\n",
1823                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_flags));
1824         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_entry_count) == 14, "found %lld\n",
1825                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_entry_count));
1826         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entry_count) == 2, "found %lld\n",
1827                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entry_count));
1828         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_mirror_count) == 16, "found %lld\n",
1829                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_mirror_count));
1830         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_mirror_count) == 2, "found %lld\n",
1831                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_mirror_count));
1832         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_padding1) == 18, "found %lld\n",
1833                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_padding1));
1834         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding1) == 6, "found %lld\n",
1835                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding1));
1836         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_padding2) == 24, "found %lld\n",
1837                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_padding2));
1838         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding2) == 8, "found %lld\n",
1839                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_padding2));
1840         LASSERTF((int)offsetof(struct lov_comp_md_v1, lcm_entries[0]) == 32, "found %lld\n",
1841                  (long long)(int)offsetof(struct lov_comp_md_v1, lcm_entries[0]));
1842         LASSERTF((int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entries[0]) == 48, "found %lld\n",
1843                  (long long)(int)sizeof(((struct lov_comp_md_v1 *)0)->lcm_entries[0]));
1844         BUILD_BUG_ON(LOV_MAGIC_COMP_V1 != (0x0BD60000 | 0x0BD0));
1845         LASSERTF(LCM_FL_NONE == 0, "found %lld\n",
1846                  (long long)LCM_FL_NONE);
1847         LASSERTF(LCM_FL_RDONLY == 1, "found %lld\n",
1848                  (long long)LCM_FL_RDONLY);
1849         LASSERTF(LCM_FL_WRITE_PENDING == 2, "found %lld\n",
1850                  (long long)LCM_FL_WRITE_PENDING);
1851         LASSERTF(LCM_FL_SYNC_PENDING == 3, "found %lld\n",
1852                  (long long)LCM_FL_SYNC_PENDING);
1853
1854         /* Checks for struct lmv_mds_md_v1 */
1855         LASSERTF((int)sizeof(struct lmv_mds_md_v1) == 56, "found %lld\n",
1856                  (long long)(int)sizeof(struct lmv_mds_md_v1));
1857         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_magic) == 0, "found %lld\n",
1858                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_magic));
1859         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_magic) == 4, "found %lld\n",
1860                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_magic));
1861         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_stripe_count) == 4, "found %lld\n",
1862                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_stripe_count));
1863         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_stripe_count) == 4, "found %lld\n",
1864                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_stripe_count));
1865         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_master_mdt_index) == 8, "found %lld\n",
1866                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_master_mdt_index));
1867         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_master_mdt_index) == 4, "found %lld\n",
1868                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_master_mdt_index));
1869         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_hash_type) == 12, "found %lld\n",
1870                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_hash_type));
1871         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_hash_type) == 4, "found %lld\n",
1872                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_hash_type));
1873         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_layout_version) == 16, "found %lld\n",
1874                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_layout_version));
1875         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_layout_version) == 4, "found %lld\n",
1876                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_layout_version));
1877         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_migrate_offset) == 20, "found %lld\n",
1878                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_migrate_offset));
1879         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_migrate_offset) == 4, "found %lld\n",
1880                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_migrate_offset));
1881         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_migrate_hash) == 24, "found %lld\n",
1882                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_migrate_hash));
1883         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_migrate_hash) == 4, "found %lld\n",
1884                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_migrate_hash));
1885         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_padding2) == 28, "found %lld\n",
1886                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_padding2));
1887         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding2) == 4, "found %lld\n",
1888                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding2));
1889         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_padding3) == 32, "found %lld\n",
1890                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_padding3));
1891         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding3) == 8, "found %lld\n",
1892                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_padding3));
1893         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[15]) == 55, "found %lld\n",
1894                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_pool_name[15]));
1895         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[15]) == 1, "found %lld\n",
1896                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_pool_name[15]));
1897         LASSERTF((int)offsetof(struct lmv_mds_md_v1, lmv_stripe_fids[0]) == 56, "found %lld\n",
1898                  (long long)(int)offsetof(struct lmv_mds_md_v1, lmv_stripe_fids[0]));
1899         LASSERTF((int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_stripe_fids[0]) == 16, "found %lld\n",
1900                  (long long)(int)sizeof(((struct lmv_mds_md_v1 *)0)->lmv_stripe_fids[0]));
1901         BUILD_BUG_ON(LMV_MAGIC_V1 != 0x0CD20CD0);
1902         BUILD_BUG_ON(LMV_MAGIC_STRIPE != 0x0CD40CD0);
1903         BUILD_BUG_ON(LMV_HASH_TYPE_MASK != 0x0000ffff);
1904         BUILD_BUG_ON(LMV_HASH_FLAG_MERGE != 0x04000000);
1905         BUILD_BUG_ON(LMV_HASH_FLAG_SPLIT != 0x08000000);
1906         BUILD_BUG_ON(LMV_HASH_FLAG_LOST_LMV != 0x10000000);
1907         BUILD_BUG_ON(LMV_HASH_FLAG_BAD_TYPE != 0x20000000);
1908         BUILD_BUG_ON(LMV_HASH_FLAG_MIGRATION != 0x80000000);
1909         BUILD_BUG_ON(LMV_CRUSH_PG_COUNT != 4096);
1910
1911         /* Checks for struct obd_statfs */
1912         LASSERTF((int)sizeof(struct obd_statfs) == 144, "found %lld\n",
1913                  (long long)(int)sizeof(struct obd_statfs));
1914         LASSERTF((int)offsetof(struct obd_statfs, os_type) == 0, "found %lld\n",
1915                  (long long)(int)offsetof(struct obd_statfs, os_type));
1916         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_type) == 8, "found %lld\n",
1917                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_type));
1918         LASSERTF((int)offsetof(struct obd_statfs, os_blocks) == 8, "found %lld\n",
1919                  (long long)(int)offsetof(struct obd_statfs, os_blocks));
1920         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_blocks) == 8, "found %lld\n",
1921                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_blocks));
1922         LASSERTF((int)offsetof(struct obd_statfs, os_bfree) == 16, "found %lld\n",
1923                  (long long)(int)offsetof(struct obd_statfs, os_bfree));
1924         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_bfree) == 8, "found %lld\n",
1925                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_bfree));
1926         LASSERTF((int)offsetof(struct obd_statfs, os_bavail) == 24, "found %lld\n",
1927                  (long long)(int)offsetof(struct obd_statfs, os_bavail));
1928         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_bavail) == 8, "found %lld\n",
1929                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_bavail));
1930         LASSERTF((int)offsetof(struct obd_statfs, os_files) == 32, "found %lld\n",
1931                  (long long)(int)offsetof(struct obd_statfs, os_files));
1932         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_files) == 8, "found %lld\n",
1933                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_files));
1934         LASSERTF((int)offsetof(struct obd_statfs, os_ffree) == 40, "found %lld\n",
1935                  (long long)(int)offsetof(struct obd_statfs, os_ffree));
1936         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_ffree) == 8, "found %lld\n",
1937                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_ffree));
1938         LASSERTF((int)offsetof(struct obd_statfs, os_fsid) == 48, "found %lld\n",
1939                  (long long)(int)offsetof(struct obd_statfs, os_fsid));
1940         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_fsid) == 40, "found %lld\n",
1941                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_fsid));
1942         LASSERTF((int)offsetof(struct obd_statfs, os_bsize) == 88, "found %lld\n",
1943                  (long long)(int)offsetof(struct obd_statfs, os_bsize));
1944         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_bsize) == 4, "found %lld\n",
1945                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_bsize));
1946         LASSERTF((int)offsetof(struct obd_statfs, os_namelen) == 92, "found %lld\n",
1947                  (long long)(int)offsetof(struct obd_statfs, os_namelen));
1948         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_namelen) == 4, "found %lld\n",
1949                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_namelen));
1950         LASSERTF((int)offsetof(struct obd_statfs, os_maxbytes) == 96, "found %lld\n",
1951                  (long long)(int)offsetof(struct obd_statfs, os_maxbytes));
1952         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_maxbytes) == 8, "found %lld\n",
1953                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_maxbytes));
1954         LASSERTF((int)offsetof(struct obd_statfs, os_state) == 104, "found %lld\n",
1955                  (long long)(int)offsetof(struct obd_statfs, os_state));
1956         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_state) == 4, "found %lld\n",
1957                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_state));
1958         LASSERTF((int)offsetof(struct obd_statfs, os_fprecreated) == 108, "found %lld\n",
1959                  (long long)(int)offsetof(struct obd_statfs, os_fprecreated));
1960         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_fprecreated) == 4, "found %lld\n",
1961                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_fprecreated));
1962         LASSERTF((int)offsetof(struct obd_statfs, os_granted) == 112, "found %lld\n",
1963                  (long long)(int)offsetof(struct obd_statfs, os_granted));
1964         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_granted) == 4, "found %lld\n",
1965                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_granted));
1966         LASSERTF((int)offsetof(struct obd_statfs, os_spare3) == 116, "found %lld\n",
1967                  (long long)(int)offsetof(struct obd_statfs, os_spare3));
1968         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare3) == 4, "found %lld\n",
1969                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare3));
1970         LASSERTF((int)offsetof(struct obd_statfs, os_spare4) == 120, "found %lld\n",
1971                  (long long)(int)offsetof(struct obd_statfs, os_spare4));
1972         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare4) == 4, "found %lld\n",
1973                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare4));
1974         LASSERTF((int)offsetof(struct obd_statfs, os_spare5) == 124, "found %lld\n",
1975                  (long long)(int)offsetof(struct obd_statfs, os_spare5));
1976         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare5) == 4, "found %lld\n",
1977                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare5));
1978         LASSERTF((int)offsetof(struct obd_statfs, os_spare6) == 128, "found %lld\n",
1979                  (long long)(int)offsetof(struct obd_statfs, os_spare6));
1980         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare6) == 4, "found %lld\n",
1981                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare6));
1982         LASSERTF((int)offsetof(struct obd_statfs, os_spare7) == 132, "found %lld\n",
1983                  (long long)(int)offsetof(struct obd_statfs, os_spare7));
1984         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare7) == 4, "found %lld\n",
1985                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare7));
1986         LASSERTF((int)offsetof(struct obd_statfs, os_spare8) == 136, "found %lld\n",
1987                  (long long)(int)offsetof(struct obd_statfs, os_spare8));
1988         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare8) == 4, "found %lld\n",
1989                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare8));
1990         LASSERTF((int)offsetof(struct obd_statfs, os_spare9) == 140, "found %lld\n",
1991                  (long long)(int)offsetof(struct obd_statfs, os_spare9));
1992         LASSERTF((int)sizeof(((struct obd_statfs *)0)->os_spare9) == 4, "found %lld\n",
1993                  (long long)(int)sizeof(((struct obd_statfs *)0)->os_spare9));
1994         LASSERTF(OS_STATE_DEGRADED == 0x00000001UL, "found 0x%.8xUL\n",
1995                 (unsigned)OS_STATE_DEGRADED);
1996         LASSERTF(OS_STATE_READONLY == 0x00000002UL, "found 0x%.8xUL\n",
1997                 (unsigned)OS_STATE_READONLY);
1998         LASSERTF(OS_STATE_NOPRECREATE == 0x00000004UL, "found 0x%.8xUL\n",
1999                 (unsigned)OS_STATE_NOPRECREATE);
2000         LASSERTF(OS_STATE_ENOSPC == 0x00000020UL, "found 0x%.8xUL\n",
2001                 (unsigned)OS_STATE_ENOSPC);
2002         LASSERTF(OS_STATE_ENOINO == 0x00000040UL, "found 0x%.8xUL\n",
2003                 (unsigned)OS_STATE_ENOINO);
2004         LASSERTF(OS_STATE_SUM == 0x00000100UL, "found 0x%.8xUL\n",
2005                 (unsigned)OS_STATE_SUM);
2006         LASSERTF(OS_STATE_NONROT == 0x00000200UL, "found 0x%.8xUL\n",
2007                 (unsigned)OS_STATE_NONROT);
2008
2009         /* Checks for struct obd_ioobj */
2010         LASSERTF((int)sizeof(struct obd_ioobj) == 24, "found %lld\n",
2011                  (long long)(int)sizeof(struct obd_ioobj));
2012         LASSERTF((int)offsetof(struct obd_ioobj, ioo_oid) == 0, "found %lld\n",
2013                  (long long)(int)offsetof(struct obd_ioobj, ioo_oid));
2014         LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_oid) == 16, "found %lld\n",
2015                  (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_oid));
2016         LASSERTF((int)offsetof(struct obd_ioobj, ioo_max_brw) == 16, "found %lld\n",
2017                  (long long)(int)offsetof(struct obd_ioobj, ioo_max_brw));
2018         LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_max_brw) == 4, "found %lld\n",
2019                  (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_max_brw));
2020         LASSERTF((int)offsetof(struct obd_ioobj, ioo_bufcnt) == 20, "found %lld\n",
2021                  (long long)(int)offsetof(struct obd_ioobj, ioo_bufcnt));
2022         LASSERTF((int)sizeof(((struct obd_ioobj *)0)->ioo_bufcnt) == 4, "found %lld\n",
2023                  (long long)(int)sizeof(((struct obd_ioobj *)0)->ioo_bufcnt));
2024         LASSERTF(IOOBJ_MAX_BRW_BITS == 16, "found %lld\n",
2025                  (long long)IOOBJ_MAX_BRW_BITS);
2026
2027         /* Checks for union lquota_id */
2028         LASSERTF((int)sizeof(union lquota_id) == 16, "found %lld\n",
2029                  (long long)(int)sizeof(union lquota_id));
2030
2031         LASSERTF(QUOTABLOCK_BITS == 10, "found %lld\n",
2032                  (long long)QUOTABLOCK_BITS);
2033         LASSERTF(QUOTABLOCK_SIZE == 1024, "found %lld\n",
2034                  (long long)QUOTABLOCK_SIZE);
2035
2036         /* Checks for struct obd_quotactl */
2037         LASSERTF((int)sizeof(struct obd_quotactl) == 112, "found %lld\n",
2038                  (long long)(int)sizeof(struct obd_quotactl));
2039         LASSERTF((int)offsetof(struct obd_quotactl, qc_cmd) == 0, "found %lld\n",
2040                  (long long)(int)offsetof(struct obd_quotactl, qc_cmd));
2041         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_cmd) == 4, "found %lld\n",
2042                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_cmd));
2043         LASSERTF((int)offsetof(struct obd_quotactl, qc_type) == 4, "found %lld\n",
2044                  (long long)(int)offsetof(struct obd_quotactl, qc_type));
2045         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_type) == 4, "found %lld\n",
2046                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_type));
2047         LASSERTF((int)offsetof(struct obd_quotactl, qc_id) == 8, "found %lld\n",
2048                  (long long)(int)offsetof(struct obd_quotactl, qc_id));
2049         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_id) == 4, "found %lld\n",
2050                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_id));
2051         LASSERTF((int)offsetof(struct obd_quotactl, qc_stat) == 12, "found %lld\n",
2052                  (long long)(int)offsetof(struct obd_quotactl, qc_stat));
2053         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_stat) == 4, "found %lld\n",
2054                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_stat));
2055         LASSERTF((int)offsetof(struct obd_quotactl, qc_dqinfo) == 16, "found %lld\n",
2056                  (long long)(int)offsetof(struct obd_quotactl, qc_dqinfo));
2057         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_dqinfo) == 24, "found %lld\n",
2058                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_dqinfo));
2059         LASSERTF((int)offsetof(struct obd_quotactl, qc_dqblk) == 40, "found %lld\n",
2060                  (long long)(int)offsetof(struct obd_quotactl, qc_dqblk));
2061         LASSERTF((int)sizeof(((struct obd_quotactl *)0)->qc_dqblk) == 72, "found %lld\n",
2062                  (long long)(int)sizeof(((struct obd_quotactl *)0)->qc_dqblk));
2063
2064         /* Checks for struct obd_dqinfo */
2065         LASSERTF((int)sizeof(struct obd_dqinfo) == 24, "found %lld\n",
2066                  (long long)(int)sizeof(struct obd_dqinfo));
2067         LASSERTF((int)offsetof(struct obd_dqinfo, dqi_bgrace) == 0, "found %lld\n",
2068                  (long long)(int)offsetof(struct obd_dqinfo, dqi_bgrace));
2069         LASSERTF((int)sizeof(((struct obd_dqinfo *)0)->dqi_bgrace) == 8, "found %lld\n",
2070                  (long long)(int)sizeof(((struct obd_dqinfo *)0)->dqi_bgrace));
2071         LASSERTF((int)offsetof(struct obd_dqinfo, dqi_igrace) == 8, "found %lld\n",
2072                  (long long)(int)offsetof(struct obd_dqinfo, dqi_igrace));
2073         LASSERTF((int)sizeof(((struct obd_dqinfo *)0)->dqi_igrace) == 8, "found %lld\n",
2074                  (long long)(int)sizeof(((struct obd_dqinfo *)0)->dqi_igrace));
2075         LASSERTF((int)offsetof(struct obd_dqinfo, dqi_flags) == 16, "found %lld\n",
2076                  (long long)(int)offsetof(struct obd_dqinfo, dqi_flags));
2077         LASSERTF((int)sizeof(((struct obd_dqinfo *)0)->dqi_flags) == 4, "found %lld\n",
2078                  (long long)(int)sizeof(((struct obd_dqinfo *)0)->dqi_flags));
2079         LASSERTF((int)offsetof(struct obd_dqinfo, dqi_valid) == 20, "found %lld\n",
2080                  (long long)(int)offsetof(struct obd_dqinfo, dqi_valid));
2081         LASSERTF((int)sizeof(((struct obd_dqinfo *)0)->dqi_valid) == 4, "found %lld\n",
2082                  (long long)(int)sizeof(((struct obd_dqinfo *)0)->dqi_valid));
2083
2084         /* Checks for struct obd_dqblk */
2085         LASSERTF((int)sizeof(struct obd_dqblk) == 72, "found %lld\n",
2086                  (long long)(int)sizeof(struct obd_dqblk));
2087         LASSERTF((int)offsetof(struct obd_dqblk, dqb_bhardlimit) == 0, "found %lld\n",
2088                  (long long)(int)offsetof(struct obd_dqblk, dqb_bhardlimit));
2089         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_bhardlimit) == 8, "found %lld\n",
2090                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_bhardlimit));
2091         LASSERTF((int)offsetof(struct obd_dqblk, dqb_bsoftlimit) == 8, "found %lld\n",
2092                  (long long)(int)offsetof(struct obd_dqblk, dqb_bsoftlimit));
2093         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_bsoftlimit) == 8, "found %lld\n",
2094                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_bsoftlimit));
2095         LASSERTF((int)offsetof(struct obd_dqblk, dqb_curspace) == 16, "found %lld\n",
2096                  (long long)(int)offsetof(struct obd_dqblk, dqb_curspace));
2097         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_curspace) == 8, "found %lld\n",
2098                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_curspace));
2099         LASSERTF((int)offsetof(struct obd_dqblk, dqb_ihardlimit) == 24, "found %lld\n",
2100                  (long long)(int)offsetof(struct obd_dqblk, dqb_ihardlimit));
2101         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_ihardlimit) == 8, "found %lld\n",
2102                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_ihardlimit));
2103         LASSERTF((int)offsetof(struct obd_dqblk, dqb_isoftlimit) == 32, "found %lld\n",
2104                  (long long)(int)offsetof(struct obd_dqblk, dqb_isoftlimit));
2105         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_isoftlimit) == 8, "found %lld\n",
2106                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_isoftlimit));
2107         LASSERTF((int)offsetof(struct obd_dqblk, dqb_curinodes) == 40, "found %lld\n",
2108                  (long long)(int)offsetof(struct obd_dqblk, dqb_curinodes));
2109         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_curinodes) == 8, "found %lld\n",
2110                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_curinodes));
2111         LASSERTF((int)offsetof(struct obd_dqblk, dqb_btime) == 48, "found %lld\n",
2112                  (long long)(int)offsetof(struct obd_dqblk, dqb_btime));
2113         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_btime) == 8, "found %lld\n",
2114                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_btime));
2115         LASSERTF((int)offsetof(struct obd_dqblk, dqb_itime) == 56, "found %lld\n",
2116                  (long long)(int)offsetof(struct obd_dqblk, dqb_itime));
2117         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_itime) == 8, "found %lld\n",
2118                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_itime));
2119         LASSERTF((int)offsetof(struct obd_dqblk, dqb_valid) == 64, "found %lld\n",
2120                  (long long)(int)offsetof(struct obd_dqblk, dqb_valid));
2121         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_valid) == 4, "found %lld\n",
2122                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_valid));
2123         LASSERTF((int)offsetof(struct obd_dqblk, dqb_padding) == 68, "found %lld\n",
2124                  (long long)(int)offsetof(struct obd_dqblk, dqb_padding));
2125         LASSERTF((int)sizeof(((struct obd_dqblk *)0)->dqb_padding) == 4, "found %lld\n",
2126                  (long long)(int)sizeof(((struct obd_dqblk *)0)->dqb_padding));
2127         LASSERTF(Q_QUOTACHECK == 0x800100, "found 0x%.8x\n",
2128                 Q_QUOTACHECK);
2129         LASSERTF(Q_INITQUOTA == 0x800101, "found 0x%.8x\n",
2130                 Q_INITQUOTA);
2131         LASSERTF(Q_GETOINFO == 0x800102, "found 0x%.8x\n",
2132                 Q_GETOINFO);
2133         LASSERTF(Q_GETOQUOTA == 0x800103, "found 0x%.8x\n",
2134                 Q_GETOQUOTA);
2135         LASSERTF(Q_FINVALIDATE == 0x800104, "found 0x%.8x\n",
2136                 Q_FINVALIDATE);
2137
2138         /* Checks for struct lquota_acct_rec */
2139         LASSERTF((int)sizeof(struct lquota_acct_rec) == 16, "found %lld\n",
2140                  (long long)(int)sizeof(struct lquota_acct_rec));
2141         LASSERTF((int)offsetof(struct lquota_acct_rec, bspace) == 0, "found %lld\n",
2142                  (long long)(int)offsetof(struct lquota_acct_rec, bspace));
2143         LASSERTF((int)sizeof(((struct lquota_acct_rec *)0)->bspace) == 8, "found %lld\n",
2144                  (long long)(int)sizeof(((struct lquota_acct_rec *)0)->bspace));
2145         LASSERTF((int)offsetof(struct lquota_acct_rec, ispace) == 8, "found %lld\n",
2146                  (long long)(int)offsetof(struct lquota_acct_rec, ispace));
2147         LASSERTF((int)sizeof(((struct lquota_acct_rec *)0)->ispace) == 8, "found %lld\n",
2148                  (long long)(int)sizeof(((struct lquota_acct_rec *)0)->ispace));
2149
2150         /* Checks for struct lquota_glb_rec */
2151         LASSERTF((int)sizeof(struct lquota_glb_rec) == 32, "found %lld\n",
2152                  (long long)(int)sizeof(struct lquota_glb_rec));
2153         LASSERTF((int)offsetof(struct lquota_glb_rec, qbr_hardlimit) == 0, "found %lld\n",
2154                  (long long)(int)offsetof(struct lquota_glb_rec, qbr_hardlimit));
2155         LASSERTF((int)sizeof(((struct lquota_glb_rec *)0)->qbr_hardlimit) == 8, "found %lld\n",
2156                  (long long)(int)sizeof(((struct lquota_glb_rec *)0)->qbr_hardlimit));
2157         LASSERTF((int)offsetof(struct lquota_glb_rec, qbr_softlimit) == 8, "found %lld\n",
2158                  (long long)(int)offsetof(struct lquota_glb_rec, qbr_softlimit));
2159         LASSERTF((int)sizeof(((struct lquota_glb_rec *)0)->qbr_softlimit) == 8, "found %lld\n",
2160                  (long long)(int)sizeof(((struct lquota_glb_rec *)0)->qbr_softlimit));
2161         LASSERTF((int)offsetof(struct lquota_glb_rec, qbr_time) == 16, "found %lld\n",
2162                  (long long)(int)offsetof(struct lquota_glb_rec, qbr_time));
2163         LASSERTF((int)sizeof(((struct lquota_glb_rec *)0)->qbr_time) == 8, "found %lld\n",
2164                  (long long)(int)sizeof(((struct lquota_glb_rec *)0)->qbr_time));
2165         LASSERTF((int)offsetof(struct lquota_glb_rec, qbr_granted) == 24, "found %lld\n",
2166                  (long long)(int)offsetof(struct lquota_glb_rec, qbr_granted));
2167         LASSERTF((int)sizeof(((struct lquota_glb_rec *)0)->qbr_granted) == 8, "found %lld\n",
2168                  (long long)(int)sizeof(((struct lquota_glb_rec *)0)->qbr_granted));
2169
2170         /* Checks for struct lquota_slv_rec */
2171         LASSERTF((int)sizeof(struct lquota_slv_rec) == 8, "found %lld\n",
2172                  (long long)(int)sizeof(struct lquota_slv_rec));
2173         LASSERTF((int)offsetof(struct lquota_slv_rec, qsr_granted) == 0, "found %lld\n",
2174                  (long long)(int)offsetof(struct lquota_slv_rec, qsr_granted));
2175         LASSERTF((int)sizeof(((struct lquota_slv_rec *)0)->qsr_granted) == 8, "found %lld\n",
2176                  (long long)(int)sizeof(((struct lquota_slv_rec *)0)->qsr_granted));
2177
2178         /* Checks for struct idx_info */
2179         LASSERTF((int)sizeof(struct idx_info) == 80, "found %lld\n",
2180                  (long long)(int)sizeof(struct idx_info));
2181         LASSERTF((int)offsetof(struct idx_info, ii_magic) == 0, "found %lld\n",
2182                  (long long)(int)offsetof(struct idx_info, ii_magic));
2183         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_magic) == 4, "found %lld\n",
2184                  (long long)(int)sizeof(((struct idx_info *)0)->ii_magic));
2185         LASSERTF((int)offsetof(struct idx_info, ii_flags) == 4, "found %lld\n",
2186                  (long long)(int)offsetof(struct idx_info, ii_flags));
2187         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_flags) == 4, "found %lld\n",
2188                  (long long)(int)sizeof(((struct idx_info *)0)->ii_flags));
2189         LASSERTF((int)offsetof(struct idx_info, ii_count) == 8, "found %lld\n",
2190                  (long long)(int)offsetof(struct idx_info, ii_count));
2191         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_count) == 2, "found %lld\n",
2192                  (long long)(int)sizeof(((struct idx_info *)0)->ii_count));
2193         LASSERTF((int)offsetof(struct idx_info, ii_pad0) == 10, "found %lld\n",
2194                  (long long)(int)offsetof(struct idx_info, ii_pad0));
2195         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_pad0) == 2, "found %lld\n",
2196                  (long long)(int)sizeof(((struct idx_info *)0)->ii_pad0));
2197         LASSERTF((int)offsetof(struct idx_info, ii_attrs) == 12, "found %lld\n",
2198                  (long long)(int)offsetof(struct idx_info, ii_attrs));
2199         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_attrs) == 4, "found %lld\n",
2200                  (long long)(int)sizeof(((struct idx_info *)0)->ii_attrs));
2201         LASSERTF((int)offsetof(struct idx_info, ii_fid) == 16, "found %lld\n",
2202                  (long long)(int)offsetof(struct idx_info, ii_fid));
2203         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_fid) == 16, "found %lld\n",
2204                  (long long)(int)sizeof(((struct idx_info *)0)->ii_fid));
2205         LASSERTF((int)offsetof(struct idx_info, ii_version) == 32, "found %lld\n",
2206                  (long long)(int)offsetof(struct idx_info, ii_version));
2207         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_version) == 8, "found %lld\n",
2208                  (long long)(int)sizeof(((struct idx_info *)0)->ii_version));
2209         LASSERTF((int)offsetof(struct idx_info, ii_hash_start) == 40, "found %lld\n",
2210                  (long long)(int)offsetof(struct idx_info, ii_hash_start));
2211         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_hash_start) == 8, "found %lld\n",
2212                  (long long)(int)sizeof(((struct idx_info *)0)->ii_hash_start));
2213         LASSERTF((int)offsetof(struct idx_info, ii_hash_end) == 48, "found %lld\n",
2214                  (long long)(int)offsetof(struct idx_info, ii_hash_end));
2215         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_hash_end) == 8, "found %lld\n",
2216                  (long long)(int)sizeof(((struct idx_info *)0)->ii_hash_end));
2217         LASSERTF((int)offsetof(struct idx_info, ii_keysize) == 56, "found %lld\n",
2218                  (long long)(int)offsetof(struct idx_info, ii_keysize));
2219         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_keysize) == 2, "found %lld\n",
2220                  (long long)(int)sizeof(((struct idx_info *)0)->ii_keysize));
2221         LASSERTF((int)offsetof(struct idx_info, ii_recsize) == 58, "found %lld\n",
2222                  (long long)(int)offsetof(struct idx_info, ii_recsize));
2223         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_recsize) == 2, "found %lld\n",
2224                  (long long)(int)sizeof(((struct idx_info *)0)->ii_recsize));
2225         LASSERTF((int)offsetof(struct idx_info, ii_pad1) == 60, "found %lld\n",
2226                  (long long)(int)offsetof(struct idx_info, ii_pad1));
2227         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_pad1) == 4, "found %lld\n",
2228                  (long long)(int)sizeof(((struct idx_info *)0)->ii_pad1));
2229         LASSERTF((int)offsetof(struct idx_info, ii_pad2) == 64, "found %lld\n",
2230                  (long long)(int)offsetof(struct idx_info, ii_pad2));
2231         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_pad2) == 8, "found %lld\n",
2232                  (long long)(int)sizeof(((struct idx_info *)0)->ii_pad2));
2233         LASSERTF((int)offsetof(struct idx_info, ii_pad3) == 72, "found %lld\n",
2234                  (long long)(int)offsetof(struct idx_info, ii_pad3));
2235         LASSERTF((int)sizeof(((struct idx_info *)0)->ii_pad3) == 8, "found %lld\n",
2236                  (long long)(int)sizeof(((struct idx_info *)0)->ii_pad3));
2237         BUILD_BUG_ON(IDX_INFO_MAGIC != 0x3D37CC37);
2238
2239         /* Checks for struct lu_idxpage */
2240         LASSERTF((int)sizeof(struct lu_idxpage) == 16, "found %lld\n",
2241                  (long long)(int)sizeof(struct lu_idxpage));
2242         LASSERTF((int)offsetof(struct lu_idxpage, lip_magic) == 0, "found %lld\n",
2243                  (long long)(int)offsetof(struct lu_idxpage, lip_magic));
2244         LASSERTF((int)sizeof(((struct lu_idxpage *)0)->lip_magic) == 4, "found %lld\n",
2245                  (long long)(int)sizeof(((struct lu_idxpage *)0)->lip_magic));
2246         LASSERTF((int)offsetof(struct lu_idxpage, lip_flags) == 4, "found %lld\n",
2247                  (long long)(int)offsetof(struct lu_idxpage, lip_flags));
2248         LASSERTF((int)sizeof(((struct lu_idxpage *)0)->lip_flags) == 2, "found %lld\n",
2249                  (long long)(int)sizeof(((struct lu_idxpage *)0)->lip_flags));
2250         LASSERTF((int)offsetof(struct lu_idxpage, lip_nr) == 6, "found %lld\n",
2251                  (long long)(int)offsetof(struct lu_idxpage, lip_nr));
2252         LASSERTF((int)sizeof(((struct lu_idxpage *)0)->lip_nr) == 2, "found %lld\n",
2253                  (long long)(int)sizeof(((struct lu_idxpage *)0)->lip_nr));
2254         LASSERTF((int)offsetof(struct lu_idxpage, lip_pad0) == 8, "found %lld\n",
2255                  (long long)(int)offsetof(struct lu_idxpage, lip_pad0));
2256         LASSERTF((int)sizeof(((struct lu_idxpage *)0)->lip_pad0) == 8, "found %lld\n",
2257                  (long long)(int)sizeof(((struct lu_idxpage *)0)->lip_pad0));
2258         BUILD_BUG_ON(LIP_MAGIC != 0x8A6D6B6C);
2259         BUILD_BUG_ON(LIP_HDR_SIZE != (__builtin_offsetof (struct lu_idxpage, lip_entries)));
2260         BUILD_BUG_ON(II_FL_NOHASH != 0x00000001);
2261         BUILD_BUG_ON(II_FL_VARKEY != 0x00000002);
2262         BUILD_BUG_ON(II_FL_VARREC != 0x00000004);
2263         BUILD_BUG_ON(II_FL_NONUNQ != 0x00000008);
2264         BUILD_BUG_ON(II_FL_NOKEY != 0x00000010);
2265
2266         /* Checks for struct niobuf_remote */
2267         LASSERTF((int)sizeof(struct niobuf_remote) == 16, "found %lld\n",
2268                  (long long)(int)sizeof(struct niobuf_remote));
2269         LASSERTF((int)offsetof(struct niobuf_remote, rnb_offset) == 0, "found %lld\n",
2270                  (long long)(int)offsetof(struct niobuf_remote, rnb_offset));
2271         LASSERTF((int)sizeof(((struct niobuf_remote *)0)->rnb_offset) == 8, "found %lld\n",
2272                  (long long)(int)sizeof(((struct niobuf_remote *)0)->rnb_offset));
2273         LASSERTF((int)offsetof(struct niobuf_remote, rnb_len) == 8, "found %lld\n",
2274                  (long long)(int)offsetof(struct niobuf_remote, rnb_len));
2275         LASSERTF((int)sizeof(((struct niobuf_remote *)0)->rnb_len) == 4, "found %lld\n",
2276                  (long long)(int)sizeof(((struct niobuf_remote *)0)->rnb_len));
2277         LASSERTF((int)offsetof(struct niobuf_remote, rnb_flags) == 12, "found %lld\n",
2278                  (long long)(int)offsetof(struct niobuf_remote, rnb_flags));
2279         LASSERTF((int)sizeof(((struct niobuf_remote *)0)->rnb_flags) == 4, "found %lld\n",
2280                  (long long)(int)sizeof(((struct niobuf_remote *)0)->rnb_flags));
2281         LASSERTF(OBD_BRW_READ == 0x01, "found 0x%.8x\n",
2282                 OBD_BRW_READ);
2283         LASSERTF(OBD_BRW_WRITE == 0x02, "found 0x%.8x\n",
2284                 OBD_BRW_WRITE);
2285         LASSERTF(OBD_BRW_NDELAY == 0x04, "found 0x%.8x\n",
2286                 OBD_BRW_NDELAY);
2287         LASSERTF(OBD_BRW_SYNC == 0x08, "found 0x%.8x\n",
2288                 OBD_BRW_SYNC);
2289         LASSERTF(OBD_BRW_CHECK == 0x10, "found 0x%.8x\n",
2290                 OBD_BRW_CHECK);
2291         LASSERTF(OBD_BRW_FROM_GRANT == 0x20, "found 0x%.8x\n",
2292                 OBD_BRW_FROM_GRANT);
2293         LASSERTF(OBD_BRW_GRANTED == 0x40, "found 0x%.8x\n",
2294                 OBD_BRW_GRANTED);
2295         LASSERTF(OBD_BRW_NOCACHE == 0x80, "found 0x%.8x\n",
2296                 OBD_BRW_NOCACHE);
2297         LASSERTF(OBD_BRW_NOQUOTA == 0x100, "found 0x%.8x\n",
2298                 OBD_BRW_NOQUOTA);
2299         LASSERTF(OBD_BRW_SRVLOCK == 0x200, "found 0x%.8x\n",
2300                 OBD_BRW_SRVLOCK);
2301         LASSERTF(OBD_BRW_ASYNC == 0x400, "found 0x%.8x\n",
2302                 OBD_BRW_ASYNC);
2303         LASSERTF(OBD_BRW_MEMALLOC == 0x800, "found 0x%.8x\n",
2304                 OBD_BRW_MEMALLOC);
2305         LASSERTF(OBD_BRW_OVER_USRQUOTA == 0x1000, "found 0x%.8x\n",
2306                 OBD_BRW_OVER_USRQUOTA);
2307         LASSERTF(OBD_BRW_OVER_GRPQUOTA == 0x2000, "found 0x%.8x\n",
2308                 OBD_BRW_OVER_GRPQUOTA);
2309         LASSERTF(OBD_BRW_SOFT_SYNC == 0x4000, "found 0x%.8x\n",
2310                 OBD_BRW_SOFT_SYNC);
2311         LASSERTF(OBD_BRW_OVER_PRJQUOTA == 0x8000, "found 0x%.8x\n",
2312                 OBD_BRW_OVER_PRJQUOTA);
2313         LASSERTF(OBD_BRW_RDMA_ONLY == 0x20000, "found 0x%.8x\n",
2314                 OBD_BRW_RDMA_ONLY);
2315
2316         /* Checks for struct ost_body */
2317         LASSERTF((int)sizeof(struct ost_body) == 208, "found %lld\n",
2318                  (long long)(int)sizeof(struct ost_body));
2319         LASSERTF((int)offsetof(struct ost_body, oa) == 0, "found %lld\n",
2320                  (long long)(int)offsetof(struct ost_body, oa));
2321         LASSERTF((int)sizeof(((struct ost_body *)0)->oa) == 208, "found %lld\n",
2322                  (long long)(int)sizeof(((struct ost_body *)0)->oa));
2323
2324         /* Checks for struct ll_fid */
2325         LASSERTF((int)sizeof(struct ll_fid) == 16, "found %lld\n",
2326                  (long long)(int)sizeof(struct ll_fid));
2327         LASSERTF((int)offsetof(struct ll_fid, id) == 0, "found %lld\n",
2328                  (long long)(int)offsetof(struct ll_fid, id));
2329         LASSERTF((int)sizeof(((struct ll_fid *)0)->id) == 8, "found %lld\n",
2330                  (long long)(int)sizeof(((struct ll_fid *)0)->id));
2331         LASSERTF((int)offsetof(struct ll_fid, generation) == 8, "found %lld\n",
2332                  (long long)(int)offsetof(struct ll_fid, generation));
2333         LASSERTF((int)sizeof(((struct ll_fid *)0)->generation) == 4, "found %lld\n",
2334                  (long long)(int)sizeof(((struct ll_fid *)0)->generation));
2335         LASSERTF((int)offsetof(struct ll_fid, f_type) == 12, "found %lld\n",
2336                  (long long)(int)offsetof(struct ll_fid, f_type));
2337         LASSERTF((int)sizeof(((struct ll_fid *)0)->f_type) == 4, "found %lld\n",
2338                  (long long)(int)sizeof(((struct ll_fid *)0)->f_type));
2339
2340         LASSERTF(MDS_CROSS_REF == 0x00000002UL, "found 0x%.8xUL\n",
2341                 (unsigned)MDS_CROSS_REF);
2342         LASSERTF(MDS_PERM_BYPASS == 0x00000008UL, "found 0x%.8xUL\n",
2343                 (unsigned)MDS_PERM_BYPASS);
2344         LASSERTF(MDS_QUOTA_IGNORE == 0x00000020UL, "found 0x%.8xUL\n",
2345                 (unsigned)MDS_QUOTA_IGNORE);
2346         LASSERTF(MDS_KEEP_ORPHAN == 0x00000080UL, "found 0x%.8xUL\n",
2347                 (unsigned)MDS_KEEP_ORPHAN);
2348         LASSERTF(MDS_RECOV_OPEN == 0x00000100UL, "found 0x%.8xUL\n",
2349                 (unsigned)MDS_RECOV_OPEN);
2350         LASSERTF(MDS_DATA_MODIFIED == 0x00000200UL, "found 0x%.8xUL\n",
2351                 (unsigned)MDS_DATA_MODIFIED);
2352         LASSERTF(MDS_CREATE_VOLATILE == 0x00000400UL, "found 0x%.8xUL\n",
2353                 (unsigned)MDS_CREATE_VOLATILE);
2354         LASSERTF(MDS_OWNEROVERRIDE == 0x00000800UL, "found 0x%.8xUL\n",
2355                 (unsigned)MDS_OWNEROVERRIDE);
2356         LASSERTF(MDS_HSM_RELEASE == 0x00001000UL, "found 0x%.8xUL\n",
2357                 (unsigned)MDS_HSM_RELEASE);
2358         LASSERTF(MDS_CLOSE_MIGRATE == 0x00002000UL, "found 0x%.8xUL\n",
2359                 (unsigned)MDS_CLOSE_MIGRATE);
2360         LASSERTF(MDS_CLOSE_LAYOUT_SWAP == 0x00004000UL, "found 0x%.8xUL\n",
2361                 (unsigned)MDS_CLOSE_LAYOUT_SWAP);
2362         LASSERTF(MDS_CLOSE_LAYOUT_MERGE == 0x00008000UL, "found 0x%.8xUL\n",
2363                 (unsigned)MDS_CLOSE_LAYOUT_MERGE);
2364         LASSERTF(MDS_CLOSE_RESYNC_DONE == 0x00010000UL, "found 0x%.8xUL\n",
2365                 (unsigned)MDS_CLOSE_RESYNC_DONE);
2366         LASSERTF(MDS_CLOSE_LAYOUT_SPLIT == 0x00020000UL, "found 0x%.8xUL\n",
2367                 (unsigned)MDS_CLOSE_LAYOUT_SPLIT);
2368         LASSERTF(MDS_TRUNC_KEEP_LEASE == 0x00040000UL, "found 0x%.8xUL\n",
2369                 (unsigned)MDS_TRUNC_KEEP_LEASE);
2370         LASSERTF(MDS_PCC_ATTACH == 0x00080000UL, "found 0x%.8xUL\n",
2371                 (unsigned)MDS_PCC_ATTACH);
2372         LASSERTF(MDS_CLOSE_UPDATE_TIMES == 0x00100000UL, "found 0x%.8xUL\n",
2373                 (unsigned)MDS_CLOSE_UPDATE_TIMES);
2374
2375         /* Checks for struct mdt_body */
2376         LASSERTF((int)sizeof(struct mdt_body) == 216, "found %lld\n",
2377                  (long long)(int)sizeof(struct mdt_body));
2378         LASSERTF((int)offsetof(struct mdt_body, mbo_fid1) == 0, "found %lld\n",
2379                  (long long)(int)offsetof(struct mdt_body, mbo_fid1));
2380         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_fid1) == 16, "found %lld\n",
2381                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_fid1));
2382         LASSERTF((int)offsetof(struct mdt_body, mbo_fid2) == 16, "found %lld\n",
2383                  (long long)(int)offsetof(struct mdt_body, mbo_fid2));
2384         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_fid2) == 16, "found %lld\n",
2385                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_fid2));
2386         LASSERTF((int)offsetof(struct mdt_body, mbo_open_handle) == 32, "found %lld\n",
2387                  (long long)(int)offsetof(struct mdt_body, mbo_open_handle));
2388         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_open_handle) == 8, "found %lld\n",
2389                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_open_handle));
2390         LASSERTF((int)offsetof(struct mdt_body, mbo_valid) == 40, "found %lld\n",
2391                  (long long)(int)offsetof(struct mdt_body, mbo_valid));
2392         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_valid) == 8, "found %lld\n",
2393                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_valid));
2394         LASSERTF((int)offsetof(struct mdt_body, mbo_size) == 48, "found %lld\n",
2395                  (long long)(int)offsetof(struct mdt_body, mbo_size));
2396         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_size) == 8, "found %lld\n",
2397                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_size));
2398         LASSERTF((int)offsetof(struct mdt_body, mbo_mtime) == 56, "found %lld\n",
2399                  (long long)(int)offsetof(struct mdt_body, mbo_mtime));
2400         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_mtime) == 8, "found %lld\n",
2401                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_mtime));
2402         LASSERTF((int)offsetof(struct mdt_body, mbo_atime) == 64, "found %lld\n",
2403                  (long long)(int)offsetof(struct mdt_body, mbo_atime));
2404         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_atime) == 8, "found %lld\n",
2405                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_atime));
2406         LASSERTF((int)offsetof(struct mdt_body, mbo_ctime) == 72, "found %lld\n",
2407                  (long long)(int)offsetof(struct mdt_body, mbo_ctime));
2408         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_ctime) == 8, "found %lld\n",
2409                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_ctime));
2410         LASSERTF((int)offsetof(struct mdt_body, mbo_blocks) == 80, "found %lld\n",
2411                  (long long)(int)offsetof(struct mdt_body, mbo_blocks));
2412         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_blocks) == 8, "found %lld\n",
2413                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_blocks));
2414         LASSERTF((int)offsetof(struct mdt_body, mbo_version) == 88, "found %lld\n",
2415                  (long long)(int)offsetof(struct mdt_body, mbo_version));
2416         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_version) == 8, "found %lld\n",
2417                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_version));
2418         LASSERTF((int)offsetof(struct mdt_body, mbo_t_state) == 96, "found %lld\n",
2419                  (long long)(int)offsetof(struct mdt_body, mbo_t_state));
2420         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_t_state) == 8, "found %lld\n",
2421                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_t_state));
2422         LASSERTF((int)offsetof(struct mdt_body, mbo_fsuid) == 104, "found %lld\n",
2423                  (long long)(int)offsetof(struct mdt_body, mbo_fsuid));
2424         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_fsuid) == 4, "found %lld\n",
2425                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_fsuid));
2426         LASSERTF((int)offsetof(struct mdt_body, mbo_fsgid) == 108, "found %lld\n",
2427                  (long long)(int)offsetof(struct mdt_body, mbo_fsgid));
2428         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_fsgid) == 4, "found %lld\n",
2429                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_fsgid));
2430         LASSERTF((int)offsetof(struct mdt_body, mbo_capability) == 112, "found %lld\n",
2431                  (long long)(int)offsetof(struct mdt_body, mbo_capability));
2432         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_capability) == 4, "found %lld\n",
2433                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_capability));
2434         LASSERTF((int)offsetof(struct mdt_body, mbo_mode) == 116, "found %lld\n",
2435                  (long long)(int)offsetof(struct mdt_body, mbo_mode));
2436         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_mode) == 4, "found %lld\n",
2437                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_mode));
2438         LASSERTF((int)offsetof(struct mdt_body, mbo_uid) == 120, "found %lld\n",
2439                  (long long)(int)offsetof(struct mdt_body, mbo_uid));
2440         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_uid) == 4, "found %lld\n",
2441                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_uid));
2442         LASSERTF((int)offsetof(struct mdt_body, mbo_gid) == 124, "found %lld\n",
2443                  (long long)(int)offsetof(struct mdt_body, mbo_gid));
2444         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_gid) == 4, "found %lld\n",
2445                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_gid));
2446         LASSERTF((int)offsetof(struct mdt_body, mbo_flags) == 128, "found %lld\n",
2447                  (long long)(int)offsetof(struct mdt_body, mbo_flags));
2448         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_flags) == 4, "found %lld\n",
2449                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_flags));
2450         LASSERTF((int)offsetof(struct mdt_body, mbo_rdev) == 132, "found %lld\n",
2451                  (long long)(int)offsetof(struct mdt_body, mbo_rdev));
2452         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_rdev) == 4, "found %lld\n",
2453                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_rdev));
2454         LASSERTF((int)offsetof(struct mdt_body, mbo_nlink) == 136, "found %lld\n",
2455                  (long long)(int)offsetof(struct mdt_body, mbo_nlink));
2456         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_nlink) == 4, "found %lld\n",
2457                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_nlink));
2458         LASSERTF((int)offsetof(struct mdt_body, mbo_layout_gen) == 140, "found %lld\n",
2459                  (long long)(int)offsetof(struct mdt_body, mbo_layout_gen));
2460         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_layout_gen) == 4, "found %lld\n",
2461                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_layout_gen));
2462         LASSERTF((int)offsetof(struct mdt_body, mbo_suppgid) == 144, "found %lld\n",
2463                  (long long)(int)offsetof(struct mdt_body, mbo_suppgid));
2464         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_suppgid) == 4, "found %lld\n",
2465                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_suppgid));
2466         LASSERTF((int)offsetof(struct mdt_body, mbo_eadatasize) == 148, "found %lld\n",
2467                  (long long)(int)offsetof(struct mdt_body, mbo_eadatasize));
2468         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_eadatasize) == 4, "found %lld\n",
2469                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_eadatasize));
2470         LASSERTF((int)offsetof(struct mdt_body, mbo_aclsize) == 152, "found %lld\n",
2471                  (long long)(int)offsetof(struct mdt_body, mbo_aclsize));
2472         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_aclsize) == 4, "found %lld\n",
2473                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_aclsize));
2474         LASSERTF((int)offsetof(struct mdt_body, mbo_max_mdsize) == 156, "found %lld\n",
2475                  (long long)(int)offsetof(struct mdt_body, mbo_max_mdsize));
2476         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_max_mdsize) == 4, "found %lld\n",
2477                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_max_mdsize));
2478         LASSERTF((int)offsetof(struct mdt_body, mbo_unused3) == 160, "found %lld\n",
2479                  (long long)(int)offsetof(struct mdt_body, mbo_unused3));
2480         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_unused3) == 4, "found %lld\n",
2481                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_unused3));
2482         LASSERTF((int)offsetof(struct mdt_body, mbo_uid_h) == 164, "found %lld\n",
2483                  (long long)(int)offsetof(struct mdt_body, mbo_uid_h));
2484         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_uid_h) == 4, "found %lld\n",
2485                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_uid_h));
2486         LASSERTF((int)offsetof(struct mdt_body, mbo_gid_h) == 168, "found %lld\n",
2487                  (long long)(int)offsetof(struct mdt_body, mbo_gid_h));
2488         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_gid_h) == 4, "found %lld\n",
2489                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_gid_h));
2490         LASSERTF((int)offsetof(struct mdt_body, mbo_projid) == 172, "found %lld\n",
2491                  (long long)(int)offsetof(struct mdt_body, mbo_projid));
2492         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_projid) == 4, "found %lld\n",
2493                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_projid));
2494         LASSERTF((int)offsetof(struct mdt_body, mbo_dom_size) == 176, "found %lld\n",
2495                  (long long)(int)offsetof(struct mdt_body, mbo_dom_size));
2496         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_dom_size) == 8, "found %lld\n",
2497                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_dom_size));
2498         LASSERTF((int)offsetof(struct mdt_body, mbo_dom_blocks) == 184, "found %lld\n",
2499                  (long long)(int)offsetof(struct mdt_body, mbo_dom_blocks));
2500         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_dom_blocks) == 8, "found %lld\n",
2501                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_dom_blocks));
2502         LASSERTF((int)offsetof(struct mdt_body, mbo_btime) == 192, "found %lld\n",
2503                  (long long)(int)offsetof(struct mdt_body, mbo_btime));
2504         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_btime) == 8, "found %lld\n",
2505                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_btime));
2506         LASSERTF((int)offsetof(struct mdt_body, mbo_padding_9) == 200, "found %lld\n",
2507                  (long long)(int)offsetof(struct mdt_body, mbo_padding_9));
2508         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_9) == 8, "found %lld\n",
2509                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_padding_9));
2510         LASSERTF((int)offsetof(struct mdt_body, mbo_padding_10) == 208, "found %lld\n",
2511                  (long long)(int)offsetof(struct mdt_body, mbo_padding_10));
2512         LASSERTF((int)sizeof(((struct mdt_body *)0)->mbo_padding_10) == 8, "found %lld\n",
2513                  (long long)(int)sizeof(((struct mdt_body *)0)->mbo_padding_10));
2514         LASSERTF(MDS_FMODE_CLOSED == 000000000000UL, "found 0%.11oUL\n",
2515                 MDS_FMODE_CLOSED);
2516         LASSERTF(MDS_FMODE_EXEC == 000000000004UL, "found 0%.11oUL\n",
2517                 MDS_FMODE_EXEC);
2518         LASSERTF(MDS_OPEN_CREATED == 000000000010UL, "found 0%.11oUL\n",
2519                 MDS_OPEN_CREATED);
2520         LASSERTF(MDS_OPEN_CREAT == 000000000100UL, "found 0%.11oUL\n",
2521                 MDS_OPEN_CREAT);
2522         LASSERTF(MDS_OPEN_EXCL == 000000000200UL, "found 0%.11oUL\n",
2523                 MDS_OPEN_EXCL);
2524         LASSERTF(MDS_OPEN_TRUNC == 000000001000UL, "found 0%.11oUL\n",
2525                 MDS_OPEN_TRUNC);
2526         LASSERTF(MDS_OPEN_APPEND == 000000002000UL, "found 0%.11oUL\n",
2527                 MDS_OPEN_APPEND);
2528         LASSERTF(MDS_OPEN_SYNC == 000000010000UL, "found 0%.11oUL\n",
2529                 MDS_OPEN_SYNC);
2530         LASSERTF(MDS_OPEN_DIRECTORY == 000000200000UL, "found 0%.11oUL\n",
2531                 MDS_OPEN_DIRECTORY);
2532         LASSERTF(MDS_OPEN_BY_FID == 000040000000UL, "found 0%.11oUL\n",
2533                 MDS_OPEN_BY_FID);
2534         LASSERTF(MDS_OPEN_DELAY_CREATE == 000100000000UL, "found 0%.11oUL\n",
2535                 MDS_OPEN_DELAY_CREATE);
2536         LASSERTF(MDS_OPEN_OWNEROVERRIDE == 000200000000UL, "found 0%.11oUL\n",
2537                 MDS_OPEN_OWNEROVERRIDE);
2538         LASSERTF(MDS_OPEN_JOIN_FILE == 000400000000UL, "found 0%.11oUL\n",
2539                 MDS_OPEN_JOIN_FILE);
2540         LASSERTF(MDS_OPEN_LOCK == 004000000000UL, "found 0%.11oUL\n",
2541                 MDS_OPEN_LOCK);
2542         LASSERTF(MDS_OPEN_HAS_EA == 010000000000UL, "found 0%.11oUL\n",
2543                 MDS_OPEN_HAS_EA);
2544         LASSERTF(MDS_OPEN_HAS_OBJS == 020000000000UL, "found 0%.11oUL\n",
2545                 MDS_OPEN_HAS_OBJS);
2546         LASSERTF(MDS_OPEN_NORESTORE == 00000000000100000000000ULL, "found 0%.22lloULL\n",
2547                         (long long)MDS_OPEN_NORESTORE);
2548         LASSERTF(MDS_OPEN_NEWSTRIPE == 00000000000200000000000ULL, "found 0%.22lloULL\n",
2549                         (long long)MDS_OPEN_NEWSTRIPE);
2550         LASSERTF(MDS_OPEN_VOLATILE == 00000000000400000000000ULL, "found 0%.22lloULL\n",
2551                         (long long)MDS_OPEN_VOLATILE);
2552         LASSERTF(MDS_OPEN_LEASE == 00000000001000000000000ULL, "found 0%.22lloULL\n",
2553                         (long long)MDS_OPEN_LEASE);
2554         LASSERTF(MDS_OPEN_RESYNC == 00000000004000000000000ULL, "found 0%.22lloULL\n",
2555                         (long long)MDS_OPEN_RESYNC);
2556         LASSERTF(MDS_OPEN_PCC == 00000000010000000000000ULL, "found 0%.22lloULL\n",
2557                         (long long)MDS_OPEN_PCC);
2558         LASSERTF(LUSTRE_SYNC_FL == 0x00000008UL, "found 0x%.8xUL\n",
2559                 (unsigned)LUSTRE_SYNC_FL);
2560         LASSERTF(LUSTRE_IMMUTABLE_FL == 0x00000010UL, "found 0x%.8xUL\n",
2561                 (unsigned)LUSTRE_IMMUTABLE_FL);
2562         LASSERTF(LUSTRE_APPEND_FL == 0x00000020UL, "found 0x%.8xUL\n",
2563                 (unsigned)LUSTRE_APPEND_FL);
2564         LASSERTF(LUSTRE_NODUMP_FL == 0x00000040UL, "found 0x%.8xUL\n",
2565                 (unsigned)LUSTRE_NODUMP_FL);
2566         LASSERTF(LUSTRE_NOATIME_FL == 0x00000080UL, "found 0x%.8xUL\n",
2567                 (unsigned)LUSTRE_NOATIME_FL);
2568         LASSERTF(LUSTRE_INDEX_FL == 0x00001000UL, "found 0x%.8xUL\n",
2569                 (unsigned)LUSTRE_INDEX_FL);
2570         LASSERTF(LUSTRE_ORPHAN_FL == 0x00002000UL, "found 0x%.8xUL\n",
2571                 (unsigned)LUSTRE_ORPHAN_FL);
2572         LASSERTF(LUSTRE_DIRSYNC_FL == 0x00010000UL, "found 0x%.8xUL\n",
2573                 (unsigned)LUSTRE_DIRSYNC_FL);
2574         LASSERTF(LUSTRE_TOPDIR_FL == 0x00020000UL, "found 0x%.8xUL\n",
2575                 (unsigned)LUSTRE_TOPDIR_FL);
2576         LASSERTF(LUSTRE_INLINE_DATA_FL == 0x10000000UL, "found 0x%.8xUL\n",
2577                 (unsigned)LUSTRE_INLINE_DATA_FL);
2578         LASSERTF(LUSTRE_SET_SYNC_FL == 0x00040000UL, "found 0x%.8xUL\n",
2579                 (unsigned)LUSTRE_SET_SYNC_FL);
2580         LASSERTF(LUSTRE_ENCRYPT_FL == 0x00800000UL, "found 0x%.8xUL\n",
2581                  (unsigned)LUSTRE_ENCRYPT_FL);
2582         LASSERTF(MDS_INODELOCK_LOOKUP == 0x00000001UL, "found 0x%.8xUL\n",
2583                 (unsigned)MDS_INODELOCK_LOOKUP);
2584         LASSERTF(MDS_INODELOCK_UPDATE == 0x00000002UL, "found 0x%.8xUL\n",
2585                 (unsigned)MDS_INODELOCK_UPDATE);
2586         LASSERTF(MDS_INODELOCK_OPEN == 0x00000004UL, "found 0x%.8xUL\n",
2587                 (unsigned)MDS_INODELOCK_OPEN);
2588         LASSERTF(MDS_INODELOCK_LAYOUT == 0x00000008UL, "found 0x%.8xUL\n",
2589                 (unsigned)MDS_INODELOCK_LAYOUT);
2590         LASSERTF(MDS_INODELOCK_PERM == 0x00000010UL, "found 0x%.8xUL\n",
2591                 (unsigned)MDS_INODELOCK_PERM);
2592         LASSERTF(MDS_INODELOCK_XATTR == 0x00000020UL, "found 0x%.8xUL\n",
2593                 (unsigned)MDS_INODELOCK_XATTR);
2594         LASSERTF(MDS_INODELOCK_DOM == 0x00000040UL, "found 0x%.8xUL\n",
2595                 (unsigned)MDS_INODELOCK_DOM);
2596
2597         /* Checks for struct mdt_ioepoch */
2598         LASSERTF((int)sizeof(struct mdt_ioepoch) == 24, "found %lld\n",
2599                  (long long)(int)sizeof(struct mdt_ioepoch));
2600         LASSERTF((int)offsetof(struct mdt_ioepoch, mio_open_handle) == 0, "found %lld\n",
2601                  (long long)(int)offsetof(struct mdt_ioepoch, mio_open_handle));
2602         LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->mio_open_handle) == 8, "found %lld\n",
2603                  (long long)(int)sizeof(((struct mdt_ioepoch *)0)->mio_open_handle));
2604         LASSERTF((int)offsetof(struct mdt_ioepoch, mio_unused1) == 8, "found %lld\n",
2605                  (long long)(int)offsetof(struct mdt_ioepoch, mio_unused1));
2606         LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->mio_unused1) == 8, "found %lld\n",
2607                  (long long)(int)sizeof(((struct mdt_ioepoch *)0)->mio_unused1));
2608         LASSERTF((int)offsetof(struct mdt_ioepoch, mio_unused2) == 16, "found %lld\n",
2609                  (long long)(int)offsetof(struct mdt_ioepoch, mio_unused2));
2610         LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->mio_unused2) == 4, "found %lld\n",
2611                  (long long)(int)sizeof(((struct mdt_ioepoch *)0)->mio_unused2));
2612         LASSERTF((int)offsetof(struct mdt_ioepoch, mio_padding) == 20, "found %lld\n",
2613                  (long long)(int)offsetof(struct mdt_ioepoch, mio_padding));
2614         LASSERTF((int)sizeof(((struct mdt_ioepoch *)0)->mio_padding) == 4, "found %lld\n",
2615                  (long long)(int)sizeof(((struct mdt_ioepoch *)0)->mio_padding));
2616
2617         /* Checks for struct mdt_rec_setattr */
2618         LASSERTF((int)sizeof(struct mdt_rec_setattr) == 136, "found %lld\n",
2619                  (long long)(int)sizeof(struct mdt_rec_setattr));
2620         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_opcode) == 0, "found %lld\n",
2621                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_opcode));
2622         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_opcode) == 4, "found %lld\n",
2623                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_opcode));
2624         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_cap) == 4, "found %lld\n",
2625                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_cap));
2626         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_cap) == 4, "found %lld\n",
2627                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_cap));
2628         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsuid) == 8, "found %lld\n",
2629                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsuid));
2630         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid) == 4, "found %lld\n",
2631                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid));
2632         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsuid_h) == 12, "found %lld\n",
2633                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsuid_h));
2634         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid_h) == 4, "found %lld\n",
2635                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsuid_h));
2636         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsgid) == 16, "found %lld\n",
2637                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsgid));
2638         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid) == 4, "found %lld\n",
2639                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid));
2640         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fsgid_h) == 20, "found %lld\n",
2641                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_fsgid_h));
2642         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid_h) == 4, "found %lld\n",
2643                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fsgid_h));
2644         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_suppgid) == 24, "found %lld\n",
2645                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_suppgid));
2646         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid) == 4, "found %lld\n",
2647                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid));
2648         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_suppgid_h) == 28, "found %lld\n",
2649                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_suppgid_h));
2650         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid_h) == 4, "found %lld\n",
2651                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_suppgid_h));
2652         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_1) == 32, "found %lld\n",
2653                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_1));
2654         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1) == 4, "found %lld\n",
2655                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1));
2656         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_1_h) == 36, "found %lld\n",
2657                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_1_h));
2658         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1_h) == 4, "found %lld\n",
2659                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_1_h));
2660         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_fid) == 40, "found %lld\n",
2661                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_fid));
2662         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_fid) == 16, "found %lld\n",
2663                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_fid));
2664         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_valid) == 56, "found %lld\n",
2665                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_valid));
2666         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_valid) == 8, "found %lld\n",
2667                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_valid));
2668         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_uid) == 64, "found %lld\n",
2669                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_uid));
2670         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_uid) == 4, "found %lld\n",
2671                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_uid));
2672         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_gid) == 68, "found %lld\n",
2673                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_gid));
2674         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_gid) == 4, "found %lld\n",
2675                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_gid));
2676         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_size) == 72, "found %lld\n",
2677                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_size));
2678         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_size) == 8, "found %lld\n",
2679                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_size));
2680         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_blocks) == 80, "found %lld\n",
2681                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_blocks));
2682         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_blocks) == 8, "found %lld\n",
2683                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_blocks));
2684         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_mtime) == 88, "found %lld\n",
2685                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_mtime));
2686         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_mtime) == 8, "found %lld\n",
2687                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_mtime));
2688         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_atime) == 96, "found %lld\n",
2689                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_atime));
2690         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_atime) == 8, "found %lld\n",
2691                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_atime));
2692         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_ctime) == 104, "found %lld\n",
2693                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_ctime));
2694         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_ctime) == 8, "found %lld\n",
2695                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_ctime));
2696         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_attr_flags) == 112, "found %lld\n",
2697                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_attr_flags));
2698         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_attr_flags) == 4, "found %lld\n",
2699                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_attr_flags));
2700         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_mode) == 116, "found %lld\n",
2701                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_mode));
2702         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_mode) == 4, "found %lld\n",
2703                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_mode));
2704         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_bias) == 120, "found %lld\n",
2705                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_bias));
2706         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_bias) == 4, "found %lld\n",
2707                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_bias));
2708         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_projid) == 124, "found %lld\n",
2709                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_projid));
2710         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_projid) == 4, "found %lld\n",
2711                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_projid));
2712         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_4) == 128, "found %lld\n",
2713                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_4));
2714         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_4) == 4, "found %lld\n",
2715                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_4));
2716         LASSERTF((int)offsetof(struct mdt_rec_setattr, sa_padding_5) == 132, "found %lld\n",
2717                  (long long)(int)offsetof(struct mdt_rec_setattr, sa_padding_5));
2718         LASSERTF((int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_5) == 4, "found %lld\n",
2719                  (long long)(int)sizeof(((struct mdt_rec_setattr *)0)->sa_padding_5));
2720
2721         /* Checks for struct mdt_rec_create */
2722         LASSERTF((int)sizeof(struct mdt_rec_create) == 136, "found %lld\n",
2723                  (long long)(int)sizeof(struct mdt_rec_create));
2724         LASSERTF((int)offsetof(struct mdt_rec_create, cr_opcode) == 0, "found %lld\n",
2725                  (long long)(int)offsetof(struct mdt_rec_create, cr_opcode));
2726         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_opcode) == 4, "found %lld\n",
2727                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_opcode));
2728         LASSERTF((int)offsetof(struct mdt_rec_create, cr_cap) == 4, "found %lld\n",
2729                  (long long)(int)offsetof(struct mdt_rec_create, cr_cap));
2730         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_cap) == 4, "found %lld\n",
2731                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_cap));
2732         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsuid) == 8, "found %lld\n",
2733                  (long long)(int)offsetof(struct mdt_rec_create, cr_fsuid));
2734         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid) == 4, "found %lld\n",
2735                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid));
2736         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsuid_h) == 12, "found %lld\n",
2737                  (long long)(int)offsetof(struct mdt_rec_create, cr_fsuid_h));
2738         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid_h) == 4, "found %lld\n",
2739                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsuid_h));
2740         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsgid) == 16, "found %lld\n",
2741                  (long long)(int)offsetof(struct mdt_rec_create, cr_fsgid));
2742         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid) == 4, "found %lld\n",
2743                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid));
2744         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fsgid_h) == 20, "found %lld\n",
2745                  (long long)(int)offsetof(struct mdt_rec_create, cr_fsgid_h));
2746         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid_h) == 4, "found %lld\n",
2747                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fsgid_h));
2748         LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid1) == 24, "found %lld\n",
2749                  (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid1));
2750         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1) == 4, "found %lld\n",
2751                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1));
2752         LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid1_h) == 28, "found %lld\n",
2753                  (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid1_h));
2754         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1_h) == 4, "found %lld\n",
2755                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid1_h));
2756         LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid2) == 32, "found %lld\n",
2757                  (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid2));
2758         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2) == 4, "found %lld\n",
2759                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2));
2760         LASSERTF((int)offsetof(struct mdt_rec_create, cr_suppgid2_h) == 36, "found %lld\n",
2761                  (long long)(int)offsetof(struct mdt_rec_create, cr_suppgid2_h));
2762         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2_h) == 4, "found %lld\n",
2763                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_suppgid2_h));
2764         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fid1) == 40, "found %lld\n",
2765                  (long long)(int)offsetof(struct mdt_rec_create, cr_fid1));
2766         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fid1) == 16, "found %lld\n",
2767                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fid1));
2768         LASSERTF((int)offsetof(struct mdt_rec_create, cr_fid2) == 56, "found %lld\n",
2769                  (long long)(int)offsetof(struct mdt_rec_create, cr_fid2));
2770         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_fid2) == 16, "found %lld\n",
2771                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_fid2));
2772         LASSERTF((int)offsetof(struct mdt_rec_create, cr_open_handle_old) == 72, "found %lld\n",
2773                  (long long)(int)offsetof(struct mdt_rec_create, cr_open_handle_old));
2774         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_open_handle_old) == 8, "found %lld\n",
2775                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_open_handle_old));
2776         LASSERTF((int)offsetof(struct mdt_rec_create, cr_time) == 80, "found %lld\n",
2777                  (long long)(int)offsetof(struct mdt_rec_create, cr_time));
2778         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_time) == 8, "found %lld\n",
2779                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_time));
2780         LASSERTF((int)offsetof(struct mdt_rec_create, cr_rdev) == 88, "found %lld\n",
2781                  (long long)(int)offsetof(struct mdt_rec_create, cr_rdev));
2782         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_rdev) == 8, "found %lld\n",
2783                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_rdev));
2784         LASSERTF((int)offsetof(struct mdt_rec_create, cr_ioepoch) == 96, "found %lld\n",
2785                  (long long)(int)offsetof(struct mdt_rec_create, cr_ioepoch));
2786         LASSERTF((int)sizeof(((struct mdt_rec_create *)0)->cr_ioepoch) == 8, "found %lld\n",
2787                  (long long)(int)sizeof(((struct mdt_rec_create *)0)->cr_ioepoch));
2788         LASSERTF((int)offsetof(struct mdt_rec_create, cr_padding_1) == 104,&