2 * Lustre 1.6 dissection (http://www.lustre.org/)
3 * Author: Laurent George <george@ocre.cea.fr>
4 * based on packet-agentx.c and packet-afs.c
5 * partially generated by Pidl
7 * Wireshark - Network traffic analyzer
8 * By Gerald Combs <gerald@wireshark.org>
9 * Copyright 1999 Gerald Combs
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
33 #include <epan/packet.h>
35 #include <epan/dissectors/packet-windows-common.h>
36 #include <plugins/lnet/packet-lnet.h>
39 /* --------------------------------------------------------------------------------------- */
40 /* def and macro to know where we are the the lustre payload */
41 #define LUSTRE_MAGIC_OFFSET 8
42 #define LUSTRE_MSG_MAGIC_V1 0x0BD00BD0
43 #define LUSTRE_MSG_MAGIC_V2 0x0BD00BD3
45 #define LUSTRE_BUFCOUNT_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 0 : 60)
46 #define LUSTRE_BUFCOUNT ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) \
47 ? (tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)) : ((tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF))) )
48 /* remark : BUFLENOFF don't have the same meaning if it's for v1 or v2
49 * v1 : LUSTRE_BUFLEN_OFF = offset buflen[0] - 4 bytes.
50 * v2 : LUSTRE_BUFLEN_OFF = offset buflen[0]
52 #define LUSTRE_BUFLEN_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 32 : 60)
54 #define LUSTRE_REQ_REC_OFF 1 /* normal request record offset */
55 #define LUSTRE_REPLY_REC_OFF 1 /* normal reply record offset */
57 #define LUSTRE_DLM_INTENT_IT_OFF 2 /* intent lock it offset */
58 #define LUSTRE_DLM_INTENT_REC_OFF 3 /* intent lock record offset */
59 #define LUSTRE_DLM_LOCKREPLY_OFF 1 /* lockrep offset */
60 #define LUSTRE_DLM_REPLY_REC_OFF 2 /* reply record offset */
61 /* --------------------------------------------------------------------------------------- */
64 #define LUSTRE_PTLRPC_MSG_VERSION 0x00000003
65 #define LUSTRE_VERSION_MASK 0xffff0000
66 #define LUSTRE_OBD_VERSION 0x00010000
67 #define LUSTRE_MDS_VERSION 0x00020000
68 #define LUSTRE_OST_VERSION 0x00030000
69 #define LUSTRE_DLM_VERSION 0x00040000
70 #define LUSTRE_LOG_VERSION 0x00050000
71 #define LUSTRE_MGS_VERSION 0x00060000
75 #define LOV_MAGIC_V1 0x0BD10BD0
76 #define LOV_MAGIC LOV_MAGIC_V1
77 #define LOV_MAGIC_JOIN 0x0BD20BD0
80 OST_REPLY = 0, /* reply ? */
94 /* OST_SAN_READ = 14, deprecated */
95 /* OST_SAN_WRITE = 15, deprecated */
100 OST_QUOTA_ADJUST_QUNIT = 20,
111 #define OBD_FIRST_OPC OBD_PING
115 MDS_GETATTR_NAME = 34,
126 MDS_DONE_WRITING = 45,
135 #define IT_OPEN 0x0001
136 #define IT_CREAT 0x0002
137 #define IT_READDIR 0x0004
138 #define IT_GETATTR 0x0008
139 #define IT_LOOKUP 0x0010
140 #define IT_UNLINK 0x0020
141 #define IT_GETXATTR 0x0040
142 #define IT_EXEC 0x0080
143 #define IT_PIN 0x0100
147 #define MDS_FIRST_OPC MDS_GETATTR
148 #define LDLM_FIRST_OPC LDLM_ENQUEUE
166 LDLM_BL_CALLBACK = 104,
167 LDLM_CP_CALLBACK = 105,
168 LDLM_GL_CALLBACK = 106,
171 #define LDLM_FIRST_OPC LDLM_ENQUEUE
173 #define LDLM_FL_LOCK_CHANGED 0x000001
174 #define LDLM_FL_BLOCK_GRANTED 0x000002
175 #define LDLM_FL_BLOCK_CONV 0x000004
176 #define LDLM_FL_BLOCK_WAIT 0x000008
177 #define LDLM_FL_CBPENDING 0x000010
178 #define LDLM_FL_AST_SENT 0x000020
179 #define LDLM_FL_WAIT_NOREPROC 0x000040
180 #define LDLM_FL_CANCEL 0x000080
181 #define LDLM_FL_REPLAY 0x000100
182 #define LDLM_FL_INTENT_ONLY 0x000200
183 #define LDLM_FL_LOCAL_ONLY 0x000400
184 #define LDLM_FL_FAILED 0x000800
185 #define LDLM_FL_HAS_INTENT 0x001000
186 #define LDLM_FL_CANCELING 0x002000
187 #define LDLM_FL_LOCAL 0x004000
188 #define LDLM_FL_WARN 0x008000
189 #define LDLM_FL_DISCARD_DATA 0x010000
190 #define LDLM_FL_NO_TIMEOUT 0x020000
191 #define LDLM_FL_BLOCK_NOWAIT 0x040000
192 #define LDLM_FL_TEST_LOCK 0x080000
193 #define LDLM_FL_LVB_READY 0x100000
194 #define LDLM_FL_KMS_IGNORE 0x200000
195 #define LDLM_FL_NO_LRU 0x400000
196 #define LDLM_FL_CANCEL_ON_BLOCK 0x800000
197 #define LDLM_FL_CP_REQD 0x1000000
198 #define LDLM_FL_CLEANED 0x2000000
199 #define LDLM_FL_ATOMIC_CB 0x4000000
200 #define LDLM_FL_BL_AST 0x10000000
201 #define LDLM_FL_BL_DONE 0x20000000
202 #define LDLM_FL_DENY_ON_CONTENTION 0x40000000
203 #define LDLM_AST_DISCARD_DATA 0x80000000
207 #define LDLM_ENQUEUE (101)
208 #define LDLM_CONVERT (102)
209 #define LDLM_CANCEL (103)
210 #define LDLM_BL_CALLBACK (104)
211 #define LDLM_CP_CALLBACK (105)
212 #define LDLM_GL_CALLBACK (106)
213 #define LCK_MINMODE (0)
220 #define LCK_GROUP (64)
221 #define LDLM_PLAIN (10)
222 #define LDLM_EXTENT (11)
223 #define LDLM_FLOCK (12)
224 #define LDLM_IBITS (13)
225 //#define MGS_CONNECT (250)
226 #define OBD_PING (400)
229 * Opcodes for mountconf (mgs and mgc)
234 MGS_EXCEPTION, /* node died, etc. */
235 MGS_TARGET_REG, /* whenever target starts up */
240 #define MGS_FIRST_OPC MGS_CONNECT
244 LLOG_ORIGIN_HANDLE_CREATE = 501,
245 LLOG_ORIGIN_HANDLE_NEXT_BLOCK = 502,
246 LLOG_ORIGIN_HANDLE_READ_HEADER = 503,
247 LLOG_ORIGIN_HANDLE_WRITE_REC = 504,
248 LLOG_ORIGIN_HANDLE_CLOSE = 505,
249 LLOG_ORIGIN_CONNECT = 506,
250 LLOG_CATINFO = 507, /* for lfs catinfo */
251 LLOG_ORIGIN_HANDLE_PREV_BLOCK = 508,
252 LLOG_ORIGIN_HANDLE_DESTROY = 509, /* for destroy llog object*/
256 #define LLOG_FIRST_OPC LLOG_ORIGIN_HANDLE_CREATE
257 /*flag for the LLOG*/
258 #define LLOG_OP_MAGIC 0x10600000
259 #define LLOG_OP_MASK 0xfff00000
262 LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000,
263 OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00,
264 OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000,
265 MDS_UNLINK_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_UNLINK,
266 MDS_SETATTR_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_SETATTR,
267 OBD_CFG_REC = LLOG_OP_MAGIC | 0x20000,
268 PTL_CFG_REC = LLOG_OP_MAGIC | 0x30000, /* obsolete */
269 LLOG_GEN_REC = LLOG_OP_MAGIC | 0x40000,
270 LLOG_JOIN_REC = LLOG_OP_MAGIC | 0x50000,
271 LLOG_HDR_MAGIC = LLOG_OP_MAGIC | 0x45539,
272 LLOG_LOGID_MAGIC = LLOG_OP_MAGIC | 0x4553b,
276 /*defined in lustre/include/lustre/lustre_idl.h*/
277 #define LLOG_F_ZAP_WHEN_EMPTY 0x1
278 #define LLOG_F_IS_CAT 0x2
279 #define LLOG_F_IS_PLAIN 0x4
281 #define PTL_RPC_MSG_REQUEST 4711
282 #define PTL_RPC_MSG_ERR 4712
283 #define PTL_RPC_MSG_REPLY 4713
286 /* Ett declarations */
287 static gint ett_lustre_llog_log_llh_flags = -1 ;
288 static gint ett_lustre = -1;
289 static gint ett_lustre_lustre_handle_cookie = -1;
290 static gint ett_lustre_lustre_msg_v1 = -1;
291 static gint ett_lustre_lustre_handle_v1 = -1;
292 static gint ett_lustre_lustre_msg_v2 = -1;
293 static gint ett_lustre_ptlrpc_body = -1;
294 static gint ett_lustre_lustre_handle_v2 = -1;
295 static gint ett_lustre_obd_connect_data = -1;
296 static gint ett_lustre_lov_mds_md_v1 = -1;
297 static gint ett_lustre_lov_ost_data_v1 = -1;
298 static gint ett_lustre_obd_statfs = -1;
299 static gint ett_lustre_obd_ioobj = -1;
300 static gint ett_lustre_niobuf_remote = -1;
301 static gint ett_lustre_ost_lvb = -1;
302 static gint ett_lustre_ll_fid = -1;
303 static gint ett_lustre_mds_status_req = -1;
304 static gint ett_lustre_mds_body = -1;
305 static gint ett_lustre_obd_quotactl = -1;
306 static gint ett_lustre_obd_dqinfo = -1;
307 static gint ett_lustre_obd_dqblk = -1;
308 static gint ett_lustre_quota_adjust_qunit = -1;
309 static gint ett_lustre_mds_rec_setattr = -1;
310 static gint ett_lustre_mds_rec_create = -1;
311 static gint ett_lustre_mds_rec_join = -1;
312 static gint ett_lustre_mds_rec_link = -1;
313 static gint ett_lustre_mds_rec_unlink = -1;
314 static gint ett_lustre_mds_rec_rename = -1;
315 static gint ett_lustre_lov_desc = -1;
316 static gint ett_lustre_obd_uuid = -1;
317 static gint ett_lustre_ldlm_res_id = -1;
318 static gint ett_lustre_ldlm_extent = -1;
319 static gint ett_lustre_ldlm_inodebits = -1;
320 static gint ett_lustre_ldlm_flock = -1;
321 static gint ett_lustre_ldlm_intent_opc = -1;
322 static gint ett_lustre_ldlm_resource_desc = -1;
323 static gint ett_lustre_ldlm_lock_desc = -1;
324 static gint ett_lustre_ldlm_request = -1;
325 static gint ett_lustre_lustre_handle = -1;
326 static gint ett_lustre_ldlm_reply = -1;
327 static gint ett_lustre_mgs_send_param = -1;
328 static gint ett_lustre_mgs_target_info = -1;
329 static gint ett_lustre_cfg_marker = -1;
330 static gint ett_lustre_llog_catid = -1;
331 static gint ett_lustre_lov_mds_md_join = -1;
332 static gint ett_lustre_llog_rec_hdr = -1;
333 static gint ett_lustre_llog_logid_rec = -1;
334 static gint ett_lustre_llog_logid = -1;
335 static gint ett_lustre_llog_rec_tail = -1;
336 static gint ett_lustre_lov_mds_md = -1;
337 static gint ett_lustre_llog_array_rec = -1;
338 static gint ett_lustre_mds_extent_desc = -1;
339 static gint ett_lustre_llog_create_rec = -1;
340 static gint ett_lustre_llog_orphan_rec = -1;
341 static gint ett_lustre_llog_unlink_rec = -1;
342 static gint ett_lustre_llog_setattr_rec = -1;
343 static gint ett_lustre_llog_size_change_rec = -1;
344 static gint ett_lustre_llog_gen_rec = -1;
345 static gint ett_lustre_llog_log_hdr = -1;
346 static gint ett_lustre_llog_cookie = -1;
347 static gint ett_lustre_llogd_body = -1;
348 static gint ett_lustre_llogd_conn_body = -1;
349 static gint ett_lustre_llog_gen = -1;
350 static gint ett_lustre_lov_user_md_join = -1;
351 static gint ett_lustre_lov_user_ost_data_join = -1;
352 static gint ett_lustre_obdo = -1;
353 static gint ett_lustre_ost_body = -1;
354 static gint ett_lustre_qunit_data = -1;
355 static gint ett_lustre_qunit_data_old2 = -1;
356 static gint ett_lustre_qunit_data_old = -1;
357 static gint ett_lustre_ldlm_lock_flags = -1 ;
359 /* -----------------------------------------------*/
360 /* Header field declarations */
361 static int hf_lustre_ptlrpc_body_pb = -1 ;
362 static int hf_lustre_mds_body = -1 ;
363 static int hf_lustre_ost_body = -1 ;
364 static int hf_lustre_obd_statfs = -1 ;
365 static int hf_lustre_obd_quotactl = -1 ;
366 static int hf_lustre_quota_adjust_qunit = -1 ;
367 static int hf_lustre_extra_padding = -1 ;
368 static int hf_lustre_ldlm_reply = -1 ;
369 static int hf_lustre_ldlm_request = -1 ;
370 static int hf_lustre_mds_rec_create = -1 ;
371 static int hf_lustre_mds_rec_link = -1 ;
372 static int hf_lustre_mds_rec_unlink = -1 ;
373 static int hf_lustre_obd_uuid = -1 ;
374 static int hf_lustre_obd_connect_data = -1 ;
375 static int hf_lustre_ldlm_intent = -1;
376 static int hf_lustre_lov_user_md_join = -1 ;
377 static int hf_lustre_obd_ioobj = -1 ;
378 static int hf_lustre_niobuf_remote = -1 ;
379 static int hf_lustre_ost_key = -1 ;
380 static int hf_lustre_nio= -1 ;
381 static int hf_lustre_ost_val= -1;
382 static int hf_lustre_llogd_body = -1;
383 static int hf_lustre_llogd_log_hdr= -1;
384 static int hf_lustre_llog_logid_rec =-1 ;
385 static int hf_lustre_llogd_chunk= -1;
386 static int hf_lustre_llogd_keyword= -1;
387 static int hf_lustre_llogd_client= -1;
388 static int hf_lustre_llogd_name= -1;
390 static int hf_lustre_mds_xattr_name = -1;
391 static int hf_lustre_lov_mds_md_v1= -1;
392 static int hf_lustre_llog_cookie= -1;
393 static int hf_lustre_mds_md_data= -1;
394 static int hf_lustre_mds_reint_opcode= -1;
395 static int hf_lustre_mds_xattr_eadata = -1;
396 static int hf_lustre_lov_mds_md_join = -1 ;
398 static int hf_lustre_reint_name= -1;
399 static int hf_lustre_reint_old_name= -1;
400 static int hf_lustre_reint_new_name= -1;
402 static int hf_lustre_mgs_target_info = -1 ;
403 static int hf_lustre_mgs_send_param = -1;
405 static int hf_lustre_ost_lvb = -1 ;
407 static int hf_lustre_ldlm_fl_lock_changed = -1;
408 static int hf_lustre_ldlm_fl_block_granted = -1;
409 static int hf_lustre_ldlm_fl_block_conv = -1;
410 static int hf_lustre_ldlm_fl_block_wait = -1;
411 static int hf_lustre_ldlm_fl_cbpending = -1;
412 static int hf_lustre_ldlm_fl_ast_sent = -1;
413 static int hf_lustre_ldlm_fl_wait_noreproc = -1;
414 static int hf_lustre_ldlm_fl_cancel = -1;
415 static int hf_lustre_ldlm_fl_replay = -1;
416 static int hf_lustre_ldlm_fl_intent_only = -1;
417 static int hf_lustre_ldlm_fl_local_only = -1;
418 static int hf_lustre_ldlm_fl_failed = -1;
419 static int hf_lustre_ldlm_fl_has_intent = -1;
420 static int hf_lustre_ldlm_fl_canceling = -1;
421 static int hf_lustre_ldlm_fl_local = -1;
422 static int hf_lustre_ldlm_fl_warn = -1;
423 static int hf_lustre_ldlm_fl_discard_data = -1;
424 static int hf_lustre_ldlm_fl_no_timeout = -1;
425 static int hf_lustre_ldlm_fl_block_nowait = -1;
426 static int hf_lustre_ldlm_fl_test_lock = -1;
427 static int hf_lustre_ldlm_fl_lvb_ready = -1;
428 static int hf_lustre_ldlm_fl_kms_ignore = -1;
429 static int hf_lustre_ldlm_fl_no_lru = -1;
430 static int hf_lustre_ldlm_fl_cancel_on_block = -1;
431 static int hf_lustre_ldlm_fl_cp_reqd = -1;
432 static int hf_lustre_ldlm_fl_cleaned = -1;
433 static int hf_lustre_ldlm_fl_atomic_cb = -1;
434 static int hf_lustre_ldlm_fl_bl_ast = -1;
435 static int hf_lustre_ldlm_fl_bl_done = -1;
436 static int hf_lustre_ldlm_fl_deny_on_contention = -1;
437 static int hf_lustre_ldlm_ast_discard_data = -1;
439 static int hf_lustre_mds_body_ctime = -1;
440 static int hf_lustre_mds_body_fid1 = -1;
441 static int hf_lustre_mds_body_nlink = -1;
442 static int hf_lustre_mds_body_flags = -1;
443 static int hf_lustre_mds_body_fsgid = -1;
444 static int hf_lustre_mds_body_mtime = -1;
445 static int hf_lustre_mds_body_uid = -1;
446 static int hf_lustre_mds_body_mode = -1;
447 static int hf_lustre_mds_body_max_cookiesize = -1;
448 static int hf_lustre_mds_body_io_epoch = -1;
449 static int hf_lustre_mds_body_ino = -1;
450 static int hf_lustre_mds_body_fid2 = -1;
451 static int hf_lustre_mds_body_padding_4 = -1;
452 static int hf_lustre_mds_body_aclsize = -1;
453 static int hf_lustre_mds_body_valid = -1;
454 static int hf_lustre_mds_body_generation = -1;
455 static int hf_lustre_mds_body_atime = -1;
456 static int hf_lustre_mds_body_handle = -1;
457 static int hf_lustre_mds_body_max_mdsize = -1;
458 static int hf_lustre_mds_body_rdev = -1;
459 static int hf_lustre_mds_body_blocks = -1;
460 static int hf_lustre_mds_body_fsuid = -1;
461 static int hf_lustre_mds_body_gid = -1;
462 static int hf_lustre_lustre_handle_cookie = -1;
463 static int hf_lustre_mds_body_suppgid = -1;
464 static int hf_lustre_mds_body_size = -1;
465 static int hf_lustre_mds_body_eadatasize = -1;
466 static int hf_lustre_mds_body_capability = -1;
468 static int hf_lustre_ptlrpc_body_pb_last_committed = -1;
469 static int hf_lustre_ptlrpc_body_pb_version = -1;
470 static int hf_lustre_lustre_msg_v1_lm_bufcount = -1;
471 static int hf_lustre_obd_ioobj_ioo_id = -1;
472 static int hf_lustre_ptlrpc_body_pb_slv = -1;
473 static int hf_lustre_lustre_msg_v1_lm_handle = -1;
474 static int hf_lustre_ost_lvb_lvb_atime = -1;
475 static int hf_lustre_ptlrpc_body_pb_timeout = -1;
476 static int hf_lustre_obd_statfs_os_bavail = -1;
477 static int hf_lustre_obd_statfs_os_bsize = -1;
478 static int hf_lustre_lustre_msg_v2_lm_repsize = -1;
479 static int hf_lustre_lov_mds_md_v1_lmm_stripe_size = -1;
480 static int hf_lustre_lustre_msg_v1_lm_last_xid = -1;
481 static int hf_lustre_ll_fid_f_type = -1;
482 static int hf_lustre_lustre_msg_v2_lm_cksum = -1;
483 static int hf_lustre_lustre_msg_v2_lm_buflens = -1;
484 static int hf_lustre_lustre_msg_v1_lm_status = -1;
485 static int hf_lustre_lustre_msg_v1_lm_type = -1;
486 static int hf_lustre_niobuf_remote_len = -1;
487 static int hf_lustre_lov_mds_md_v1_lmm_magic = -1;
488 static int hf_lustre_ptlrpc_body_pb_op_flags = -1;
489 static int hf_lustre_ost_lvb_lvb_ctime = -1;
490 static int hf_lustre_ptlrpc_body_pb_type = -1;
491 static int hf_lustre_obd_connect_data_ocd_nllg = -1;
492 static int hf_lustre_obd_connect_data_ocd_nllu = -1;
493 static int hf_lustre_ll_fid_generation = -1;
494 static int hf_lustre_ost_lvb_lvb_mtime = -1;
495 static int hf_lustre_obd_connect_data_ocd_ibits_known = -1;
496 static int hf_lustre_lustre_msg_v2_lm_padding_3 = -1;
497 static int hf_lustre_ptlrpc_body_pb_flags = -1;
498 static int hf_lustre_obd_statfs_os_spare4 = -1;
499 static int hf_lustre_obd_connect_data_ocd_group = -1;
500 static int hf_lustre_lov_ost_data_v1_l_object_gr = -1;
501 static int hf_lustre_lov_mds_md_v1_lmm_object_gr = -1;
502 static int hf_lustre_obd_connect_data_ocd_brw_size = -1;
503 static int hf_lustre_ptlrpc_body_pb_limit = -1;
504 static int hf_lustre_obd_statfs_os_maxbytes = -1;
505 static int hf_lustre_obd_statfs_os_spare5 = -1;
506 static int hf_lustre_lustre_msg_v2_lm_flags = -1;
507 static int hf_lustre_obd_statfs_os_ffree = -1;
508 static int hf_lustre_obd_statfs_os_files = -1;
509 static int hf_lustre_lov_mds_md_v1_lmm_stripe_count = -1;
510 static int hf_lustre_lustre_msg_v1_lm_flags = -1;
511 static int hf_lustre_lustre_msg_v1_lm_last_committed = -1;
512 static int hf_lustre_obd_statfs_os_spare9 = -1;
513 static int hf_lustre_obd_connect_data_ocd_index = -1;
514 static int hf_lustre_opnum = -1;
515 static int hf_lustre_lustre_msg_v1_lm_buflens = -1;
516 static int hf_lustre_obd_statfs_os_spare1 = -1;
517 static int hf_lustre_obd_statfs_os_spare8 = -1;
518 static int hf_lustre_lustre_msg_v1_lm_conn_cnt = -1;
519 static int hf_lustre_ptlrpc_body_pb_transno = -1;
520 static int hf_lustre_ptlrpc_body_pb_service_time = -1;
521 static int hf_lustre_ptlrpc_body_pb_conn_cnt = -1;
522 static int hf_lustre_ptlrpc_body_pb_opc = -1;
523 static int hf_lustre_obd_connect_data_ocd_connect_flags = -1;
524 static int hf_lustre_lov_ost_data_v1_l_object_id = -1;
525 static int hf_lustre_lov_ost_data_v1_l_ost_gen = -1;
526 static int hf_lustre_obd_statfs_os_bfree = -1;
527 static int hf_lustre_obd_connect_data_ocd_version = -1;
528 static int hf_lustre_lov_mds_md_v1_lmm_objects = -1;
529 static int hf_lustre_mds_status_req_flags = -1;
530 static int hf_lustre_obd_statfs_os_namelen = -1;
531 static int hf_lustre_obd_statfs_os_blocks = -1;
532 static int hf_lustre_lustre_msg_v2_lm_secflvr = -1;
533 static int hf_lustre_lustre_msg_v1_lm_transno = -1;
534 static int hf_lustre_lov_mds_md_v1_lmm_pattern = -1;
535 static int hf_lustre_lustre_msg_v1_lm_opc = -1;
536 static int hf_lustre_obd_connect_data_ocd_grant = -1;
537 static int hf_lustre_obd_ioobj_ioo_bufcnt = -1;
538 static int hf_lustre_lustre_msg_v1_lm_version = -1;
539 static int hf_lustre_obd_statfs_os_spare7 = -1;
540 static int hf_lustre_obd_statfs_os_fsid = -1;
541 static int hf_lustre_obd_connect_data_ocd_cksum_types = -1;
542 static int hf_lustre_ost_lvb_lvb_size = -1;
543 static int hf_lustre_obd_statfs_os_type = -1;
544 static int hf_lustre_obd_statfs_os_spare6 = -1;
545 static int hf_lustre_obd_statfs_os_state = -1;
546 static int hf_lustre_obd_statfs_os_spare3 = -1;
547 static int hf_lustre_lustre_msg_v2_lm_magic = -1;
548 static int hf_lustre_lov_mds_md_v1_lmm_object_id = -1;
549 static int hf_lustre_ptlrpc_body_pb_last_seen = -1;
550 static int hf_lustre_obd_ioobj_ioo_type = -1;
551 static int hf_lustre_ptlrpc_body_pb_last_xid = -1;
552 static int hf_lustre_ptlrpc_body_pb_status = -1;
553 static int hf_lustre_niobuf_remote_flags = -1;
554 static int hf_lustre_ll_fid_id = -1;
555 static int hf_lustre_ost_lvb_lvb_blocks = -1;
556 static int hf_lustre_lustre_msg_v2_lm_padding_2 = -1;
557 static int hf_lustre_obd_connect_data_padding1 = -1;
558 static int hf_lustre_lov_ost_data_v1_l_ost_idx = -1;
559 static int hf_lustre_obd_connect_data_padding2 = -1;
560 static int hf_lustre_obd_ioobj_ioo_gr = -1;
561 static int hf_lustre_niobuf_remote_offset=-1;
562 static int hf_lustre_mds_status_req_repbuf = -1;
563 static int hf_lustre_obd_statfs_os_spare2 = -1;
564 static int hf_lustre_lustre_msg_v2_lm_bufcount = -1;
565 static int hf_lustre_ptlrpc_body_pb_handle = -1;
566 static int hf_lustre_obd_connect_data_ocd_transno = -1;
567 static int hf_lustre_lustre_msg_v1_lm_magic = -1;
568 static int hf_lustre_llog_unlink_rec_lur_tail = -1;
569 static int hf_lustre_llog_size_change_rec_lsc_io_epoch = -1;
570 static int hf_lustre_mgs_target_info_mti_flags = -1;
571 static int hf_lustre_ldlm_reply_lock_policy_res1 = -1;
572 static int hf_lustre_mds_rec_link_lk_fsuid = -1;
573 static int hf_lustre_llogd_body_lgd_len = -1;
574 static int hf_lustre_qunit_data_old_qd_id = -1;
575 static int hf_lustre_lov_user_md_join_lmm_stripe_count = -1;
576 static int hf_lustre_llog_logid_rec_padding1 = -1;
577 static int hf_lustre_quota_adjust_qunit_padding1 = -1;
578 static int hf_lustre_llog_size_change_rec_lsc_fid = -1;
579 static int hf_lustre_llog_rec_hdr_padding = -1;
580 static int hf_lustre_mds_rec_create_cr_time = -1;
581 static int hf_lustre_mds_rec_create_cr_padding_1 = -1;
582 static int hf_lustre_obdo_o_nlink = -1;
583 static int hf_lustre_mds_rec_rename_rn_suppgid2 = -1;
584 static int hf_lustre_mds_rec_link_lk_padding_4 = -1;
585 static int hf_lustre_mds_rec_link_lk_cap = -1;
586 static int hf_lustre_ldlm_extent_gid = -1;
587 static int hf_lustre_obdo_o_uid = -1;
588 static int hf_lustre_mds_rec_create_cr_padding_5 = -1;
589 static int hf_lustre_obdo_o_valid = -1;
590 static int hf_lustre_ldlm_reply_lock_flags = -1;
591 static int hf_lustre_mds_rec_link_lk_padding_3 = -1;
592 static int hf_lustre_obdo_o_misc = -1;
593 static int hf_lustre_mds_rec_setattr_sa_suppgid = -1;
594 static int hf_lustre_mds_rec_setattr_sa_attr_flags = -1;
595 static int hf_lustre_mds_rec_rename_rn_padding_2 = -1;
596 static int hf_lustre_ldlm_request_lock_handle = -1;
597 static int hf_lustre_llog_logid_lgl_oid = -1;
598 static int hf_lustre_ldlm_inodebits_bits = -1;
599 static int hf_lustre_llog_log_hdr_llh_count = -1;
600 static int hf_lustre_mds_rec_unlink_ul_padding_4 = -1;
601 static int hf_lustre_lov_user_md_join_lmm_stripe_size = -1;
602 static int hf_lustre_llog_gen_rec_lgr_tail = -1;
603 static int hf_lustre_llog_catid_lci_padding3 = -1;
604 static int hf_lustre_qunit_data_qd_qunit = -1;
605 static int hf_lustre_mds_rec_unlink_ul_fid1 = -1;
606 static int hf_lustre_llog_setattr_rec_padding = -1;
607 static int hf_lustre_mds_rec_rename_rn_opcode = -1;
608 static int hf_lustre_mds_rec_create_cr_flags = -1;
609 static int hf_lustre_mds_rec_rename_rn_fid1 = -1;
610 static int hf_lustre_mds_extent_desc_med_start = -1;
611 static int hf_lustre_llog_cookie_lgc_lgl = -1;
612 static int hf_lustre_obd_quotactl_qc_dqinfo = -1;
613 static int hf_lustre_llog_log_hdr_llh_bitmap = -1;
614 static int hf_lustre_mds_rec_setattr_sa_size = -1;
615 static int hf_lustre_mds_rec_rename_rn_suppgid1 = -1;
616 static int hf_lustre_obd_quotactl_qc_stat = -1;
617 static int hf_lustre_qunit_data_old2_qd_id = -1;
618 static int hf_lustre_llog_logid_rec_padding2 = -1;
619 static int hf_lustre_mds_rec_unlink_ul_mode = -1;
620 static int hf_lustre_llog_orphan_rec_lor_tail = -1;
621 static int hf_lustre_llog_logid_rec_padding5 = -1;
622 static int hf_lustre_mds_rec_create_cr_fsgid = -1;
623 static int hf_lustre_mds_rec_join_jr_fid = -1;
624 static int hf_lustre_ldlm_intent_opc = -1;
625 static int hf_lustre_llog_rec_hdr_lrh_type = -1;
626 static int hf_lustre_mds_rec_link_lk_fsgid = -1;
627 static int hf_lustre_llog_rec_hdr_lrh_len = -1;
628 static int hf_lustre_llog_setattr_rec_lsr_uid = -1;
629 static int hf_lustre_lov_desc_ld_padding_1 = -1;
630 static int hf_lustre_obdo_o_padding_4 = -1;
631 static int hf_lustre_mgs_target_info_padding = -1;
632 static int hf_lustre_obd_quotactl_qc_dqblk = -1;
633 static int hf_lustre_llogd_conn_body_lgdc_gen = -1;
634 static int hf_lustre_mds_rec_create_cr_padding_2 = -1;
635 static int hf_lustre_mds_rec_setattr_sa_ctime = -1;
636 static int hf_lustre_llog_log_hdr_llh_tail = -1;
637 static int hf_lustre_obdo_o_size = -1;
638 static int hf_lustre_mds_rec_setattr_sa_cap = -1;
639 static int hf_lustre_ldlm_extent_start = -1;
640 static int hf_lustre_mds_rec_unlink_ul_opcode = -1;
641 static int hf_lustre_llog_size_change_rec_lsc_hdr = -1;
642 static int hf_lustre_mds_rec_unlink_ul_time = -1;
643 static int hf_lustre_lov_user_ost_data_join_l_extent_start = -1;
644 static int hf_lustre_lov_user_md_join_lmm_tree_id = -1;
645 static int hf_lustre_llog_create_rec_lcr_tail = -1;
646 static int hf_lustre_mds_rec_setattr_sa_mode = -1;
647 static int hf_lustre_llog_logid_lgl_ogr = -1;
648 static int hf_lustre_llog_create_rec_lcr_hdr = -1;
649 static int hf_lustre_llog_cookie_lgc_padding = -1;
650 static int hf_lustre_mds_rec_create_cr_cap = -1;
651 static int hf_lustre_qunit_data_old_qd_type = -1;
652 static int hf_lustre_ldlm_flock_blocking_export = -1;
653 static int hf_lustre_mds_rec_setattr_sa_gid = -1;
654 static int hf_lustre_lov_desc_ld_pattern = -1;
655 static int hf_lustre_qunit_data_qd_id = -1;
656 static int hf_lustre_mgs_target_info_mti_fsname = -1;
657 static int hf_lustre_lov_user_md_join_lmm_object_gr = -1;
658 static int hf_lustre_ldlm_request_lock_flags = -1;
659 static int hf_lustre_obdo_o_mode = -1;
660 static int hf_lustre_mgs_target_info_mti_svname = -1;
661 static int hf_lustre_llogd_body_lgd_logid = -1;
662 static int hf_lustre_mds_rec_create_cr_opcode = -1;
663 static int hf_lustre_llog_log_hdr_llh_size = -1;
664 static int hf_lustre_llog_create_rec_padding = -1;
665 static int hf_lustre_obdo_o_handle = -1;
666 static int hf_lustre_obdo_o_atime = -1;
667 static int hf_lustre_quota_adjust_qunit_qaq_id = -1;
668 static int hf_lustre_mds_rec_rename_rn_fid2 = -1;
669 static int hf_lustre_mds_rec_create_cr_replayfid = -1;
670 static int hf_lustre_ldlm_lock_desc_l_policy_data = -1;
671 static int hf_lustre_mds_rec_link_lk_suppgid1 = -1;
672 static int hf_lustre_obd_quotactl_qc_cmd = -1;
673 static int hf_lustre_lov_user_md_join_lmm_object_id = -1;
674 static int hf_lustre_mds_rec_rename_rn_padding_3 = -1;
675 static int hf_lustre_qunit_data_padding = -1;
676 static int hf_lustre_lov_user_md_join_lmm_objects = -1;
677 static int hf_lustre_quota_adjust_qunit_qaq_flags = -1;
678 static int hf_lustre_lov_user_ost_data_join_l_object_gr = -1;
679 static int hf_lustre_ldlm_lock_desc_l_granted_mode = -1;
680 static int hf_lustre_obdo_o_gr = -1;
681 static int hf_lustre_mds_rec_unlink_ul_padding_2 = -1;
682 static int hf_lustre_obdo_o_gid = -1;
683 static int hf_lustre_llog_catid_lci_logid = -1;
684 static int hf_lustre_llog_rec_tail_lrt_index = -1;
685 static int hf_lustre_obdo_o_mds = -1;
686 static int hf_lustre_mds_extent_desc_med_lmm = -1;
687 static int hf_lustre_lov_desc_ld_default_stripe_count = -1;
688 static int hf_lustre_ldlm_resource_desc_lr_padding = -1;
689 static int hf_lustre_cfg_marker_cm_vers = -1;
690 static int hf_lustre_mds_rec_create_cr_fid = -1;
691 static int hf_lustre_llog_unlink_rec_lur_hdr = -1;
692 static int hf_lustre_llogd_body_lgd_index = -1;
693 static int hf_lustre_cfg_marker_cm_tgtname = -1;
694 static int hf_lustre_mds_rec_unlink_ul_padding_1 = -1;
695 static int hf_lustre_mds_rec_unlink_ul_cap = -1;
696 static int hf_lustre_llog_array_rec_lmr_med = -1;
697 static int hf_lustre_llog_setattr_rec_lsr_ogen = -1;
698 static int hf_lustre_mds_rec_create_cr_padding_3 = -1;
699 static int hf_lustre_llog_logid_rec_lid_hdr = -1;
700 static int hf_lustre_lov_user_ost_data_join_l_ost_idx = -1;
701 static int hf_lustre_obdo_o_easize = -1;
702 static int hf_lustre_lov_user_md_join_lmm_array_id = -1;
703 static int hf_lustre_ost_body_oa = -1;
704 static int hf_lustre_llog_logid_rec_padding3 = -1;
705 static int hf_lustre_llog_log_hdr_llh_flags = -1;
706 static int hf_lustre_llog_setattr_rec_lsr_oid = -1;
707 static int hf_lustre_mds_rec_create_cr_mode = -1;
708 static int hf_lustre_llog_size_change_rec_padding = -1;
709 static int hf_lustre_mgs_target_info_mti_config_ver = -1;
710 static int hf_lustre_cfg_marker_cm_createtime = -1;
711 static int hf_lustre_qunit_data_old_qd_count = -1;
712 static int hf_lustre_lov_mds_md_join_lmmj_array_id = -1;
713 static int hf_lustre_mds_rec_setattr_sa_uid = -1;
714 static int hf_lustre_llog_catid_lci_padding1 = -1;
715 static int hf_lustre_mds_rec_setattr_sa_atime = -1;
716 static int hf_lustre_lov_desc_ld_active_tgt_count = -1;
717 static int hf_lustre_obdo_o_lcookie = -1;
718 static int hf_lustre_llog_gen_rec_lgr_gen = -1;
719 static int hf_lustre_lov_user_ost_data_join_l_object_id = -1;
720 static int hf_lustre_obdo_o_id = -1;
721 static int hf_lustre_mgs_target_info_mti_uuid = -1;
722 static int hf_lustre_mds_rec_link_lk_padding_1 = -1;
723 static int hf_lustre_llog_rec_hdr_lrh_index = -1;
724 static int hf_lustre_llog_setattr_rec_lsr_hdr = -1;
725 static int hf_lustre_mgs_target_info_mti_stripe_index = -1;
726 static int hf_lustre_llog_gen_conn_cnt = -1;
727 static int hf_lustre_obdo_o_padding_6 = -1;
728 static int hf_lustre_mds_rec_create_cr_suppgid = -1;
729 static int hf_lustre_llog_cookie_lgc_index = -1;
730 static int hf_lustre_lov_desc_ld_uuid = -1;
731 static int hf_lustre_llog_create_rec_lcr_oid = -1;
732 static int hf_lustre_ldlm_reply_lock_desc = -1;
733 static int hf_lustre_lov_desc_ld_padding_0 = -1;
734 static int hf_lustre_llog_unlink_rec_lur_ogen = -1;
735 static int hf_lustre_llog_orphan_rec_lor_hdr = -1;
736 static int hf_lustre_mds_rec_rename_rn_fsuid = -1;
737 static int hf_lustre_cfg_marker_cm_flags = -1;
738 static int hf_lustre_obdo_o_padding_3 = -1;
739 static int hf_lustre_lov_user_ost_data_join_l_ost_gen = -1;
740 static int hf_lustre_mds_rec_create_cr_fsuid = -1;
741 static int hf_lustre_mds_rec_unlink_ul_fsgid = -1;
742 static int hf_lustre_ldlm_request_lock_desc = -1;
743 static int hf_lustre_lov_user_md_join_lmm_pattern = -1;
744 static int hf_lustre_mds_rec_unlink_ul_fsuid = -1;
745 static int hf_lustre_mds_rec_link_lk_suppgid2 = -1;
746 static int hf_lustre_llog_orphan_rec_padding = -1;
747 static int hf_lustre_lov_user_md_join_lmm_tree_gen = -1;
748 static int hf_lustre_obdo_o_flags = -1;
749 static int hf_lustre_mgs_target_info_mti_params = -1;
750 static int hf_lustre_llog_logid_lgl_ogen = -1;
751 static int hf_lustre_mds_rec_setattr_sa_valid = -1;
752 static int hf_lustre_cfg_marker_cm_comment = -1;
753 static int hf_lustre_llog_unlink_rec_lur_oid = -1;
754 static int hf_lustre_qunit_data_qd_count = -1;
755 static int hf_lustre_mds_rec_rename_rn_padding_1 = -1;
756 static int hf_lustre_obdo_o_mtime = -1;
757 static int hf_lustre_lov_mds_md_join_lmmj_md = -1;
758 static int hf_lustre_mds_rec_rename_rn_fsgid = -1;
759 static int hf_lustre_mds_rec_rename_rn_cap = -1;
760 static int hf_lustre_obdo_o_blksize = -1;
761 static int hf_lustre_mds_rec_unlink_ul_suppgid = -1;
762 static int hf_lustre_ldlm_res_id_name = -1;
763 static int hf_lustre_mds_rec_link_lk_time = -1;
764 static int hf_lustre_ldlm_reply_lock_handle = -1;
765 static int hf_lustre_mds_rec_unlink_ul_padding_3 = -1;
766 static int hf_lustre_llogd_body_lgd_saved_index = -1;
767 static int hf_lustre_mds_rec_join_jr_headsize = -1;
768 static int hf_lustre_mds_rec_rename_rn_padding_4 = -1;
769 static int hf_lustre_qunit_data_old_qd_isblk = -1;
770 static int hf_lustre_obdo_o_blocks = -1;
771 static int hf_lustre_lov_desc_ld_padding_2 = -1;
772 static int hf_lustre_mds_rec_link_lk_fid2 = -1;
773 static int hf_lustre_llog_logid_rec_lid_tail = -1;
774 static int hf_lustre_obdo_o_grant = -1;
775 static int hf_lustre_obdo_o_padding_2 = -1;
776 static int hf_lustre_quota_adjust_qunit_qaq_iunit_sz = -1;
777 static int hf_lustre_llog_unlink_rec_padding = -1;
778 static int hf_lustre_ldlm_lock_desc_l_req_mode = -1;
779 static int hf_lustre_ldlm_extent_end = -1;
780 static int hf_lustre_llog_gen_rec_lgr_hdr = -1;
781 static int hf_lustre_llog_orphan_rec_lor_ogen = -1;
782 static int hf_lustre_lov_user_md_join_lmm_extent_count = -1;
783 static int hf_lustre_mds_extent_desc_med_len = -1;
784 static int hf_lustre_llogd_body_lgd_llh_flags = -1;
785 static int hf_lustre_llog_array_rec_lmr_hdr = -1;
786 static int hf_lustre_llog_log_hdr_llh_cat_idx = -1;
787 static int hf_lustre_llog_log_hdr_llh_bitmap_offset=-1;
788 static int hf_lustre_llog_orphan_rec_lor_oid = -1;
789 static int hf_lustre_ldlm_reply_lock_padding = -1;
790 static int hf_lustre_obd_quotactl_qc_id = -1;
791 static int hf_lustre_mds_rec_create_cr_padding_4 = -1;
792 static int hf_lustre_llog_logid_rec_padding4 = -1;
793 static int hf_lustre_mds_rec_link_lk_padding_2 = -1;
794 static int hf_lustre_llog_setattr_rec_lsr_gid = -1;
795 static int hf_lustre_lov_user_md_join_lmm_magic = -1;
796 static int hf_lustre_obd_quotactl_qc_type = -1;
797 static int hf_lustre_cfg_marker_padding = -1;
798 static int hf_lustre_mgs_target_info_mti_nids = -1;
799 static int hf_lustre_lov_user_ost_data_join_l_extent_end = -1;
800 static int hf_lustre_obdo_o_stripe_idx = -1;
801 static int hf_lustre_llogd_conn_body_lgdc_logid = -1;
802 static int hf_lustre_mds_rec_setattr_sa_fsuid = -1;
803 static int hf_lustre_ldlm_flock_blocking_pid = -1;
804 static int hf_lustre_lov_desc_ld_tgt_count = -1;
805 static int hf_lustre_llogd_body_lgd_cur_offset=-1;
806 static int hf_lustre_llog_create_rec_lcr_ogen = -1;
807 static int hf_lustre_qunit_data_old2_qd_count = -1;
808 static int hf_lustre_qunit_data_old2_qd_flags = -1;
809 static int hf_lustre_ldlm_flock_start = -1;
810 static int hf_lustre_quota_adjust_qunit_qaq_bunit_sz = -1;
811 static int hf_lustre_llog_array_rec_lmr_tail = -1;
812 static int hf_lustre_ldlm_flock_pid = -1;
813 static int hf_lustre_lov_desc_ld_default_stripe_size = -1;
814 static int hf_lustre_mds_rec_setattr_sa_opcode = -1;
815 static int hf_lustre_llog_log_hdr_llh_tgtuuid = -1;
816 static int hf_lustre_mds_rec_link_lk_fid1 = -1;
817 static int hf_lustre_cfg_marker_cm_step = -1;
818 static int hf_lustre_mgs_send_param_mgs_param = -1;
819 static int hf_lustre_llog_create_rec_lcr_fid = -1;
820 static int hf_lustre_lov_desc_ld_default_stripe_offset=-1;
821 static int hf_lustre_ldlm_resource_desc_lr_name = -1;
822 static int hf_lustre_llog_rec_tail_lrt_len = -1;
823 static int hf_lustre_mds_rec_setattr_sa_mtime = -1;
824 static int hf_lustre_llog_log_hdr_llh_timestamp = -1;
825 static int hf_lustre_llog_catid_lci_padding2 = -1;
826 static int hf_lustre_llogd_conn_body_lgdc_ctxt_idx = -1;
827 static int hf_lustre_cfg_marker_cm_canceltime = -1;
828 static int hf_lustre_mgs_target_info_mti_lustre_ver = -1;
829 static int hf_lustre_obdo_o_padding_1 = -1;
830 static int hf_lustre_qunit_data_qd_flags = -1;
831 static int hf_lustre_llog_logid_rec_lid_id = -1;
832 static int hf_lustre_obdo_o_generation = -1;
833 static int hf_lustre_llog_gen_mnt_cnt = -1;
834 static int hf_lustre_llog_size_change_rec_lsc_tail = -1;
835 static int hf_lustre_obdo_o_padding_5 = -1;
836 static int hf_lustre_ldlm_lock_desc_l_resource = -1;
837 static int hf_lustre_mds_rec_rename_rn_time = -1;
838 static int hf_lustre_mds_rec_create_cr_rdev = -1;
839 static int hf_lustre_obdo_o_fid = -1;
840 static int hf_lustre_mds_rec_setattr_sa_fid = -1;
841 static int hf_lustre_ldlm_request_lock_count = -1;
842 static int hf_lustre_ldlm_flock_end = -1;
843 static int hf_lustre_mds_rec_link_lk_opcode = -1;
844 static int hf_lustre_mgs_target_info_mti_nid_count = -1;
845 static int hf_lustre_obdo_o_ctime = -1;
846 static int hf_lustre_ldlm_reply_lock_policy_res2 = -1;
847 static int hf_lustre_llogd_body_lgd_ctxt_idx = -1;
848 static int hf_lustre_mds_rec_unlink_ul_fid2 = -1;
849 static int hf_lustre_lov_desc_ld_qos_maxage = -1;
850 static int hf_lustre_ldlm_resource_desc_lr_type = -1;
851 static int hf_lustre_llog_setattr_rec_lsr_tail = -1;
852 static int hf_lustre_llog_cookie_lgc_subsys = -1;
853 static int hf_lustre_llog_log_hdr_llh_hdr = -1;
854 static int hf_lustre_mds_rec_setattr_sa_fsgid = -1;
855 static int hf_lustre_mds_rec_setattr_sa_padding = -1;
856 static int hf_lustre_lov_mds_md_join_lmmj_extent_count = -1;
857 static int hf_lustre_llog_log_hdr_llh_reserved = -1;
859 /* Header field declarations for field from lustre_user.h*/
860 static int hf_lustre_obd_dqinfo_dqi_valid = -1;
861 static int hf_lustre_obd_dqblk_dqb_isoftlimit = -1;
862 static int hf_lustre_obd_dqblk_dqb_bhardlimit = -1;
863 static int hf_lustre_obd_dqblk_dqb_curspace = -1;
864 static int hf_lustre_obd_dqblk_dqb_itime = -1;
865 static int hf_lustre_obd_dqblk_dqb_valid = -1;
866 static int hf_lustre_obd_dqinfo_dqi_igrace = -1;
867 static int hf_lustre_obd_dqinfo_dqi_bgrace = -1;
868 static int hf_lustre_obd_dqblk_padding = -1;
869 static int hf_lustre_obd_dqblk_dqb_curinodes = -1;
870 static int hf_lustre_obd_dqblk_dqb_bsoftlimit = -1;
871 static int hf_lustre_obd_dqinfo_dqi_flags = -1;
872 static int hf_lustre_obd_dqblk_dqb_btime = -1;
873 static int hf_lustre_obd_dqblk_dqb_ihardlimit = -1;
874 static int hf_lustre_ldlm_intent_opc_open = -1 ;
875 static int hf_lustre_ldlm_intent_opc_creat = -1;
876 static int hf_lustre_ldlm_intent_opc_readdir = -1;
877 static int hf_lustre_ldlm_intent_opc_getattr = -1;
878 static int hf_lustre_ldlm_intent_opc_lookup = -1;
879 static int hf_lustre_ldlm_intent_opc_unlink = -1;
880 static int hf_lustre_ldlm_intent_opc_getxattr = -1;
881 static int hf_lustre_ldlm_intent_opc_exec = -1;
882 static int hf_lustre_ldlm_intent_opc_pin = -1;
883 static int hf_lustre_llog_hdr_llh_flag_zap_when_empty = -1;
884 static int hf_lustre_llog_hdr_llh_flag_is_cat = -1;
885 static int hf_lustre_llog_hdr_llh_flag_is_play = -1;
886 /* --------------------------------------------------------------------*/
889 /* proto declaration */
890 static gint proto_lustre = -1;
895 static int ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_) ;
896 static int lustre_dissect_element_ldlm_lock_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_);
897 static int add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_) ;
900 /* ======================================================================== */
902 const value_string lustre_ldlm_opcode[] = {
903 { IT_OPEN , "IT_OPEN "},
904 { IT_CREAT , "IT_CREAT "},
905 { IT_READDIR , "IT_READDIR "},
906 { IT_GETATTR , "IT_GETATTR "},
907 { IT_LOOKUP , "IT_LOOKUP "},
908 { IT_UNLINK , "IT_UNLINK "},
909 { IT_GETXATTR, "IT_GETXATTR"},
910 { IT_EXEC , "IT_EXEC "},
911 { IT_PIN , "IT_PIN "},
915 const value_string lustre_lov_magic[] = {
916 { LOV_MAGIC_V1, "LOV_MAGIC_V1" },
917 { LOV_MAGIC_JOIN, "LOV_MAGIC_JOIN" },
921 const value_string lustre_ldlm_flags_vals[] = {
922 {0x000001 , "LDLM_FL_LOCK_CHANGED"},
923 {0x000002 , "LDLM_FL_BLOCK_GRANTED"},
924 {0x000004 , "LDLM_FL_BLOCK_CONV"},
925 {0x000008 , "LDLM_FL_BLOCK_WAIT"},
926 {0x000010 , "LDLM_FL_CBPENDING"},
927 {0x000020 , "LDLM_FL_AST_SENT"},
928 {0x000040 , "LDLM_FL_WAIT_NOREPROC"},
929 {0x000080 , "LDLM_FL_CANCEL"},
930 {0x000100 , "LDLM_FL_REPLAY"},
931 {0x000200 , "LDLM_FL_INTENT_ONLY"},
932 {0x000400 , "LDLM_FL_LOCAL_ONLY"},
933 {0x000800 , "LDLM_FL_FAILED"},
934 {0x001000 , "LDLM_FL_HAS_INTENT"},
935 {0x002000 , "LDLM_FL_CANCELING"},
936 {0x004000 , "LDLM_FL_LOCAL"},
937 {0x008000 , "LDLM_FL_WARN"},
938 {0x010000 , "LDLM_FL_DISCARD_DATA"},
939 {0x020000 , "LDLM_FL_NO_TIMEOUT"},
940 {0x040000 , "LDLM_FL_BLOCK_NOWAIT"},
941 {0x080000 , "LDLM_FL_TEST_LOCK"},
942 {0x100000 , "LDLM_FL_LVB_READY"},
943 {0x200000 , "LDLM_FL_KMS_IGNORE"},
944 {0x400000 , "LDLM_FL_NO_LRU"},
945 {0x800000 , "LDLM_FL_CANCEL_ON_BLOCK"},
946 {0x1000000 , "LDLM_FL_CP_REQD"},
947 {0x2000000 , "LDLM_FL_CLEANED"},
948 {0x4000000 , "LDLM_FL_ATOMIC_CB"},
949 {0x10000000 , "LDLM_FL_BL_AST"},
950 {0x20000000 , "LDLM_FL_BL_DONE"},
951 {0x40000000 , "LDLM_FL_DENY_ON_CONTENTION"},
952 {0x80000000 , "LDLM_AST_DISCARD_DATA"},
956 const value_string lustre_llog_op_type[] = {
957 {LLOG_PAD_MAGIC ,"LLOG_PAD_MAGIC "},
958 {OST_SZ_REC ,"OST_SZ_REC "},
959 {OST_RAID1_REC ,"OST_RAID1_REC "},
960 {MDS_UNLINK_REC ,"MDS_UNLINK_REC "},
961 {MDS_SETATTR_REC ,"MDS_SETATTR_REC "},
962 {OBD_CFG_REC ,"OBD_CFG_REC "},
963 {PTL_CFG_REC ,"PTL_CFG_REC "},
964 {LLOG_GEN_REC ,"LLOG_GEN_REC "},
965 {LLOG_JOIN_REC ,"LLOG_JOIN_REC "},
966 {LLOG_HDR_MAGIC ,"LLOG_HDR_MAGIC "},
967 {LLOG_LOGID_MAGIC ,"LLOG_LOGID_MAGIC"},
971 const value_string lustre_llog_hdr_llh_flags[]= {
972 {LLOG_F_ZAP_WHEN_EMPTY , "LLOhdr_llh_G_F_ZAP_WHEN_EMPTY"},
973 {LLOG_F_IS_CAT , "LLOhdr_llh_G_F_IS_CAT"},
974 {LLOG_F_IS_PLAIN , "LLOG_F_IS_PLAIN"},
978 const value_string lustre_mds_flags_vals[] = {
979 {0x1,"MDS_BFLAG_UNCOMMITTED_WRITES"},
980 {0x80000000, "MDS_BFLAG_EXT_FLAGS"}, /* == EXT3_RESERVED_FL */
981 {0x00000008, "MDS_SYNC_FL "}, /* Synchronous updates */
982 {0x00000010, "MDS_IMMUTABLE_FL "}, /* Immutable file */
983 {0x00000020, "MDS_APPEND_FL "}, /* writes to file may only append */
984 {0x00000080, "MDS_NOATIME_FL "}, /* do not update atime */
985 {0x00010000, "MDS_DIRSYNC_FL "}, /* dirsync behaviour (dir only) */
989 const value_string lustre_LMTypes[] = {
990 { PTL_RPC_MSG_REQUEST, "request"},
991 { PTL_RPC_MSG_ERR , "error"},
992 { PTL_RPC_MSG_REPLY , "reply"},
996 const value_string lustre_mds_reint_t_vals[] = {
997 { REINT_SETATTR, "REINT_SETATTR" },
998 { REINT_CREATE, "REINT_CREATE" },
999 { REINT_LINK, "REINT_LINK" },
1000 { REINT_UNLINK, "REINT_UNLINK" },
1001 { REINT_RENAME, "REINT_RENAME" },
1002 { REINT_OPEN, "REINT_OPEN" },
1005 const value_string lustre_op_codes[] = {
1008 {1 , "OST_GETATTR"},
1009 {2 , "OST_SETATTR"},
1013 {6 , "OST_DESTROY"},
1014 {7 , "OST_GET_INFO"},
1015 {8 , "OST_CONNECT"},
1016 {9 , "OST_DISCONNECT"},
1020 {13 , "OST_STATFS"},
1021 {14 , "OST_SAN_READ(deprecated)"},
1022 {15 , "OST_SAN_WRITE(deprecated)"},
1024 {17 , "OST_SET_INFO"},
1025 {18 , "OST_QUOTACHECK"},
1026 {19 , "OST_QUOTACTL"},
1027 {20 , "OST_LAST_OPC"},
1029 {33 , "MDS_GETATTR"},
1030 {34 , "MDS_GETATTR_NAME"},
1033 {37 , "MDS_READPAGE"},
1034 {38 , "MDS_CONNECT"},
1035 {39 , "MDS_DISCONNECT"},
1036 {40 , "MDS_GETSTATUS"},
1037 {41 , "MDS_STATFS"},
1041 {45 , "MDS_DONE_WRITING"},
1042 {46 , "MDS_SET_INFO"},
1043 {47 , "MDS_QUOTACHECK"},
1044 {48 , "MDS_QUOTACTL"},
1045 {49 , "MDS_GETXATTR"},
1046 {50 , "MDS_SETXATTR"},
1047 {51 , "MDS_LAST_OPC"},
1049 {101 , "LDLM_ENQUEUE"},
1050 {102 , "LDLM_CONVERT"},
1051 {103 , "LDLM_CANCEL"},
1052 {104 , "LDLM_BL_CALLBACK"},
1053 {105 , "LDLM_CP_CALLBACK"},
1054 {106 , "LDLM_GL_CALLBACK"},
1055 {107 , "LDLM_LAST_OPC"},
1057 {250 , "MGS_CONNECT"},
1058 {251 , "MGS_DISCONNECT"},
1059 {252 , "MGS_EXCEPTION"},
1060 {253 , "MGS_TARGET_REG"},
1061 {254 , "MGS_TARGET_DEL"},
1062 {255 , "MGS_SET_INFO"},
1063 {256 , "MGS_LAST_OPC"},
1066 {401 , "OBD_LOG_CANCEL"},
1067 {402 , "OBD_QC_CALLBACK"},
1068 {403 , "OBD_LAST_OPC"},
1070 { 501, "LLOG_ORIGIN_HANDLE_CREATE"},
1071 { 502, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK"},
1072 { 503, "LLOG_ORIGIN_HANDLE_READ_HEADER"},
1073 { 504, "LLOG_ORIGIN_HANDLE_WRITE_REC"},
1074 { 505, "LLOG_ORIGIN_HANDLE_CLOSE"},
1075 { 506, "LLOG_ORIGIN_CONNECT"},
1076 { 507, "LLOG_CATINFO"},
1077 { 508, "LLOG_ORIGIN_HANDLE_PREV_BLOCK"},
1078 { 509, "LLOG_ORIGIN_HANDLE_DESTROY"},
1081 /*const value_string lustre_ldlm_mode_t_vals[] = {*/
1082 /* { LCK_MINMODE, "MINMODE" },*/
1083 /* { LCK_EX, "EX" },*/
1084 /* { LCK_PW, "PW" },*/
1085 /* { LCK_PR, "PR" },*/
1086 /* { LCK_CW, "CW" },*/
1087 /* { LCK_CR, "CR" },*/
1088 /* { LCK_NL, "NL" },*/
1089 /* { LCK_GROUP, "GROUP" },*/
1093 /* detailled version the information came from : http://wiki.lustre.org/images/e/e5/LustreInternals_Architecture.pdf */
1094 const value_string lustre_ldlm_mode_t_vals[] = {
1095 { LCK_MINMODE, "MINMODE" },
1096 { LCK_EX, "Exclusive" },
1097 { LCK_PW, "Protected Write" },
1098 { LCK_PR, "Protected Read" },
1099 { LCK_CW, "Concurrent Write" },
1100 { LCK_CR, "Concurrent Read" },
1102 { LCK_GROUP, "GROUP" },
1106 const value_string lustre_ldlm_type_t_vals[] = {
1107 { LDLM_PLAIN, "LDLM_PLAIN" },
1108 { LDLM_EXTENT,"LDLM_EXTENT" },
1109 { LDLM_FLOCK, "LDLM_FLOCK" },
1110 { LDLM_IBITS, "LDLM_IBITS" },
1115 const value_string lustre_llog_cmd_t_vals[] = {
1116 { LLOG_ORIGIN_HANDLE_CREATE, "LLOG_ORIGIN_HANDLE_CREATE" },
1117 { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK" },
1118 { LLOG_ORIGIN_HANDLE_READ_HEADER, "LLOG_ORIGIN_HANDLE_READ_HEADER" },
1119 { LLOG_ORIGIN_HANDLE_WRITE_REC, "LLOG_ORIGIN_HANDLE_WRITE_REC" },
1120 { LLOG_ORIGIN_HANDLE_CLOSE, "LLOG_ORIGIN_HANDLE_CLOSE" },
1121 { LLOG_ORIGIN_CONNECT, "LLOG_ORIGIN_CONNECT" },
1122 { LLOG_CATINFO, "LLOG_CATINFO" },
1123 { LLOG_ORIGIN_HANDLE_PREV_BLOCK, "LLOG_ORIGIN_HANDLE_PREV_BLOCK" },
1124 { LLOG_ORIGIN_HANDLE_DESTROY, "LLOG_ORIGIN_HANDLE_DESTROY" },
1129 /* ------------------------------------------------------------------- */
1130 /* display functions */
1131 /* ------------------------------------------------------------------- */
1132 /* display str in left corner and in COL */
1133 /* TODO : do we need to use inline here ?*/
1134 /* @gint col : the col where we add the information */
1135 inline static void display_info_str(proto_item *pi, column_info *cinfo, gint col, const gchar* str)
1138 proto_item_append_text(pi, str);
1141 if (check_col(cinfo, col))
1142 col_append_str(cinfo, col, str);
1146 * Need to be (re)written
1148 static void display_info_fstr(proto_item *pi, column_info *cinfo, gint col, const char* format, const gchar * str){
1151 //va_start(ap, format);
1152 proto_item_append_text(pi, format, str);
1157 if (check_col(cinfo, col)){
1159 // va_start(ap, format);
1160 col_append_fstr(cinfo, col, format, str);
1167 /* ------------------------------ basic dissect functions ------------------------ */
1170 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1172 proto_tree_add_item(tree, hfindex, tvb, offset, 8, TRUE);
1178 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1180 proto_tree_add_item(tree, hfindex, tvb, offset, 4, TRUE);
1186 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1188 proto_tree_add_item(tree, hfindex, tvb, offset, 1, TRUE);
1191 /* ------------------------------------------------------------------------- */
1196 /* IDL: struct lustre_handle { */
1197 /* IDL: uint64 cookie; */
1201 lustre_dissect_element_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1203 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_handle_cookie);
1209 lustre_dissect_struct_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1211 proto_item *item = NULL;
1212 proto_tree *tree = NULL;
1218 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1219 tree = proto_item_add_subtree(item, ett_lustre_lustre_handle_cookie);
1222 offset=lustre_dissect_element_handle_cookie(tvb, offset, pinfo, tree);
1225 proto_item_set_len(item, offset-old_offset);
1230 /* IDL: struct obd_connect_data { */
1231 /* IDL: uint64 ocd_connect_flags; */
1232 /* IDL: uint32 ocd_version; */
1233 /* IDL: uint32 ocd_grant; */
1234 /* IDL: uint32 ocd_index; */
1235 /* IDL: uint32 ocd_brw_size; */
1236 /* IDL: uint64 ocd_ibits_known; */
1237 /* IDL: uint32 ocd_nllu; */
1238 /* IDL: uint32 ocd_nllg; */
1239 /* IDL: uint64 ocd_transno; */
1240 /* IDL: uint32 ocd_group; */
1241 /* IDL: uint32 ocd_cksum_types; */
1242 /* IDL: uint64 padding1; */
1243 /* IDL: uint64 padding2; */
1247 lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1249 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_connect_flags);
1255 lustre_dissect_element_obd_connect_data_ocd_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1257 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_version);
1263 lustre_dissect_element_obd_connect_data_ocd_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1265 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_grant);
1271 lustre_dissect_element_obd_connect_data_ocd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1273 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_index);
1279 lustre_dissect_element_obd_connect_data_ocd_brw_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1281 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_brw_size);
1287 lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1289 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_ibits_known);
1295 lustre_dissect_element_obd_connect_data_ocd_nllu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1297 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllu);
1303 lustre_dissect_element_obd_connect_data_ocd_nllg(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1305 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllg);
1311 lustre_dissect_element_obd_connect_data_ocd_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1313 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_transno);
1319 lustre_dissect_element_obd_connect_data_ocd_group(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1321 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_group);
1327 lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1329 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_cksum_types);
1335 lustre_dissect_element_obd_connect_data_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1337 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding1);
1343 lustre_dissect_element_obd_connect_data_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1345 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding2);
1351 lustre_dissect_struct_obd_connect_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1353 proto_item *item = NULL;
1354 proto_tree *tree = NULL;
1362 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1363 tree = proto_item_add_subtree(item, ett_lustre_obd_connect_data);
1366 offset=lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvb, offset, pinfo, tree);
1368 offset=lustre_dissect_element_obd_connect_data_ocd_version(tvb, offset, pinfo, tree);
1370 offset=lustre_dissect_element_obd_connect_data_ocd_grant(tvb, offset, pinfo, tree);
1372 offset=lustre_dissect_element_obd_connect_data_ocd_index(tvb, offset, pinfo, tree);
1374 offset=lustre_dissect_element_obd_connect_data_ocd_brw_size(tvb, offset, pinfo, tree);
1376 offset=lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvb, offset, pinfo, tree);
1378 offset=lustre_dissect_element_obd_connect_data_ocd_nllu(tvb, offset, pinfo, tree);
1380 offset=lustre_dissect_element_obd_connect_data_ocd_nllg(tvb, offset, pinfo, tree);
1382 offset=lustre_dissect_element_obd_connect_data_ocd_transno(tvb, offset, pinfo, tree);
1384 offset=lustre_dissect_element_obd_connect_data_ocd_group(tvb, offset, pinfo, tree);
1386 offset=lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvb, offset, pinfo, tree);
1388 offset=lustre_dissect_element_obd_connect_data_padding1(tvb, offset, pinfo, tree);
1390 offset=lustre_dissect_element_obd_connect_data_padding2(tvb, offset, pinfo, tree);
1393 proto_item_set_len(item, offset-old_offset);
1399 /* IDL: struct lov_ost_data_v1 { */
1400 /* IDL: uint64 l_object_id; */
1401 /* IDL: uint64 l_object_gr; */
1402 /* IDL: uint32 l_ost_gen; */
1403 /* IDL: uint32 l_ost_idx; */
1407 lustre_dissect_element_lov_ost_data_v1_l_object_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1409 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_id);
1415 lustre_dissect_element_lov_ost_data_v1_l_object_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1417 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_gr);
1423 lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1425 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_gen);
1431 lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1433 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_idx);
1439 lustre_dissect_struct_lov_ost_data_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1441 proto_item *item = NULL;
1442 proto_tree *tree = NULL;
1450 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1451 tree = proto_item_add_subtree(item, ett_lustre_lov_ost_data_v1);
1454 offset=lustre_dissect_element_lov_ost_data_v1_l_object_id(tvb, offset, pinfo, tree);
1456 offset=lustre_dissect_element_lov_ost_data_v1_l_object_gr(tvb, offset, pinfo, tree);
1458 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvb, offset, pinfo, tree);
1460 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvb, offset, pinfo, tree);
1463 proto_item_set_len(item, offset-old_offset);
1468 /* IDL: struct lov_mds_md_v1 { */
1469 /* IDL: uint32 lmm_magic; */
1470 /* IDL: uint32 lmm_pattern; */
1471 /* IDL: uint64 lmm_object_id; */
1472 /* IDL: uint64 lmm_object_gr; */
1473 /* IDL: uint32 lmm_stripe_size; */
1474 /* IDL: uint32 lmm_stripe_count; */
1475 /* IDL: struct lov_ost_data_v1 { */
1476 /* IDL: } lmm_objects[0]; <-- en fait on en a lmm_stripe_count */
1480 lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1482 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_magic);
1488 lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1490 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_pattern);
1496 lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1498 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_id);
1504 lustre_dissect_element_lov_mds_md_v1_lmm_object_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1506 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_gr);
1512 lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1514 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_size);
1520 lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1522 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_count);
1528 lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1530 offset=lustre_dissect_struct_lov_ost_data_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1_lmm_objects);
1535 lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int num)
1538 /*g_print("num = %d", num);*/
1539 for (i = 0; i < num; i++){
1540 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvb, offset, pinfo, tree);
1549 lustre_dissect_struct_lov_mds_md_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1551 proto_item *item = NULL;
1552 proto_tree *tree = NULL;
1555 guint32 stripe_count ;
1561 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1562 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_v1);
1565 offset=lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvb, offset, pinfo, tree);
1567 offset=lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvb, offset, pinfo, tree);
1569 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvb, offset, pinfo, tree);
1571 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_gr(tvb, offset, pinfo, tree);
1573 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvb, offset, pinfo, tree);
1575 stripe_count = tvb_get_letohl(tvb,offset);
1576 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvb, offset, pinfo, tree);
1578 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvb, offset, pinfo, tree, stripe_count);
1581 proto_item_set_len(item, offset-old_offset);
1588 /* IDL: struct obd_statfs { */
1589 /* IDL: uint64 os_type; */
1590 /* IDL: uint64 os_blocks; */
1591 /* IDL: uint64 os_bfree; */
1592 /* IDL: uint64 os_bavail; */
1593 /* IDL: uint64 os_files; */
1594 /* IDL: uint64 os_ffree; */
1595 /* IDL: uint8 os_fsid[40]; */
1596 /* IDL: uint32 os_bsize; */
1597 /* IDL: uint32 os_namelen; */
1598 /* IDL: uint64 os_maxbytes; */
1599 /* IDL: uint32 os_state; */
1600 /* IDL: uint32 os_spare1; */
1601 /* IDL: uint32 os_spare2; */
1602 /* IDL: uint32 os_spare3; */
1603 /* IDL: uint32 os_spare4; */
1604 /* IDL: uint32 os_spare5; */
1605 /* IDL: uint32 os_spare6; */
1606 /* IDL: uint32 os_spare7; */
1607 /* IDL: uint32 os_spare8; */
1608 /* IDL: uint32 os_spare9; */
1612 lustre_dissect_element_obd_statfs_os_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1614 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_type);
1620 lustre_dissect_element_obd_statfs_os_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1622 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_blocks);
1628 lustre_dissect_element_obd_statfs_os_bfree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1630 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bfree);
1636 lustre_dissect_element_obd_statfs_os_bavail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1638 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bavail);
1644 lustre_dissect_element_obd_statfs_os_files(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1646 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_files);
1652 lustre_dissect_element_obd_statfs_os_ffree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1654 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_ffree);
1660 lustre_dissect_element_obd_statfs_os_fsid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1662 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_fsid);
1668 lustre_dissect_element_obd_statfs_os_fsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1671 for (i = 0; i < 40; i++)
1672 offset=lustre_dissect_element_obd_statfs_os_fsid_(tvb, offset, pinfo, tree);
1680 lustre_dissect_element_obd_statfs_os_bsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1682 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bsize);
1688 lustre_dissect_element_obd_statfs_os_namelen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1690 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_namelen);
1696 lustre_dissect_element_obd_statfs_os_maxbytes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1698 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_maxbytes);
1704 lustre_dissect_element_obd_statfs_os_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1706 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_state);
1712 lustre_dissect_element_obd_statfs_os_spare1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1714 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare1);
1720 lustre_dissect_element_obd_statfs_os_spare2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1722 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare2);
1728 lustre_dissect_element_obd_statfs_os_spare3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1730 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare3);
1736 lustre_dissect_element_obd_statfs_os_spare4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1738 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare4);
1744 lustre_dissect_element_obd_statfs_os_spare5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1746 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare5);
1752 lustre_dissect_element_obd_statfs_os_spare6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1754 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare6);
1760 lustre_dissect_element_obd_statfs_os_spare7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1762 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare7);
1768 lustre_dissect_element_obd_statfs_os_spare8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1770 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare8);
1776 lustre_dissect_element_obd_statfs_os_spare9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1778 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare9);
1784 lustre_dissect_struct_obd_statfs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1786 proto_item *item = NULL;
1787 proto_tree *tree = NULL;
1795 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1796 tree = proto_item_add_subtree(item, ett_lustre_obd_statfs);
1799 offset=lustre_dissect_element_obd_statfs_os_type(tvb, offset, pinfo, tree);
1801 offset=lustre_dissect_element_obd_statfs_os_blocks(tvb, offset, pinfo, tree);
1803 offset=lustre_dissect_element_obd_statfs_os_bfree(tvb, offset, pinfo, tree);
1805 offset=lustre_dissect_element_obd_statfs_os_bavail(tvb, offset, pinfo, tree);
1807 offset=lustre_dissect_element_obd_statfs_os_files(tvb, offset, pinfo, tree);
1809 offset=lustre_dissect_element_obd_statfs_os_ffree(tvb, offset, pinfo, tree);
1811 offset=lustre_dissect_element_obd_statfs_os_fsid(tvb, offset, pinfo, tree);
1813 offset=lustre_dissect_element_obd_statfs_os_bsize(tvb, offset, pinfo, tree);
1815 offset=lustre_dissect_element_obd_statfs_os_namelen(tvb, offset, pinfo, tree);
1817 offset=lustre_dissect_element_obd_statfs_os_maxbytes(tvb, offset, pinfo, tree);
1819 offset=lustre_dissect_element_obd_statfs_os_state(tvb, offset, pinfo, tree);
1821 offset=lustre_dissect_element_obd_statfs_os_spare1(tvb, offset, pinfo, tree);
1823 offset=lustre_dissect_element_obd_statfs_os_spare2(tvb, offset, pinfo, tree);
1825 offset=lustre_dissect_element_obd_statfs_os_spare3(tvb, offset, pinfo, tree);
1827 offset=lustre_dissect_element_obd_statfs_os_spare4(tvb, offset, pinfo, tree);
1829 offset=lustre_dissect_element_obd_statfs_os_spare5(tvb, offset, pinfo, tree);
1831 offset=lustre_dissect_element_obd_statfs_os_spare6(tvb, offset, pinfo, tree);
1833 offset=lustre_dissect_element_obd_statfs_os_spare7(tvb, offset, pinfo, tree);
1835 offset=lustre_dissect_element_obd_statfs_os_spare8(tvb, offset, pinfo, tree);
1837 offset=lustre_dissect_element_obd_statfs_os_spare9(tvb, offset, pinfo, tree);
1840 proto_item_set_len(item, offset-old_offset);
1845 /* IDL: struct obd_ioobj { */
1846 /* IDL: uint64 ioo_id; */
1847 /* IDL: uint64 ioo_gr; */
1848 /* IDL: uint32 ioo_type; */
1849 /* IDL: uint32 ioo_bufcnt; */
1853 lustre_dissect_element_obd_ioobj_ioo_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1855 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_id);
1861 lustre_dissect_element_obd_ioobj_ioo_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1863 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_gr);
1869 lustre_dissect_element_obd_ioobj_ioo_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1871 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_type);
1877 lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1879 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_bufcnt);
1885 lustre_dissect_struct_obd_ioobj(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1887 proto_item *item = NULL;
1888 proto_tree *tree = NULL;
1896 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1897 tree = proto_item_add_subtree(item, ett_lustre_obd_ioobj);
1900 offset=lustre_dissect_element_obd_ioobj_ioo_id(tvb, offset, pinfo, tree);
1902 offset=lustre_dissect_element_obd_ioobj_ioo_gr(tvb, offset, pinfo, tree);
1904 offset=lustre_dissect_element_obd_ioobj_ioo_type(tvb, offset, pinfo, tree);
1906 offset=lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvb, offset, pinfo, tree);
1909 proto_item_set_len(item, offset-old_offset);
1914 /* IDL: struct niobuf_remote { */
1915 /* IDL: uint64 offset; */
1916 /* IDL: uint32 len; */
1917 /* IDL: uint32 flags; */
1921 lustre_dissect_element_niobuf_remote_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1923 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_offset);
1929 lustre_dissect_element_niobuf_remote_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1931 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_len);
1937 lustre_dissect_element_niobuf_remote_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1939 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_flags);
1945 lustre_dissect_struct_niobuf_remote(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
1947 proto_item *item = NULL;
1948 proto_tree *tree = NULL;
1956 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1957 tree = proto_item_add_subtree(item, ett_lustre_niobuf_remote);
1960 offset=lustre_dissect_element_niobuf_remote_offset(tvb, offset, pinfo, tree);
1962 offset=lustre_dissect_element_niobuf_remote_len(tvb, offset, pinfo, tree);
1964 offset=lustre_dissect_element_niobuf_remote_flags(tvb, offset, pinfo, tree);
1967 proto_item_set_len(item, offset-old_offset);
1972 /* IDL: struct ost_lvb { */
1973 /* IDL: uint64 lvb_size; */
1974 /* IDL: uint64 lvb_mtime; */
1975 /* IDL: uint64 lvb_atime; */
1976 /* IDL: uint64 lvb_ctime; */
1977 /* IDL: uint64 lvb_blocks; */
1981 lustre_dissect_element_ost_lvb_lvb_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1983 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_size);
1989 lustre_dissect_element_ost_lvb_lvb_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1993 ns.secs = tvb_get_letohl(tvb,offset);
1995 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_mtime, tvb, offset, 8, &ns );
2001 lustre_dissect_element_ost_lvb_lvb_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2005 ns.secs = tvb_get_letohl(tvb,offset);
2007 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_atime, tvb, offset, 8, &ns );
2015 lustre_dissect_element_ost_lvb_lvb_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2019 ns.secs = tvb_get_letohl(tvb,offset);
2021 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_ctime, tvb, offset, 8, &ns );
2029 lustre_dissect_element_ost_lvb_lvb_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2031 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_blocks);
2037 lustre_dissect_struct_ost_lvb(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2039 proto_item *item = NULL;
2040 proto_tree *tree = NULL;
2048 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2049 tree = proto_item_add_subtree(item, ett_lustre_ost_lvb);
2052 offset=lustre_dissect_element_ost_lvb_lvb_size(tvb, offset, pinfo, tree);
2054 offset=lustre_dissect_element_ost_lvb_lvb_mtime(tvb, offset, pinfo, tree);
2056 offset=lustre_dissect_element_ost_lvb_lvb_atime(tvb, offset, pinfo, tree);
2058 offset=lustre_dissect_element_ost_lvb_lvb_ctime(tvb, offset, pinfo, tree);
2060 offset=lustre_dissect_element_ost_lvb_lvb_blocks(tvb, offset, pinfo, tree);
2063 proto_item_set_len(item, offset-old_offset);
2069 /* IDL: struct ll_fid { */
2070 /* IDL: uint64 id; */
2071 /* IDL: uint32 generation; */
2072 /* IDL: uint32 f_type; */
2076 lustre_dissect_element_ll_fid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2078 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ll_fid_id);
2084 lustre_dissect_element_ll_fid_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2086 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_generation);
2092 lustre_dissect_element_ll_fid_f_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2094 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_f_type);
2100 lustre_dissect_struct_ll_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2102 proto_item *item = NULL;
2103 proto_tree *tree = NULL;
2111 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2112 tree = proto_item_add_subtree(item, ett_lustre_ll_fid);
2115 offset=lustre_dissect_element_ll_fid_id(tvb, offset, pinfo, tree);
2117 offset=lustre_dissect_element_ll_fid_generation(tvb, offset, pinfo, tree);
2119 offset=lustre_dissect_element_ll_fid_f_type(tvb, offset, pinfo, tree);
2122 proto_item_set_len(item, offset-old_offset);
2127 /* IDL: struct mds_status_req { */
2128 /* IDL: uint32 flags; */
2129 /* IDL: uint32 repbuf; */
2133 lustre_dissect_element_mds_status_req_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2135 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_status_req_flags);
2141 lustre_dissect_element_mds_status_req_repbuf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2143 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_status_req_repbuf);
2149 lustre_dissect_struct_mds_status_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2151 proto_item *item = NULL;
2152 proto_tree *tree = NULL;
2159 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2160 tree = proto_item_add_subtree(item, ett_lustre_mds_status_req);
2163 offset=lustre_dissect_element_mds_status_req_flags(tvb, offset, pinfo, tree);
2165 offset=lustre_dissect_element_mds_status_req_repbuf(tvb, offset, pinfo, tree);
2168 proto_item_set_len(item, offset-old_offset);
2173 /* IDL: struct mds_body { */
2174 /* IDL: struct ll_fid { */
2176 /* IDL: struct ll_fid { */
2178 /* IDL: struct lustre_handle { */
2179 /* IDL: } handle; */
2180 /* IDL: uint64 valid; */
2181 /* IDL: uint64 size; */
2182 /* IDL: uint64 mtime; */
2183 /* IDL: uint64 atime; */
2184 /* IDL: uint64 ctime; */
2185 /* IDL: uint64 blocks; */
2186 /* IDL: uint64 io_epoch; */
2187 /* IDL: uint64 ino; */
2188 /* IDL: uint32 fsuid; */
2189 /* IDL: uint32 fsgid; */
2190 /* IDL: uint32 capability; */
2191 /* IDL: uint32 mode; */
2192 /* IDL: uint32 uid; */
2193 /* IDL: uint32 gid; */
2194 /* IDL: uint32 flags; */
2195 /* IDL: uint32 rdev; */
2196 /* IDL: uint32 nlink; */
2197 /* IDL: uint32 generation; */
2198 /* IDL: uint32 suppgid; */
2199 /* IDL: uint32 eadatasize; */
2200 /* IDL: uint32 aclsize; */
2201 /* IDL: uint32 max_mdsize; */
2202 /* IDL: uint32 max_cookiesize; */
2203 /* IDL: uint32 padding_4; */
2207 lustre_dissect_element_mds_body_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2209 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_body_fid1);
2214 lustre_dissect_element_mds_body_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2216 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_body_fid2);
2221 lustre_dissect_element_mds_body_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2223 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mds_body_handle);
2229 lustre_dissect_element_mds_body_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2231 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_body_valid);
2237 lustre_dissect_element_mds_body_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2239 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_body_size);
2245 lustre_dissect_element_mds_body_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2249 ns.secs = tvb_get_letohl(tvb,offset);
2251 proto_tree_add_time(tree, hf_lustre_mds_body_mtime, tvb, offset, 8, &ns );
2257 lustre_dissect_element_mds_body_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2261 ns.secs = tvb_get_letohl(tvb,offset);
2263 proto_tree_add_time(tree, hf_lustre_mds_body_atime, tvb, offset, 8, &ns );
2270 lustre_dissect_element_mds_body_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2274 ns.secs = tvb_get_letohl(tvb,offset);
2276 proto_tree_add_time(tree, hf_lustre_mds_body_ctime, tvb, offset, 8, &ns );
2282 lustre_dissect_element_mds_body_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2284 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_body_blocks);
2290 lustre_dissect_element_mds_body_io_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2292 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_body_io_epoch);
2298 lustre_dissect_element_mds_body_ino(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2300 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_body_ino);
2306 lustre_dissect_element_mds_body_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2308 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_fsuid);
2314 lustre_dissect_element_mds_body_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2316 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_fsgid);
2322 lustre_dissect_element_mds_body_capability(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2324 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_capability);
2330 lustre_dissect_element_mds_body_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2332 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_mode);
2338 lustre_dissect_element_mds_body_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2340 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_uid);
2346 lustre_dissect_element_mds_body_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2348 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_gid);
2354 lustre_dissect_element_mds_body_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2356 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_flags);
2362 lustre_dissect_element_mds_body_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2364 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_rdev);
2370 lustre_dissect_element_mds_body_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2372 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_nlink);
2378 lustre_dissect_element_mds_body_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2380 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_generation);
2386 lustre_dissect_element_mds_body_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2388 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_suppgid);
2394 lustre_dissect_element_mds_body_eadatasize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2396 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_eadatasize);
2402 lustre_dissect_element_mds_body_aclsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2404 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_aclsize);
2410 lustre_dissect_element_mds_body_max_mdsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2412 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_max_mdsize);
2418 lustre_dissect_element_mds_body_max_cookiesize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2420 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_max_cookiesize);
2426 lustre_dissect_element_mds_body_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2428 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_body_padding_4);
2434 lustre_dissect_struct_mds_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2436 proto_item *item = NULL;
2437 proto_tree *tree = NULL;
2444 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2445 tree = proto_item_add_subtree(item, ett_lustre_mds_body);
2448 offset=lustre_dissect_element_mds_body_fid1(tvb, offset, pinfo, tree);
2450 offset=lustre_dissect_element_mds_body_fid2(tvb, offset, pinfo, tree);
2452 offset=lustre_dissect_element_mds_body_handle(tvb, offset, pinfo, tree);
2454 offset=lustre_dissect_element_mds_body_valid(tvb, offset, pinfo, tree);
2456 offset=lustre_dissect_element_mds_body_size(tvb, offset, pinfo, tree);
2458 offset=lustre_dissect_element_mds_body_mtime(tvb, offset, pinfo, tree);
2460 offset=lustre_dissect_element_mds_body_atime(tvb, offset, pinfo, tree);
2462 offset=lustre_dissect_element_mds_body_ctime(tvb, offset, pinfo, tree);
2464 offset=lustre_dissect_element_mds_body_blocks(tvb, offset, pinfo, tree);
2466 offset=lustre_dissect_element_mds_body_io_epoch(tvb, offset, pinfo, tree);
2468 offset=lustre_dissect_element_mds_body_ino(tvb, offset, pinfo, tree);
2470 offset=lustre_dissect_element_mds_body_fsuid(tvb, offset, pinfo, tree);
2472 offset=lustre_dissect_element_mds_body_fsgid(tvb, offset, pinfo, tree);
2474 offset=lustre_dissect_element_mds_body_capability(tvb, offset, pinfo, tree);
2476 offset=lustre_dissect_element_mds_body_mode(tvb, offset, pinfo, tree);
2478 offset=lustre_dissect_element_mds_body_uid(tvb, offset, pinfo, tree);
2480 offset=lustre_dissect_element_mds_body_gid(tvb, offset, pinfo, tree);
2482 offset=lustre_dissect_element_mds_body_flags(tvb, offset, pinfo, tree);
2484 offset=lustre_dissect_element_mds_body_rdev(tvb, offset, pinfo, tree);
2486 offset=lustre_dissect_element_mds_body_nlink(tvb, offset, pinfo, tree);
2488 offset=lustre_dissect_element_mds_body_generation(tvb, offset, pinfo, tree);
2490 offset=lustre_dissect_element_mds_body_suppgid(tvb, offset, pinfo, tree);
2492 offset=lustre_dissect_element_mds_body_eadatasize(tvb, offset, pinfo, tree);
2494 offset=lustre_dissect_element_mds_body_aclsize(tvb, offset, pinfo, tree);
2496 offset=lustre_dissect_element_mds_body_max_mdsize(tvb, offset, pinfo, tree);
2498 offset=lustre_dissect_element_mds_body_max_cookiesize(tvb, offset, pinfo, tree);
2500 offset=lustre_dissect_element_mds_body_padding_4(tvb, offset, pinfo, tree);
2503 proto_item_set_len(item, offset-old_offset);
2508 /* IDL: struct obd_dqinfo { */
2509 /* IDL: uint64 dqi_bgrace; */
2510 /* IDL: uint64 dqi_igrace; */
2511 /* IDL: uint32 dqi_flags; */
2512 /* IDL: uint32 dqi_valid; */
2516 lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2518 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_bgrace);
2524 lustre_dissect_element_obd_dqinfo_dqi_igrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2526 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_igrace);
2532 lustre_dissect_element_obd_dqinfo_dqi_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2534 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_flags);
2540 lustre_dissect_element_obd_dqinfo_dqi_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2542 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_valid);
2548 lustre_dissect_struct_obd_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2550 proto_item *item = NULL;
2551 proto_tree *tree = NULL;
2556 old_offset = offset;
2559 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2560 tree = proto_item_add_subtree(item, ett_lustre_obd_dqinfo);
2563 offset = lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvb, offset, pinfo, tree);
2565 offset = lustre_dissect_element_obd_dqinfo_dqi_igrace(tvb, offset, pinfo, tree);
2567 offset = lustre_dissect_element_obd_dqinfo_dqi_flags(tvb, offset, pinfo, tree);
2569 offset = lustre_dissect_element_obd_dqinfo_dqi_valid(tvb, offset, pinfo, tree);
2572 proto_item_set_len(item, offset-old_offset);
2577 /* IDL: struct obd_dqblk { */
2578 /* IDL: uint64 dqb_bhardlimit; */
2579 /* IDL: uint64 dqb_bsoftlimit; */
2580 /* IDL: uint64 dqb_curspace; */
2581 /* IDL: uint64 dqb_ihardlimit; */
2582 /* IDL: uint64 dqb_isoftlimit; */
2583 /* IDL: uint64 dqb_curinodes; */
2584 /* IDL: uint64 dqb_btime; */
2585 /* IDL: uint64 dqb_itime; */
2586 /* IDL: uint32 dqb_valid; */
2587 /* IDL: uint32 padding; */
2591 lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2593 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bhardlimit);
2599 lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2601 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bsoftlimit);
2607 lustre_dissect_element_obd_dqblk_dqb_curspace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2609 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curspace);
2615 lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2617 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_ihardlimit);
2623 lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2625 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_isoftlimit);
2631 lustre_dissect_element_obd_dqblk_dqb_curinodes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2633 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curinodes);
2639 lustre_dissect_element_obd_dqblk_dqb_btime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2644 ns.secs = tvb_get_letohl(tvb,offset);
2646 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_btime, tvb, offset, 8, &ns );
2652 lustre_dissect_element_obd_dqblk_dqb_itime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2656 ns.secs = tvb_get_letohl(tvb,offset);
2658 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_itime, tvb, offset, 8, &ns );
2665 lustre_dissect_element_obd_dqblk_dqb_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2667 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_valid);
2673 lustre_dissect_element_obd_dqblk_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2675 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_padding);
2681 lustre_dissect_struct_obd_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2683 proto_item *item = NULL;
2684 proto_tree *tree = NULL;
2689 old_offset = offset;
2692 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2693 tree = proto_item_add_subtree(item, ett_lustre_obd_dqblk);
2696 offset = lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvb, offset, pinfo, tree);
2698 offset = lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvb, offset, pinfo, tree);
2700 offset = lustre_dissect_element_obd_dqblk_dqb_curspace(tvb, offset, pinfo, tree);
2702 offset = lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvb, offset, pinfo, tree);
2704 offset = lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvb, offset, pinfo, tree);
2706 offset = lustre_dissect_element_obd_dqblk_dqb_curinodes(tvb, offset, pinfo, tree);
2708 offset = lustre_dissect_element_obd_dqblk_dqb_btime(tvb, offset, pinfo, tree);
2710 offset = lustre_dissect_element_obd_dqblk_dqb_itime(tvb, offset, pinfo, tree);
2712 offset = lustre_dissect_element_obd_dqblk_dqb_valid(tvb, offset, pinfo, tree);
2714 offset = lustre_dissect_element_obd_dqblk_padding(tvb, offset, pinfo, tree);
2717 proto_item_set_len(item, offset-old_offset);
2723 /* IDL: struct obd_quotactl { */
2724 /* IDL: uint32 qc_cmd; */
2725 /* IDL: uint32 qc_type; */
2726 /* IDL: uint32 qc_id; */
2727 /* IDL: uint32 qc_stat; */
2728 /* IDL: struct obd_dqinfo { */
2729 /* IDL: } qc_dqinfo; */
2730 /* IDL: struct obd_dqblk { */
2731 /* IDL: } qc_dqblk; */
2735 lustre_dissect_element_obd_quotactl_qc_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2737 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_cmd);
2743 lustre_dissect_element_obd_quotactl_qc_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2745 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_type);
2751 lustre_dissect_element_obd_quotactl_qc_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2753 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_id);
2759 lustre_dissect_element_obd_quotactl_qc_stat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2761 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_stat);
2769 lustre_dissect_element_obd_quotactl_qc_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2771 offset=lustre_dissect_struct_obd_dqblk(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqblk);
2776 lustre_dissect_element_obd_quotactl_qc_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2778 offset=lustre_dissect_struct_obd_dqinfo(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqinfo);
2783 lustre_dissect_struct_obd_quotactl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2785 proto_item *item = NULL;
2786 proto_tree *tree = NULL;
2792 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2793 tree = proto_item_add_subtree(item, ett_lustre_obd_quotactl);
2796 offset=lustre_dissect_element_obd_quotactl_qc_cmd(tvb, offset, pinfo, tree);
2798 offset=lustre_dissect_element_obd_quotactl_qc_type(tvb, offset, pinfo, tree);
2800 offset=lustre_dissect_element_obd_quotactl_qc_id(tvb, offset, pinfo, tree);
2802 offset=lustre_dissect_element_obd_quotactl_qc_stat(tvb, offset, pinfo, tree);
2804 offset=lustre_dissect_element_obd_quotactl_qc_dqinfo(tvb, offset, pinfo, tree);
2806 offset=lustre_dissect_element_obd_quotactl_qc_dqblk(tvb, offset, pinfo, tree);
2809 proto_item_set_len(item, offset-old_offset);
2815 /* IDL: struct quota_adjust_qunit { */
2816 /* IDL: uint32 qaq_flags; */
2817 /* IDL: uint32 qaq_id; */
2818 /* IDL: uint64 qaq_bunit_sz; */
2819 /* IDL: uint64 qaq_iunit_sz; */
2820 /* IDL: uint64 padding1; */
2824 lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2826 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_flags);
2832 lustre_dissect_element_quota_adjust_qunit_qaq_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2834 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_id);
2840 lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2842 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_bunit_sz);
2848 lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2850 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_iunit_sz);
2856 lustre_dissect_element_quota_adjust_qunit_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2858 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_padding1);
2864 lustre_dissect_struct_quota_adjust_qunit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2866 proto_item *item = NULL;
2867 proto_tree *tree = NULL;
2875 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2876 tree = proto_item_add_subtree(item, ett_lustre_quota_adjust_qunit);
2879 offset=lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvb, offset, pinfo, tree);
2881 offset=lustre_dissect_element_quota_adjust_qunit_qaq_id(tvb, offset, pinfo, tree);
2883 offset=lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvb, offset, pinfo, tree);
2885 offset=lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvb, offset, pinfo, tree);
2887 offset=lustre_dissect_element_quota_adjust_qunit_padding1(tvb, offset, pinfo, tree);
2890 proto_item_set_len(item, offset-old_offset);
2895 /* I don't find where this struct appear on wire.. need to search mdc_setattr_pack() */
2896 /* IDL: struct mds_rec_setattr { */
2897 /* IDL: uint32 sa_opcode; */
2898 /* IDL: uint32 sa_fsuid; */
2899 /* IDL: uint32 sa_fsgid; */
2900 /* IDL: uint32 sa_cap; */
2901 /* IDL: uint32 sa_suppgid; */
2902 /* IDL: uint32 sa_mode; */
2903 /* IDL: struct ll_fid { */
2904 /* IDL: } sa_fid; */
2905 /* IDL: uint64 sa_valid; */
2906 /* IDL: uint64 sa_size; */
2907 /* IDL: uint64 sa_mtime; */
2908 /* IDL: uint64 sa_atime; */
2909 /* IDL: uint64 sa_ctime; */
2910 /* IDL: uint32 sa_uid; */
2911 /* IDL: uint32 sa_gid; */
2912 /* IDL: uint32 sa_attr_flags; */
2913 /* IDL: uint32 sa_padding; */
2917 lustre_dissect_element_mds_rec_setattr_sa_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2919 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_opcode);
2925 lustre_dissect_element_mds_rec_setattr_sa_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2927 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_fsuid);
2933 lustre_dissect_element_mds_rec_setattr_sa_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2935 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_fsgid);
2941 lustre_dissect_element_mds_rec_setattr_sa_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2943 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_cap);
2949 lustre_dissect_element_mds_rec_setattr_sa_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2951 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_suppgid);
2957 lustre_dissect_element_mds_rec_setattr_sa_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2959 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_mode);
2965 lustre_dissect_element_mds_rec_setattr_sa_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2967 //offset=lustre_dissect_struct_HASH(0x85af8d0)(tvb,offset,pinfo,tree,hf_lustre_mds_rec_setattr_sa_fid);
2973 lustre_dissect_element_mds_rec_setattr_sa_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2975 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_valid);
2981 lustre_dissect_element_mds_rec_setattr_sa_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2983 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_size);
2989 lustre_dissect_element_mds_rec_setattr_sa_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2994 ns.secs = tvb_get_letohl(tvb,offset);
2996 proto_tree_add_time(tree, hf_lustre_mds_rec_setattr_sa_mtime, tvb, offset, 8, &ns );
3002 lustre_dissect_element_mds_rec_setattr_sa_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3006 ns.secs = tvb_get_letohl(tvb,offset);
3008 proto_tree_add_time(tree, hf_lustre_mds_rec_setattr_sa_atime, tvb, offset, 8, &ns );
3014 lustre_dissect_element_mds_rec_setattr_sa_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3018 ns.secs = tvb_get_letohl(tvb,offset);
3020 proto_tree_add_time(tree, hf_lustre_mds_rec_setattr_sa_ctime, tvb, offset, 8, &ns );
3026 lustre_dissect_element_mds_rec_setattr_sa_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3028 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_uid);
3034 lustre_dissect_element_mds_rec_setattr_sa_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3036 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_gid);
3042 lustre_dissect_element_mds_rec_setattr_sa_attr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3044 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_attr_flags);
3050 lustre_dissect_element_mds_rec_setattr_sa_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3052 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_setattr_sa_padding);
3058 lustre_dissect_struct_mds_rec_setattr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3060 proto_item *item = NULL;
3061 proto_tree *tree = NULL;
3070 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3071 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_setattr);
3073 sa_opcode=tvb_get_letohl(tvb,offset);
3074 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sa_opcode, lustre_mds_reint_t_vals, "Unknown sa_opc"));
3076 offset=lustre_dissect_element_mds_rec_setattr_sa_opcode(tvb, offset, pinfo, tree);
3078 offset=lustre_dissect_element_mds_rec_setattr_sa_fsuid(tvb, offset, pinfo, tree);
3080 offset=lustre_dissect_element_mds_rec_setattr_sa_fsgid(tvb, offset, pinfo, tree);
3082 offset=lustre_dissect_element_mds_rec_setattr_sa_cap(tvb, offset, pinfo, tree);
3084 offset=lustre_dissect_element_mds_rec_setattr_sa_suppgid(tvb, offset, pinfo, tree);
3086 offset=lustre_dissect_element_mds_rec_setattr_sa_mode(tvb, offset, pinfo, tree);
3088 offset=lustre_dissect_element_mds_rec_setattr_sa_fid(tvb, offset, pinfo, tree);
3090 offset=lustre_dissect_element_mds_rec_setattr_sa_valid(tvb, offset, pinfo, tree);
3092 offset=lustre_dissect_element_mds_rec_setattr_sa_size(tvb, offset, pinfo, tree);
3094 offset=lustre_dissect_element_mds_rec_setattr_sa_mtime(tvb, offset, pinfo, tree);
3096 offset=lustre_dissect_element_mds_rec_setattr_sa_atime(tvb, offset, pinfo, tree);
3098 offset=lustre_dissect_element_mds_rec_setattr_sa_ctime(tvb, offset, pinfo, tree);
3100 offset=lustre_dissect_element_mds_rec_setattr_sa_uid(tvb, offset, pinfo, tree);
3102 offset=lustre_dissect_element_mds_rec_setattr_sa_gid(tvb, offset, pinfo, tree);
3104 offset=lustre_dissect_element_mds_rec_setattr_sa_attr_flags(tvb, offset, pinfo, tree);
3106 offset=lustre_dissect_element_mds_rec_setattr_sa_padding(tvb, offset, pinfo, tree);
3109 proto_item_set_len(item, offset-old_offset);
3115 /* IDL: struct mds_rec_create { */
3116 /* IDL: uint32 cr_opcode; */
3117 /* IDL: uint32 cr_fsuid; */
3118 /* IDL: uint32 cr_fsgid; */
3119 /* IDL: uint32 cr_cap; */
3120 /* IDL: uint32 cr_flags; */
3121 /* IDL: uint32 cr_mode; */
3122 /* IDL: struct ll_fid { */
3123 /* IDL: } cr_fid; */
3124 /* IDL: struct ll_fid { */
3125 /* IDL: } cr_replayfid; */
3126 /* IDL: uint64 cr_time; */
3127 /* IDL: uint64 cr_rdev; */
3128 /* IDL: uint32 cr_suppgid; */
3129 /* IDL: uint32 cr_padding_1; */
3130 /* IDL: uint32 cr_padding_2; */
3131 /* IDL: uint32 cr_padding_3; */
3132 /* IDL: uint32 cr_padding_4; */
3133 /* IDL: uint32 cr_padding_5; */
3137 lustre_dissect_element_mds_rec_create_cr_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3139 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_opcode);
3145 lustre_dissect_element_mds_rec_create_cr_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3147 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_fsuid);
3153 lustre_dissect_element_mds_rec_create_cr_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3155 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_fsgid);
3161 lustre_dissect_element_mds_rec_create_cr_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3163 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_cap);
3169 lustre_dissect_element_mds_rec_create_cr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3171 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_flags);
3177 lustre_dissect_element_mds_rec_create_cr_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3179 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_mode);
3185 lustre_dissect_element_mds_rec_create_cr_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3187 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_create_cr_fid);
3192 lustre_dissect_element_mds_rec_create_cr_replayfid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3194 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_create_cr_replayfid);
3199 lustre_dissect_element_mds_rec_create_cr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3203 ns.secs = tvb_get_letohl(tvb,offset);
3205 proto_tree_add_time(tree, hf_lustre_mds_rec_create_cr_time, tvb, offset, 8, &ns );
3212 lustre_dissect_element_mds_rec_create_cr_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3214 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_rdev);
3220 lustre_dissect_element_mds_rec_create_cr_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3222 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_suppgid);
3228 lustre_dissect_element_mds_rec_create_cr_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3230 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_padding_1);
3236 lustre_dissect_element_mds_rec_create_cr_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3238 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_padding_2);
3244 lustre_dissect_element_mds_rec_create_cr_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3246 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_padding_3);
3252 lustre_dissect_element_mds_rec_create_cr_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3254 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_padding_4);
3260 lustre_dissect_element_mds_rec_create_cr_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3262 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create_cr_padding_5);
3268 lustre_dissect_struct_mds_rec_create(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3270 proto_item *item = NULL;
3271 proto_tree *tree = NULL;
3280 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3281 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_create);
3283 cr_opcode=tvb_get_letohl(tvb,offset);
3284 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(cr_opcode, lustre_mds_reint_t_vals, "Unknown cr_opc"));
3286 offset=lustre_dissect_element_mds_rec_create_cr_opcode(tvb, offset, pinfo, tree);
3288 offset=lustre_dissect_element_mds_rec_create_cr_fsuid(tvb, offset, pinfo, tree);
3290 offset=lustre_dissect_element_mds_rec_create_cr_fsgid(tvb, offset, pinfo, tree);
3292 offset=lustre_dissect_element_mds_rec_create_cr_cap(tvb, offset, pinfo, tree);
3294 offset=lustre_dissect_element_mds_rec_create_cr_flags(tvb, offset, pinfo, tree);
3296 offset=lustre_dissect_element_mds_rec_create_cr_mode(tvb, offset, pinfo, tree);
3298 offset=lustre_dissect_element_mds_rec_create_cr_fid(tvb, offset, pinfo, tree);
3300 offset=lustre_dissect_element_mds_rec_create_cr_replayfid(tvb, offset, pinfo, tree);
3302 offset=lustre_dissect_element_mds_rec_create_cr_time(tvb, offset, pinfo, tree);
3304 offset=lustre_dissect_element_mds_rec_create_cr_rdev(tvb, offset, pinfo, tree);
3306 offset=lustre_dissect_element_mds_rec_create_cr_suppgid(tvb, offset, pinfo, tree);
3308 offset=lustre_dissect_element_mds_rec_create_cr_padding_1(tvb, offset, pinfo, tree);
3310 offset=lustre_dissect_element_mds_rec_create_cr_padding_2(tvb, offset, pinfo, tree);
3312 offset=lustre_dissect_element_mds_rec_create_cr_padding_3(tvb, offset, pinfo, tree);
3314 offset=lustre_dissect_element_mds_rec_create_cr_padding_4(tvb, offset, pinfo, tree);
3316 offset=lustre_dissect_element_mds_rec_create_cr_padding_5(tvb, offset, pinfo, tree);
3319 proto_item_set_len(item, offset-old_offset);
3327 /* TODO : find where this structure appear ! */
3328 /* IDL: struct mds_rec_join { */
3329 /* IDL: struct ll_fid { */
3330 /* IDL: } jr_fid; */
3331 /* IDL: uint64 jr_headsize; */
3335 lustre_dissect_element_mds_rec_join_jr_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3337 //offset=lustre_dissect_struct_HASH(0x85b17c0)(tvb,offset,pinfo,tree,hf_lustre_mds_rec_join_jr_fid);
3342 lustre_dissect_element_mds_rec_join_jr_headsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3344 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_rec_join_jr_headsize);
3350 lustre_dissect_struct_mds_rec_join(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3352 proto_item *item = NULL;
3353 proto_tree *tree = NULL;
3361 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3362 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_join);
3365 offset=lustre_dissect_element_mds_rec_join_jr_fid(tvb, offset, pinfo, tree);
3367 offset=lustre_dissect_element_mds_rec_join_jr_headsize(tvb, offset, pinfo, tree);
3370 proto_item_set_len(item, offset-old_offset);
3376 /* IDL: struct mds_rec_link { */
3377 /* IDL: uint32 lk_opcode; */
3378 /* IDL: uint32 lk_fsuid; */
3379 /* IDL: uint32 lk_fsgid; */
3380 /* IDL: uint32 lk_cap; */
3381 /* IDL: uint32 lk_suppgid1; */
3382 /* IDL: uint32 lk_suppgid2; */
3383 /* IDL: struct ll_fid { */
3384 /* IDL: } lk_fid1; */
3385 /* IDL: struct ll_fid { */
3386 /* IDL: } lk_fid2; */
3387 /* IDL: uint64 lk_time; */
3388 /* IDL: uint32 lk_padding_1; */
3389 /* IDL: uint32 lk_padding_2; */
3390 /* IDL: uint32 lk_padding_3; */
3391 /* IDL: uint32 lk_padding_4; */
3395 lustre_dissect_element_mds_rec_link_lk_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3397 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_opcode);
3403 lustre_dissect_element_mds_rec_link_lk_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3405 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_fsuid);
3411 lustre_dissect_element_mds_rec_link_lk_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3413 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_fsgid);
3419 lustre_dissect_element_mds_rec_link_lk_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3421 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_cap);
3427 lustre_dissect_element_mds_rec_link_lk_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3429 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_suppgid1);
3435 lustre_dissect_element_mds_rec_link_lk_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3437 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_suppgid2);
3443 lustre_dissect_element_mds_rec_link_lk_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3445 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_link_lk_fid1);
3450 lustre_dissect_element_mds_rec_link_lk_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3452 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_link_lk_fid2);
3457 lustre_dissect_element_mds_rec_link_lk_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3461 ns.secs = tvb_get_letohl(tvb,offset);
3463 proto_tree_add_time(tree, hf_lustre_mds_rec_link_lk_time, tvb, offset, 8, &ns );
3469 lustre_dissect_element_mds_rec_link_lk_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3471 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_padding_1);
3477 lustre_dissect_element_mds_rec_link_lk_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3479 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_padding_2);
3485 lustre_dissect_element_mds_rec_link_lk_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3487 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_padding_3);
3493 lustre_dissect_element_mds_rec_link_lk_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3495 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link_lk_padding_4);
3501 lustre_dissect_struct_mds_rec_link(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3503 proto_item *item = NULL;
3504 proto_tree *tree = NULL;
3513 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3514 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_link);
3516 lk_opcode=tvb_get_letohl(tvb,offset);
3517 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lk_opcode, lustre_mds_reint_t_vals, "Unknown lk_opc"));
3519 offset=lustre_dissect_element_mds_rec_link_lk_opcode(tvb, offset, pinfo, tree);
3521 offset=lustre_dissect_element_mds_rec_link_lk_fsuid(tvb, offset, pinfo, tree);
3523 offset=lustre_dissect_element_mds_rec_link_lk_fsgid(tvb, offset, pinfo, tree);
3525 offset=lustre_dissect_element_mds_rec_link_lk_cap(tvb, offset, pinfo, tree);
3527 offset=lustre_dissect_element_mds_rec_link_lk_suppgid1(tvb, offset, pinfo, tree);
3529 offset=lustre_dissect_element_mds_rec_link_lk_suppgid2(tvb, offset, pinfo, tree);
3531 offset=lustre_dissect_element_mds_rec_link_lk_fid1(tvb, offset, pinfo, tree);
3533 offset=lustre_dissect_element_mds_rec_link_lk_fid2(tvb, offset, pinfo, tree);
3535 offset=lustre_dissect_element_mds_rec_link_lk_time(tvb, offset, pinfo, tree);
3537 offset=lustre_dissect_element_mds_rec_link_lk_padding_1(tvb, offset, pinfo, tree);
3539 offset=lustre_dissect_element_mds_rec_link_lk_padding_2(tvb, offset, pinfo, tree);
3541 offset=lustre_dissect_element_mds_rec_link_lk_padding_3(tvb, offset, pinfo, tree);
3543 offset=lustre_dissect_element_mds_rec_link_lk_padding_4(tvb, offset, pinfo, tree);
3546 proto_item_set_len(item, offset-old_offset);
3553 /* IDL: struct mds_rec_unlink { */
3554 /* IDL: uint32 ul_opcode; */
3555 /* IDL: uint32 ul_fsuid; */
3556 /* IDL: uint32 ul_fsgid; */
3557 /* IDL: uint32 ul_cap; */
3558 /* IDL: uint32 ul_suppgid; */
3559 /* IDL: uint32 ul_mode; */
3560 /* IDL: struct ll_fid { */
3561 /* IDL: } ul_fid1; */
3562 /* IDL: struct ll_fid { */
3563 /* IDL: } ul_fid2; */
3564 /* IDL: uint64 ul_time; */
3565 /* IDL: uint32 ul_padding_1; */
3566 /* IDL: uint32 ul_padding_2; */
3567 /* IDL: uint32 ul_padding_3; */
3568 /* IDL: uint32 ul_padding_4; */
3572 lustre_dissect_element_mds_rec_unlink_ul_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3574 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_opcode);
3580 lustre_dissect_element_mds_rec_unlink_ul_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3582 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_fsuid);
3588 lustre_dissect_element_mds_rec_unlink_ul_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3590 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_fsgid);
3596 lustre_dissect_element_mds_rec_unlink_ul_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3598 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_cap);
3604 lustre_dissect_element_mds_rec_unlink_ul_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3606 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_suppgid);
3612 lustre_dissect_element_mds_rec_unlink_ul_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3614 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_mode);
3620 lustre_dissect_element_mds_rec_unlink_ul_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3622 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_unlink_ul_fid1);
3627 lustre_dissect_element_mds_rec_unlink_ul_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3629 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_unlink_ul_fid2);
3634 lustre_dissect_element_mds_rec_unlink_ul_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3638 ns.secs = tvb_get_letohl(tvb,offset);
3640 proto_tree_add_time(tree,hf_lustre_mds_rec_unlink_ul_time , tvb, offset, 8, &ns );
3646 lustre_dissect_element_mds_rec_unlink_ul_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3648 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_padding_1);
3654 lustre_dissect_element_mds_rec_unlink_ul_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3656 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_padding_2);
3662 lustre_dissect_element_mds_rec_unlink_ul_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3664 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_padding_3);
3670 lustre_dissect_element_mds_rec_unlink_ul_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3672 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink_ul_padding_4);
3678 lustre_dissect_struct_mds_rec_unlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3680 proto_item *item = NULL;
3681 proto_tree *tree = NULL;
3690 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3691 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_unlink);
3694 ul_opcode=tvb_get_letohl(tvb,offset);
3695 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(ul_opcode, lustre_mds_reint_t_vals, "Unknown ul_opc"));
3697 offset=lustre_dissect_element_mds_rec_unlink_ul_opcode(tvb, offset, pinfo, tree);
3699 offset=lustre_dissect_element_mds_rec_unlink_ul_fsuid(tvb, offset, pinfo, tree);
3701 offset=lustre_dissect_element_mds_rec_unlink_ul_fsgid(tvb, offset, pinfo, tree);
3703 offset=lustre_dissect_element_mds_rec_unlink_ul_cap(tvb, offset, pinfo, tree);
3705 offset=lustre_dissect_element_mds_rec_unlink_ul_suppgid(tvb, offset, pinfo, tree);
3707 offset=lustre_dissect_element_mds_rec_unlink_ul_mode(tvb, offset, pinfo, tree);
3709 offset=lustre_dissect_element_mds_rec_unlink_ul_fid1(tvb, offset, pinfo, tree);
3711 offset=lustre_dissect_element_mds_rec_unlink_ul_fid2(tvb, offset, pinfo, tree);
3713 offset=lustre_dissect_element_mds_rec_unlink_ul_time(tvb, offset, pinfo, tree);
3715 offset=lustre_dissect_element_mds_rec_unlink_ul_padding_1(tvb, offset, pinfo, tree);
3717 offset=lustre_dissect_element_mds_rec_unlink_ul_padding_2(tvb, offset, pinfo, tree);
3719 offset=lustre_dissect_element_mds_rec_unlink_ul_padding_3(tvb, offset, pinfo, tree);
3721 offset=lustre_dissect_element_mds_rec_unlink_ul_padding_4(tvb, offset, pinfo, tree);
3724 proto_item_set_len(item, offset-old_offset);
3731 /* IDL: struct mds_rec_rename { */
3732 /* IDL: uint32 rn_opcode; */
3733 /* IDL: uint32 rn_fsuid; */
3734 /* IDL: uint32 rn_fsgid; */
3735 /* IDL: uint32 rn_cap; */
3736 /* IDL: uint32 rn_suppgid1; */
3737 /* IDL: uint32 rn_suppgid2; */
3738 /* IDL: struct ll_fid { */
3739 /* IDL: } rn_fid1; */
3740 /* IDL: struct ll_fid { */
3741 /* IDL: } rn_fid2; */
3742 /* IDL: uint64 rn_time; */
3743 /* IDL: uint32 rn_padding_1; */
3744 /* IDL: uint32 rn_padding_2; */
3745 /* IDL: uint32 rn_padding_3; */
3746 /* IDL: uint32 rn_padding_4; */
3750 lustre_dissect_element_mds_rec_rename_rn_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3752 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_opcode);
3758 lustre_dissect_element_mds_rec_rename_rn_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3760 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_fsuid);
3766 lustre_dissect_element_mds_rec_rename_rn_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3768 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_fsgid);
3774 lustre_dissect_element_mds_rec_rename_rn_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3776 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_cap);
3782 lustre_dissect_element_mds_rec_rename_rn_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3784 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_suppgid1);
3790 lustre_dissect_element_mds_rec_rename_rn_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3792 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_suppgid2);
3798 lustre_dissect_element_mds_rec_rename_rn_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3800 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_rename_rn_fid1);
3805 lustre_dissect_element_mds_rec_rename_rn_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3807 offset=lustre_dissect_struct_ll_fid(tvb,offset,pinfo,tree,hf_lustre_mds_rec_rename_rn_fid2);
3812 lustre_dissect_element_mds_rec_rename_rn_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3816 ns.secs = tvb_get_letohl(tvb,offset);
3818 proto_tree_add_time(tree, hf_lustre_mds_rec_rename_rn_time, tvb, offset, 8, &ns );
3824 lustre_dissect_element_mds_rec_rename_rn_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3826 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_padding_1);
3832 lustre_dissect_element_mds_rec_rename_rn_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3834 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_padding_2);
3840 lustre_dissect_element_mds_rec_rename_rn_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3842 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_padding_3);
3848 lustre_dissect_element_mds_rec_rename_rn_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3850 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mds_rec_rename_rn_padding_4);
3856 lustre_dissect_struct_mds_rec_rename(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3858 proto_item *item = NULL;
3859 proto_tree *tree = NULL;
3868 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3869 tree = proto_item_add_subtree(item, ett_lustre_mds_rec_rename);
3872 rn_opcode=tvb_get_letohl(tvb,offset);
3873 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(rn_opcode, lustre_mds_reint_t_vals, "Unknown rn_opc"));
3875 offset=lustre_dissect_element_mds_rec_rename_rn_opcode(tvb, offset, pinfo, tree);
3877 offset=lustre_dissect_element_mds_rec_rename_rn_fsuid(tvb, offset, pinfo, tree);
3879 offset=lustre_dissect_element_mds_rec_rename_rn_fsgid(tvb, offset, pinfo, tree);
3881 offset=lustre_dissect_element_mds_rec_rename_rn_cap(tvb, offset, pinfo, tree);
3883 offset=lustre_dissect_element_mds_rec_rename_rn_suppgid1(tvb, offset, pinfo, tree);
3885 offset=lustre_dissect_element_mds_rec_rename_rn_suppgid2(tvb, offset, pinfo, tree);
3887 offset=lustre_dissect_element_mds_rec_rename_rn_fid1(tvb, offset, pinfo, tree);
3889 offset=lustre_dissect_element_mds_rec_rename_rn_fid2(tvb, offset, pinfo, tree);
3891 offset=lustre_dissect_element_mds_rec_rename_rn_time(tvb, offset, pinfo, tree);
3893 offset=lustre_dissect_element_mds_rec_rename_rn_padding_1(tvb, offset, pinfo, tree);
3895 offset=lustre_dissect_element_mds_rec_rename_rn_padding_2(tvb, offset, pinfo, tree);
3897 offset=lustre_dissect_element_mds_rec_rename_rn_padding_3(tvb, offset, pinfo, tree);
3899 offset=lustre_dissect_element_mds_rec_rename_rn_padding_4(tvb, offset, pinfo, tree);
3902 proto_item_set_len(item, offset-old_offset);
3908 /* TODO : find where this structure appear */
3910 /* IDL: struct lov_desc { */
3911 /* IDL: uint32 ld_tgt_count; */
3912 /* IDL: uint32 ld_active_tgt_count; */
3913 /* IDL: uint32 ld_default_stripe_count; */
3914 /* IDL: uint32 ld_pattern; */
3915 /* IDL: uint64 ld_default_stripe_size; */
3916 /* IDL: uint64 ld_default_stripe_offset; */
3917 /* IDL: uint32 ld_padding_0; */
3918 /* IDL: uint32 ld_qos_maxage; */
3919 /* IDL: uint32 ld_padding_1; */
3920 /* IDL: uint32 ld_padding_2; */
3921 /* IDL: struct obd_uuid { */
3922 /* IDL: } ld_uuid; */
3926 lustre_dissect_element_lov_desc_ld_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3928 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_tgt_count);
3934 lustre_dissect_element_lov_desc_ld_active_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3936 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_active_tgt_count);
3942 lustre_dissect_element_lov_desc_ld_default_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3944 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_count);
3950 lustre_dissect_element_lov_desc_ld_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3952 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_pattern);
3958 lustre_dissect_element_lov_desc_ld_default_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3960 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_size);
3966 lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3968 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_offset);
3974 lustre_dissect_element_lov_desc_ld_padding_0(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3976 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_0);
3982 lustre_dissect_element_lov_desc_ld_qos_maxage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3984 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_qos_maxage);
3990 lustre_dissect_element_lov_desc_ld_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3992 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_1);
3998 lustre_dissect_element_lov_desc_ld_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4000 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_2);
4006 lustre_dissect_element_lov_desc_ld_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4008 //offset=lustre_dissect_struct_HASH(0x85bade8)(tvb,offset,pinfo,tree,hf_lustre_lov_desc_ld_uuid);
4013 lustre_dissect_struct_lov_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4015 proto_item *item = NULL;
4016 proto_tree *tree = NULL;
4024 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4025 tree = proto_item_add_subtree(item, ett_lustre_lov_desc);
4028 offset=lustre_dissect_element_lov_desc_ld_tgt_count(tvb, offset, pinfo, tree);
4030 offset=lustre_dissect_element_lov_desc_ld_active_tgt_count(tvb, offset, pinfo, tree);
4032 offset=lustre_dissect_element_lov_desc_ld_default_stripe_count(tvb, offset, pinfo, tree);
4034 offset=lustre_dissect_element_lov_desc_ld_pattern(tvb, offset, pinfo, tree);
4036 offset=lustre_dissect_element_lov_desc_ld_default_stripe_size(tvb, offset, pinfo, tree);
4038 offset=lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvb, offset, pinfo, tree);
4040 offset=lustre_dissect_element_lov_desc_ld_padding_0(tvb, offset, pinfo, tree);
4042 offset=lustre_dissect_element_lov_desc_ld_qos_maxage(tvb, offset, pinfo, tree);
4044 offset=lustre_dissect_element_lov_desc_ld_padding_1(tvb, offset, pinfo, tree);
4046 offset=lustre_dissect_element_lov_desc_ld_padding_2(tvb, offset, pinfo, tree);
4048 offset=lustre_dissect_element_lov_desc_ld_uuid(tvb, offset, pinfo, tree);
4051 proto_item_set_len(item, offset-old_offset);
4056 /* IDL: struct obd_uuid { */
4057 /* char uuid[40]; */
4061 lustre_dissect_struct_obd_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4064 /* the lenght of the string is 40 bytes max, with \0 inside */
4066 proto_tree_add_item(parent_tree, hf_index, tvb, offset, 40, TRUE);
4075 /* IDL: struct ldlm_res_id { */
4076 /* IDL: uint64 name[4]; */
4080 lustre_dissect_element_ldlm_res_id_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4082 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_res_id_name);
4088 lustre_dissect_element_ldlm_res_id_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4091 for (i = 0; i < 4; i++)
4092 offset=lustre_dissect_element_ldlm_res_id_name_(tvb, offset, pinfo, tree);
4100 lustre_dissect_struct_ldlm_res_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4102 proto_item *item = NULL;
4103 proto_tree *tree = NULL;
4111 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4112 tree = proto_item_add_subtree(item, ett_lustre_ldlm_res_id);
4115 offset=lustre_dissect_element_ldlm_res_id_name(tvb, offset, pinfo, tree);
4118 proto_item_set_len(item, offset-old_offset);
4125 /* IDL: LCK_MINMODE=0, */
4126 /* IDL: LCK_EX=1, */
4127 /* IDL: LCK_PW=2, */
4128 /* IDL: LCK_PR=4, */
4129 /* IDL: LCK_CW=8, */
4130 /* IDL: LCK_CR=16, */
4131 /* IDL: LCK_NL=32, */
4132 /* IDL: LCK_GROUP=64, */
4133 /* IDL: LCK_MAXMODE, */
4137 lustre_dissect_enum_ldlm_mode_t(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_)
4139 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_index);
4145 /* IDL: LDLM_PLAIN=10, */
4146 /* IDL: LDLM_EXTENT=11, */
4147 /* IDL: LDLM_FLOCK=12, */
4148 /* IDL: LDLM_IBITS=13, */
4149 /* IDL: LDLM_MAX_TYPE, */
4153 lustre_dissect_enum_ldlm_type_t(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_)
4155 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type );
4159 /* IDL: struct ldlm_extent { */
4160 /* IDL: uint64 start; */
4161 /* IDL: uint64 end; */
4162 /* IDL: uint64 gid; */
4166 lustre_dissect_element_ldlm_extent_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4168 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_start);
4174 lustre_dissect_element_ldlm_extent_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4176 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_end);
4182 lustre_dissect_element_ldlm_extent_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4184 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_gid);
4190 lustre_dissect_struct_ldlm_extent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4192 proto_item *item = NULL;
4193 proto_tree *tree = NULL;
4201 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4202 tree = proto_item_add_subtree(item, ett_lustre_ldlm_extent);
4205 offset=lustre_dissect_element_ldlm_extent_start(tvb, offset, pinfo, tree);
4207 offset=lustre_dissect_element_ldlm_extent_end(tvb, offset, pinfo, tree);
4209 offset=lustre_dissect_element_ldlm_extent_gid(tvb, offset, pinfo, tree);
4212 proto_item_set_len(item, offset-old_offset);
4217 /* IDL: struct ldlm_inodebits { */
4218 /* IDL: uint64 bits; */
4222 lustre_dissect_element_ldlm_inodebits_bits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4224 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_inodebits_bits);
4230 lustre_dissect_struct_ldlm_inodebits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4232 proto_item *item = NULL;
4233 proto_tree *tree = NULL;
4241 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4242 tree = proto_item_add_subtree(item, ett_lustre_ldlm_inodebits);
4245 offset=lustre_dissect_element_ldlm_inodebits_bits(tvb, offset, pinfo, tree);
4248 proto_item_set_len(item, offset-old_offset);
4253 /* IDL: struct ldlm_flock { */
4254 /* IDL: uint64 start; */
4255 /* IDL: uint64 end; */
4256 /* IDL: uint64 blocking_export; */
4257 /* IDL: uint32 blocking_pid; */
4258 /* IDL: uint32 pid; */
4262 lustre_dissect_element_ldlm_flock_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4264 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_start);
4270 lustre_dissect_element_ldlm_flock_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4272 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_end);
4278 lustre_dissect_element_ldlm_flock_blocking_export(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4280 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_export);
4286 lustre_dissect_element_ldlm_flock_blocking_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4288 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_pid);
4294 lustre_dissect_element_ldlm_flock_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4296 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_pid);
4302 lustre_dissect_struct_ldlm_flock(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4304 proto_item *item = NULL;
4305 proto_tree *tree = NULL;
4313 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4314 tree = proto_item_add_subtree(item, ett_lustre_ldlm_flock);
4317 offset=lustre_dissect_element_ldlm_flock_start(tvb, offset, pinfo, tree);
4319 offset=lustre_dissect_element_ldlm_flock_end(tvb, offset, pinfo, tree);
4321 offset=lustre_dissect_element_ldlm_flock_blocking_export(tvb, offset, pinfo, tree);
4323 offset=lustre_dissect_element_ldlm_flock_blocking_pid(tvb, offset, pinfo, tree);
4325 offset=lustre_dissect_element_ldlm_flock_pid(tvb, offset, pinfo, tree);
4328 proto_item_set_len(item, offset-old_offset);
4333 /* IDL: struct ldlm_intent { */
4334 /* IDL: uint64 opc; */
4338 lustre_dissect_element_ldlm_intent_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4341 /* this opcode is like a flag*/
4342 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_open );
4343 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_creat );
4344 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_readdir );
4345 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getattr );
4346 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_lookup );
4347 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_unlink );
4348 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getxattr);
4349 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_exec );
4350 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_pin );
4351 opcode = tvb_get_letohl(tvb,offset);
4353 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, "[ intent :");
4354 if(opcode & IT_OPEN ){
4355 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " open");
4356 proto_item_append_text(tree, " open" );
4358 if(opcode & IT_CREAT ){
4359 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " create");
4360 proto_item_append_text(tree, " create" );
4362 if(opcode & IT_READDIR ){
4363 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " readdir");
4364 proto_item_append_text(tree, " readdir" );
4366 if(opcode & IT_GETATTR ){
4367 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getattr");
4368 proto_item_append_text(tree, " getattr" );
4370 if(opcode & IT_LOOKUP ){
4371 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " lookup");
4372 proto_item_append_text(tree, " lookup" );
4374 if(opcode & IT_UNLINK ){
4375 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " unlink");
4376 proto_item_append_text(tree, " unlink" );
4378 if(opcode & IT_GETXATTR){
4379 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getxattr");
4380 proto_item_append_text(tree, " getxattr" );
4382 if(opcode & IT_EXEC ){
4383 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " exec");
4384 proto_item_append_text(tree, " exec" );
4386 if(opcode & IT_PIN ){
4387 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " pin");
4388 proto_item_append_text(tree, " pin" );
4391 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " ]");
4397 lustre_dissect_struct_ldlm_intent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4399 // proto_item *item = NULL;
4400 //proto_tree *tree = NULL;
4403 proto_item * opcode_item = NULL;
4404 proto_tree * opcode_tree = NULL;
4407 // if (parent_tree) {
4408 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4409 // tree = proto_item_add_subtree(item, ett_lustre_ldlm_intent);
4410 // //tree = parent_tree; /* TODO : !!!!!!!!!!!!!!! ATTENTIon à revoir,
4411 // //fait rapidement pour ne pas avoir le subtree */
4415 intent_opc = tvb_get_letoh64(tvb,offset);
4417 opcode_item = proto_tree_add_item(parent_tree, hf_lustre_ldlm_intent_opc, tvb, offset, 8, TRUE);
4418 opcode_tree = proto_item_add_subtree(opcode_item, ett_lustre_ldlm_intent_opc);
4421 offset=lustre_dissect_element_ldlm_intent_opc(tvb, offset, pinfo, opcode_tree);
4423 offset=ldlm_opcode_process(tvb, offset, pinfo, parent_tree, intent_opc);
4430 /* IDL: struct ldlm_resource_desc { */
4431 /* IDL: ldlm_type_t lr_type; */
4432 /* IDL: uint32 lr_padding; */
4433 /* IDL: struct ldlm_res_id { */
4434 /* IDL: } lr_name; */
4438 lustre_dissect_element_ldlm_resource_desc_lr_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4440 /* offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);*/
4441 offset=lustre_dissect_enum_ldlm_type_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);
4446 lustre_dissect_element_ldlm_resource_desc_lr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4448 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_padding);
4454 lustre_dissect_element_ldlm_resource_desc_lr_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4456 offset=lustre_dissect_struct_ldlm_res_id(tvb,offset,pinfo,tree,hf_lustre_ldlm_resource_desc_lr_name);
4461 lustre_dissect_struct_ldlm_resource_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4463 proto_item *item = NULL;
4464 proto_tree *tree = NULL;
4472 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4473 tree = proto_item_add_subtree(item, ett_lustre_ldlm_resource_desc);
4476 offset=lustre_dissect_element_ldlm_resource_desc_lr_type(tvb, offset, pinfo, tree);
4478 offset=lustre_dissect_element_ldlm_resource_desc_lr_padding(tvb, offset, pinfo, tree);
4480 offset=lustre_dissect_element_ldlm_resource_desc_lr_name(tvb, offset, pinfo, tree);
4483 proto_item_set_len(item, offset-old_offset);
4489 /* IDL: struct ldlm_lock_desc { */
4490 /* IDL: struct ldlm_resource_desc { */
4491 /* IDL: } l_resource; */
4492 /* IDL: ldlm_mode_t l_req_mode; */
4493 /* IDL: ldlm_mode_t l_granted_mode; */
4494 /* IDL: ldlm_policy_data_t l_policy_data; */
4498 lustre_dissect_element_ldlm_lock_desc_l_resource(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4500 offset=lustre_dissect_struct_ldlm_resource_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_resource);
4505 lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4507 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_req_mode);
4513 lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4515 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_granted_mode);
4521 lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4524 guint32 lr_type; /* type of the lock */
4526 lr_type = tvb_get_letohl(tvb,offset - 48 ); /* TODO : find another way that using -48 */
4528 /* this section must be check with lustre code, possible mistake here */
4532 offset=lustre_dissect_struct_ldlm_flock(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
4535 offset= lustre_dissect_struct_ldlm_extent(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
4536 /* add an extra padding 8 bytes */
4537 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4540 offset=lustre_dissect_struct_ldlm_inodebits(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
4541 /* add an extra padding 24 bytes */
4542 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4543 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4544 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4547 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4548 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4549 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4550 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
4557 lustre_dissect_struct_ldlm_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4559 proto_item *item = NULL;
4560 proto_tree *tree = NULL;
4563 guint32 lock_req_mode;
4569 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4570 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_desc);
4573 offset=lustre_dissect_element_ldlm_lock_desc_l_resource(tvb, offset, pinfo, tree);
4575 lock_req_mode = tvb_get_letohl(tvb,offset);
4577 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lock_req_mode, lustre_ldlm_mode_t_vals, "Unknown lock"));
4579 offset=lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvb, offset, pinfo, tree);
4581 offset=lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvb, offset, pinfo, tree);
4583 offset=lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvb, offset, pinfo, tree);
4586 proto_item_set_len(item, offset-old_offset);
4592 /* IDL: struct ldlm_request { */
4593 /* IDL: uint32 lock_flags; */
4594 /* IDL: uint32 lock_count; */
4595 /* IDL: struct ldlm_lock_desc { */
4596 /* IDL: } lock_desc; */
4597 /* IDL: struct lustre_handle { */
4598 /* IDL: } lock_handle[2]; */
4604 lustre_dissect_element_ldlm_request_lock_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4606 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_count);
4612 lustre_dissect_element_ldlm_request_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4614 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_desc);
4621 lustre_dissect_element_ldlm_request_lock_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4623 /*if (check_col(pinfo->cinfo, COL_INFO)) */
4624 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
4626 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_handle);
4631 lustre_dissect_element_ldlm_request_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4634 for (i = 0; i < 2; i++)
4635 offset=lustre_dissect_element_ldlm_request_lock_handle_(tvb, offset, pinfo, tree);
4641 lustre_dissect_struct_ldlm_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4643 proto_item *item = NULL;
4644 proto_tree *tree = NULL;
4652 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4653 tree = proto_item_add_subtree(item, ett_lustre_ldlm_request);
4656 lock_flag = tvb_get_letohl(tvb,offset);
4657 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_flags);
4659 offset=lustre_dissect_element_ldlm_request_lock_count(tvb, offset, pinfo, tree);
4661 /* ldlm_type = (EXTENT, PLAIN, ou IBITS) */
4662 ldlm_type = tvb_get_letohl(tvb,offset);
4663 offset=lustre_dissect_element_ldlm_request_lock_desc(tvb, offset, pinfo, tree);
4664 offset=lustre_dissect_element_ldlm_request_lock_handle(tvb, offset, pinfo, tree);
4666 proto_item_set_len(item, offset-old_offset);
4674 /* IDL: struct ldlm_reply { */
4675 /* IDL: uint32 lock_flags; */
4676 /* IDL: uint32 lock_padding; */
4677 /* IDL: struct ldlm_lock_desc { */
4678 /* IDL: } lock_desc; */
4679 /* IDL: struct lustre_handle { */
4680 /* IDL: } lock_handle; */
4681 /* IDL: uint64 lock_policy_res1; */
4682 /* IDL: uint64 lock_policy_res2; */
4687 lustre_dissect_element_ldlm_lock_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4689 proto_item *item = NULL;
4690 proto_tree *tree = NULL;
4693 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
4694 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_flags);
4696 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_ast_discard_data);
4697 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_deny_on_contention);
4698 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_done );
4699 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_ast );
4700 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_atomic_cb );
4701 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cleaned );
4702 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cp_reqd );
4703 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel_on_block );
4704 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_lru );
4705 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_kms_ignore );
4706 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lvb_ready );
4707 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_test_lock );
4708 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_nowait );
4709 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_timeout );
4710 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_discard_data );
4711 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_warn );
4712 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local );
4713 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_canceling );
4714 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_has_intent );
4715 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_failed );
4716 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local_only );
4717 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_intent_only );
4718 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_replay );
4719 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel );
4720 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_wait_noreproc );
4721 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_ast_sent );
4722 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cbpending );
4723 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_wait );
4724 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_conv );
4725 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_granted );
4726 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lock_changed );
4731 lustre_dissect_element_ldlm_reply_lock_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4733 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_padding);
4739 lustre_dissect_element_ldlm_reply_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4741 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_desc);
4746 lustre_dissect_element_ldlm_reply_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4748 /*if (check_col(pinfo->cinfo, COL_INFO)) */
4749 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
4751 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_handle);
4756 lustre_dissect_element_ldlm_reply_lock_policy_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4758 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res1);
4764 lustre_dissect_element_ldlm_reply_lock_policy_res2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4766 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res2);
4772 lustre_dissect_struct_ldlm_reply(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 * ldlm_type _U_ )
4774 proto_item *item = NULL;
4775 proto_tree *tree = NULL;
4783 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4784 tree = proto_item_add_subtree(item, ett_lustre_ldlm_reply);
4787 lock_flag = tvb_get_letohl(tvb,offset);
4788 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_flags);
4790 offset=lustre_dissect_element_ldlm_reply_lock_padding(tvb, offset, pinfo, tree);
4792 if (ldlm_type != NULL)
4793 *ldlm_type = tvb_get_letohl(tvb,offset);
4794 offset=lustre_dissect_element_ldlm_reply_lock_desc(tvb, offset, pinfo, tree);
4796 offset=lustre_dissect_element_ldlm_reply_lock_handle(tvb, offset, pinfo, tree);
4798 offset=lustre_dissect_element_ldlm_reply_lock_policy_res1(tvb, offset, pinfo, tree);
4800 offset=lustre_dissect_element_ldlm_reply_lock_policy_res2(tvb, offset, pinfo, tree);
4802 proto_item_set_len(item, offset-old_offset);
4810 /* IDL: struct mgs_send_param { */
4811 /* IDL: uint8 mgs_param[1024]; */
4817 lustre_dissect_element_mgs_send_param_mgs_param_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4819 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_send_param_mgs_param);
4825 lustre_dissect_element_mgs_send_param_mgs_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4828 for (i = 0; i < 1024; i++)
4829 offset=lustre_dissect_element_mgs_send_param_mgs_param_(tvb, offset, pinfo, tree);
4835 lustre_dissect_struct_mgs_send_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4837 proto_item *item = NULL;
4838 proto_tree *tree = NULL;
4845 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4846 tree = proto_item_add_subtree(item, ett_lustre_mgs_send_param);
4849 offset=lustre_dissect_element_mgs_send_param_mgs_param(tvb, offset, pinfo, tree);
4852 proto_item_set_len(item, offset-old_offset);
4857 /* IDL: struct mgs_target_info { */
4858 /* IDL: uint32 mti_lustre_ver; */
4859 /* IDL: uint32 mti_stripe_index; */
4860 /* IDL: uint32 mti_config_ver; */
4861 /* IDL: uint32 mti_flags; */
4862 /* IDL: uint32 mti_nid_count; */
4863 /* IDL: uint32 padding; */
4864 /* IDL: uint8 mti_fsname[64]; */
4865 /* IDL: uint8 mti_svname[64]; */
4866 /* IDL: uint8 mti_uuid[40]; */
4867 /* IDL: uint64 mti_nids[32]; */
4868 /* IDL: uint8 mti_params[4096]; */
4872 lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4874 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_lustre_ver);
4880 lustre_dissect_element_mgs_target_info_mti_stripe_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4882 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_stripe_index);
4888 lustre_dissect_element_mgs_target_info_mti_config_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4890 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_config_ver);
4896 lustre_dissect_element_mgs_target_info_mti_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4898 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_flags);
4904 lustre_dissect_element_mgs_target_info_mti_nid_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4906 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nid_count);
4912 lustre_dissect_element_mgs_target_info_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4914 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_padding);
4920 lustre_dissect_element_mgs_target_info_mti_fsname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4922 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_fsname);
4928 lustre_dissect_element_mgs_target_info_mti_fsname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4931 for (i = 0; i < 64; i++)
4932 offset=lustre_dissect_element_mgs_target_info_mti_fsname_(tvb, offset, pinfo, tree);
4942 lustre_dissect_element_mgs_target_info_mti_svname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4944 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_svname);
4950 lustre_dissect_element_mgs_target_info_mti_svname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4953 for (i = 0; i < 64; i++)
4954 offset=lustre_dissect_element_mgs_target_info_mti_svname_(tvb, offset, pinfo, tree);
4960 lustre_dissect_element_mgs_target_info_mti_uuid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4962 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_uuid);
4968 lustre_dissect_element_mgs_target_info_mti_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4971 for (i = 0; i < 40; i++)
4972 offset=lustre_dissect_element_mgs_target_info_mti_uuid_(tvb, offset, pinfo, tree);
4982 lustre_dissect_element_mgs_target_info_mti_nids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4984 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nids);
4990 lustre_dissect_element_mgs_target_info_mti_nids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4993 for (i = 0; i < 32; i++)
4994 offset=lustre_dissect_element_mgs_target_info_mti_nids_(tvb, offset, pinfo, tree);
5002 lustre_dissect_element_mgs_target_info_mti_params_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5004 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_params);
5010 lustre_dissect_element_mgs_target_info_mti_params(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5013 for (i = 0; i < 4096; i++)
5014 offset=lustre_dissect_element_mgs_target_info_mti_params_(tvb, offset, pinfo, tree);
5020 lustre_dissect_struct_mgs_target_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5022 proto_item *item = NULL;
5023 proto_tree *tree = NULL;
5031 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5032 tree = proto_item_add_subtree(item, ett_lustre_mgs_target_info);
5035 offset=lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvb, offset, pinfo, tree);
5037 offset=lustre_dissect_element_mgs_target_info_mti_stripe_index(tvb, offset, pinfo, tree);
5039 offset=lustre_dissect_element_mgs_target_info_mti_config_ver(tvb, offset, pinfo, tree);
5041 offset=lustre_dissect_element_mgs_target_info_mti_flags(tvb, offset, pinfo, tree);
5043 offset=lustre_dissect_element_mgs_target_info_mti_nid_count(tvb, offset, pinfo, tree);
5045 offset=lustre_dissect_element_mgs_target_info_padding(tvb, offset, pinfo, tree);
5047 offset=lustre_dissect_element_mgs_target_info_mti_fsname(tvb, offset, pinfo, tree);
5049 offset=lustre_dissect_element_mgs_target_info_mti_svname(tvb, offset, pinfo, tree);
5051 offset=lustre_dissect_element_mgs_target_info_mti_uuid(tvb, offset, pinfo, tree);
5053 offset=lustre_dissect_element_mgs_target_info_mti_nids(tvb, offset, pinfo, tree);
5055 offset=lustre_dissect_element_mgs_target_info_mti_params(tvb, offset, pinfo, tree);
5058 proto_item_set_len(item, offset-old_offset);
5063 /* IDL: struct cfg_marker { */
5064 /* IDL: uint32 cm_step; */
5065 /* IDL: uint32 cm_flags; */
5066 /* IDL: uint32 cm_vers; */
5067 /* IDL: uint32 padding; */
5068 /* IDL: time_t cm_createtime; */
5069 /* IDL: time_t cm_canceltime; */
5070 /* IDL: uint8 cm_tgtname[64]; */
5071 /* IDL: uint8 cm_comment[64]; */
5075 lustre_dissect_element_cfg_marker_cm_step(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5077 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_step);
5083 lustre_dissect_element_cfg_marker_cm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5085 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_flags);
5091 lustre_dissect_element_cfg_marker_cm_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5093 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_vers);
5099 lustre_dissect_element_cfg_marker_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5101 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_padding);
5107 lustre_dissect_element_cfg_marker_cm_createtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5109 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_createtime );
5110 /*g_print("function lustre_dissect_element_cfg_marker_cm_createtime don't work\n");*/
5115 lustre_dissect_element_cfg_marker_cm_canceltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5117 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_canceltime);
5119 /*g_print("element_cfg_marker_cm_canceltime\n");*/
5126 lustre_dissect_element_cfg_marker_cm_tgtname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5128 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_tgtname);
5134 lustre_dissect_element_cfg_marker_cm_tgtname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5137 for (i = 0; i < 64; i++)
5138 offset=lustre_dissect_element_cfg_marker_cm_tgtname_(tvb, offset, pinfo, tree);
5146 lustre_dissect_element_cfg_marker_cm_comment_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5148 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_comment);
5154 lustre_dissect_element_cfg_marker_cm_comment(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5157 for (i = 0; i < 64; i++)
5158 offset=lustre_dissect_element_cfg_marker_cm_comment_(tvb, offset, pinfo, tree);
5164 lustre_dissect_struct_cfg_marker(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5166 proto_item *item = NULL;
5167 proto_tree *tree = NULL;
5175 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5176 tree = proto_item_add_subtree(item, ett_lustre_cfg_marker);
5179 offset=lustre_dissect_element_cfg_marker_cm_step(tvb, offset, pinfo, tree);
5181 offset=lustre_dissect_element_cfg_marker_cm_flags(tvb, offset, pinfo, tree);
5183 offset=lustre_dissect_element_cfg_marker_cm_vers(tvb, offset, pinfo, tree);
5185 offset=lustre_dissect_element_cfg_marker_padding(tvb, offset, pinfo, tree);
5187 offset=lustre_dissect_element_cfg_marker_cm_createtime(tvb, offset, pinfo, tree);
5189 offset=lustre_dissect_element_cfg_marker_cm_canceltime(tvb, offset, pinfo, tree);
5191 offset=lustre_dissect_element_cfg_marker_cm_tgtname(tvb, offset, pinfo, tree);
5193 offset=lustre_dissect_element_cfg_marker_cm_comment(tvb, offset, pinfo, tree);
5196 proto_item_set_len(item, offset-old_offset);
5203 /* IDL: struct llog_logid { */
5204 /* IDL: uint64 lgl_oid; */
5205 /* IDL: uint64 lgl_ogr; */
5206 /* IDL: uint32 lgl_ogen; */
5210 lustre_dissect_element_llog_logid_lgl_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5212 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oid);
5218 lustre_dissect_element_llog_logid_lgl_ogr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5220 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_ogr);
5226 lustre_dissect_element_llog_logid_lgl_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5228 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_ogen);
5234 lustre_dissect_struct_llog_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5236 proto_item *item = NULL;
5237 proto_tree *tree = NULL;
5245 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5246 tree = proto_item_add_subtree(item, ett_lustre_llog_logid);
5249 offset=lustre_dissect_element_llog_logid_lgl_oid(tvb, offset, pinfo, tree);
5251 offset=lustre_dissect_element_llog_logid_lgl_ogr(tvb, offset, pinfo, tree);
5253 offset=lustre_dissect_element_llog_logid_lgl_ogen(tvb, offset, pinfo, tree);
5256 proto_item_set_len(item, offset-old_offset);
5261 /* I don't know when this structure is used on network */
5262 /* IDL: struct llog_catid { */
5263 /* IDL: struct llog_logid { */
5264 /* IDL: } lci_logid; */
5265 /* IDL: uint32 lci_padding1; */
5266 /* IDL: uint32 lci_padding2; */
5267 /* IDL: uint32 lci_padding3; */
5271 lustre_dissect_element_llog_catid_lci_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5273 //offset=lustre_dissect_struct_HASH(0x85cc76c)(tvb,offset,pinfo,tree,hf_lustre_llog_catid_lci_logid);
5275 /*g_print("llog_catid_lci_logid bug\n");*/
5280 lustre_dissect_element_llog_catid_lci_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5282 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding1);
5288 lustre_dissect_element_llog_catid_lci_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5290 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding2);
5296 lustre_dissect_element_llog_catid_lci_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5298 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding3);
5304 lustre_dissect_struct_llog_catid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5306 proto_item *item = NULL;
5307 proto_tree *tree = NULL;
5315 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5316 tree = proto_item_add_subtree(item, ett_lustre_llog_catid);
5319 offset=lustre_dissect_element_llog_catid_lci_logid(tvb, offset, pinfo, tree);
5321 offset=lustre_dissect_element_llog_catid_lci_padding1(tvb, offset, pinfo, tree);
5323 offset=lustre_dissect_element_llog_catid_lci_padding2(tvb, offset, pinfo, tree);
5325 offset=lustre_dissect_element_llog_catid_lci_padding3(tvb, offset, pinfo, tree);
5328 proto_item_set_len(item, offset-old_offset);
5334 /* IDL: struct lov_mds_md_join { */
5335 /* IDL: struct lov_mds_md { */
5336 /* IDL: } lmmj_md; */
5337 /* IDL: struct llog_logid { */
5338 /* IDL: } lmmj_array_id; */
5339 /* IDL: uint32 lmmj_extent_count; */
5343 lustre_dissect_element_lov_mds_md_join_lmmj_md(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5345 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_join_lmmj_md);
5350 lustre_dissect_element_lov_mds_md_join_lmmj_array_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5352 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_join_lmmj_array_id);
5357 lustre_dissect_element_lov_mds_md_join_lmmj_extent_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5359 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_join_lmmj_extent_count);
5365 lustre_dissect_struct_lov_mds_md_join(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5367 proto_item *item = NULL;
5368 proto_tree *tree = NULL;
5376 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5377 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_join);
5380 offset=lustre_dissect_element_lov_mds_md_join_lmmj_md(tvb, offset, pinfo, tree);
5382 offset=lustre_dissect_element_lov_mds_md_join_lmmj_array_id(tvb, offset, pinfo, tree);
5384 offset=lustre_dissect_element_lov_mds_md_join_lmmj_extent_count(tvb, offset, pinfo, tree);
5387 proto_item_set_len(item, offset-old_offset);
5394 /* IDL: struct llog_rec_hdr { */
5395 /* IDL: uint32 lrh_len; */
5396 /* IDL: uint32 lrh_index; */
5397 /* IDL: uint32 lrh_type; */
5398 /* IDL: uint32 padding; */
5402 lustre_dissect_element_llog_rec_hdr_lrh_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5404 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_len);
5410 lustre_dissect_element_llog_rec_hdr_lrh_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5412 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_index);
5418 lustre_dissect_element_llog_rec_hdr_lrh_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5420 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_type);
5426 lustre_dissect_element_llog_rec_hdr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5428 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_padding);
5434 lustre_dissect_struct_llog_rec_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5436 proto_item *item = NULL;
5437 proto_tree *tree = NULL;
5445 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5446 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_hdr);
5449 offset=lustre_dissect_element_llog_rec_hdr_lrh_len(tvb, offset, pinfo, tree);
5451 offset=lustre_dissect_element_llog_rec_hdr_lrh_index(tvb, offset, pinfo, tree);
5453 offset=lustre_dissect_element_llog_rec_hdr_lrh_type(tvb, offset, pinfo, tree);
5455 offset=lustre_dissect_element_llog_rec_hdr_padding(tvb, offset, pinfo, tree);
5458 proto_item_set_len(item, offset-old_offset);
5463 /* IDL: struct llog_rec_tail { */
5464 /* IDL: uint32 lrt_len; */
5465 /* IDL: uint32 lrt_index; */
5469 lustre_dissect_element_llog_rec_tail_lrt_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5471 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_len);
5477 lustre_dissect_element_llog_rec_tail_lrt_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5479 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_index);
5485 lustre_dissect_struct_llog_rec_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5487 proto_item *item = NULL;
5488 proto_tree *tree = NULL;
5496 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5497 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_tail);
5500 offset=lustre_dissect_element_llog_rec_tail_lrt_len(tvb, offset, pinfo, tree);
5502 offset=lustre_dissect_element_llog_rec_tail_lrt_index(tvb, offset, pinfo, tree);
5505 proto_item_set_len(item, offset-old_offset);
5510 /* IDL: struct llog_logid_rec { */
5511 /* IDL: struct llog_rec_hdr { */
5512 /* IDL: } lid_hdr; */
5513 /* IDL: struct llog_logid { */
5514 /* IDL: } lid_id; */
5515 /* IDL: uint32 padding1; */
5516 /* IDL: uint32 padding2; */
5517 /* IDL: uint32 padding3; */
5518 /* IDL: uint32 padding4; */
5519 /* IDL: uint32 padding5; */
5520 /* IDL: struct llog_rec_tail { */
5521 /* IDL: } lid_tail; */
5525 lustre_dissect_element_llog_logid_rec_lid_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5527 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_hdr);
5532 lustre_dissect_element_llog_logid_rec_lid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5534 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_id);
5539 lustre_dissect_element_llog_logid_rec_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5541 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding1);
5547 lustre_dissect_element_llog_logid_rec_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5549 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding2);
5555 lustre_dissect_element_llog_logid_rec_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5557 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding3);
5563 lustre_dissect_element_llog_logid_rec_padding4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5565 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding4);
5571 lustre_dissect_element_llog_logid_rec_padding5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5573 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding5);
5579 lustre_dissect_element_llog_logid_rec_lid_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5581 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_tail);
5586 lustre_dissect_struct_llog_logid_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5588 proto_item *item = NULL;
5589 proto_tree *tree = NULL;
5597 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5598 tree = proto_item_add_subtree(item, ett_lustre_llog_logid_rec);
5601 offset=lustre_dissect_element_llog_logid_rec_lid_hdr(tvb, offset, pinfo, tree);
5603 offset=lustre_dissect_element_llog_logid_rec_lid_id(tvb, offset, pinfo, tree);
5605 offset=lustre_dissect_element_llog_logid_rec_padding1(tvb, offset, pinfo, tree);
5607 offset=lustre_dissect_element_llog_logid_rec_padding2(tvb, offset, pinfo, tree);
5609 offset=lustre_dissect_element_llog_logid_rec_padding3(tvb, offset, pinfo, tree);
5611 offset=lustre_dissect_element_llog_logid_rec_padding4(tvb, offset, pinfo, tree);
5613 offset=lustre_dissect_element_llog_logid_rec_padding5(tvb, offset, pinfo, tree);
5615 offset=lustre_dissect_element_llog_logid_rec_lid_tail(tvb, offset, pinfo, tree);
5618 proto_item_set_len(item, offset-old_offset);
5625 /* IDL: struct mds_extent_desc { */
5626 /* IDL: uint64 med_start; */
5627 /* IDL: uint64 med_len; */
5628 /* IDL: struct lov_mds_md { */
5629 /* IDL: } med_lmm; */
5633 lustre_dissect_element_mds_extent_desc_med_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5635 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_extent_desc_med_start);
5641 lustre_dissect_element_mds_extent_desc_med_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5643 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mds_extent_desc_med_len);
5649 lustre_dissect_element_mds_extent_desc_med_lmm(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5651 //offset=lustre_dissect_struct_HASH(0x85d3578)(tvb,offset,pinfo,tree,hf_lustre_mds_extent_desc_med_lmm);
5652 /*g_print("bug\n");*/
5657 lustre_dissect_struct_mds_extent_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5659 proto_item *item = NULL;
5660 proto_tree *tree = NULL;
5668 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5669 tree = proto_item_add_subtree(item, ett_lustre_mds_extent_desc);
5672 offset=lustre_dissect_element_mds_extent_desc_med_start(tvb, offset, pinfo, tree);
5674 offset=lustre_dissect_element_mds_extent_desc_med_len(tvb, offset, pinfo, tree);
5676 offset=lustre_dissect_element_mds_extent_desc_med_lmm(tvb, offset, pinfo, tree);
5679 proto_item_set_len(item, offset-old_offset);
5685 /* IDL: struct llog_array_rec { */
5686 /* IDL: struct llog_rec_hdr { */
5687 /* IDL: } lmr_hdr; */
5688 /* IDL: struct mds_extent_desc { */
5689 /* IDL: } lmr_med; */
5690 /* IDL: struct llog_rec_tail { */
5691 /* IDL: } lmr_tail; */
5695 lustre_dissect_element_llog_array_rec_lmr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5697 //offset=lustre_dissect_struct_HASH(0x85d374c)(tvb,offset,pinfo,tree,hf_lustre_llog_array_rec_lmr_hdr);
5703 lustre_dissect_element_llog_array_rec_lmr_med(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5705 //offset=lustre_dissect_struct_HASH(0x85d4328)(tvb,offset,pinfo,tree,hf_lustre_llog_array_rec_lmr_med);
5711 lustre_dissect_element_llog_array_rec_lmr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5713 //offset=lustre_dissect_struct_HASH(0x85d4478)(tvb,offset,pinfo,tree,hf_lustre_llog_array_rec_lmr_tail);
5719 lustre_dissect_struct_llog_array_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5721 proto_item *item = NULL;
5722 proto_tree *tree = NULL;
5730 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5731 tree = proto_item_add_subtree(item, ett_lustre_llog_array_rec);
5734 offset=lustre_dissect_element_llog_array_rec_lmr_hdr(tvb, offset, pinfo, tree);
5736 offset=lustre_dissect_element_llog_array_rec_lmr_med(tvb, offset, pinfo, tree);
5738 offset=lustre_dissect_element_llog_array_rec_lmr_tail(tvb, offset, pinfo, tree);
5741 proto_item_set_len(item, offset-old_offset);
5749 /* IDL: struct llog_create_rec { */
5750 /* IDL: struct llog_rec_hdr { */
5751 /* IDL: } lcr_hdr; */
5752 /* IDL: struct ll_fid { */
5753 /* IDL: } lcr_fid; */
5754 /* IDL: uint64 lcr_oid; */
5755 /* IDL: uint32 lcr_ogen; */
5756 /* IDL: uint32 padding; */
5757 /* IDL: struct llog_rec_tail { */
5758 /* IDL: } lcr_tail; */
5762 lustre_dissect_element_llog_create_rec_lcr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5764 //offset=lustre_dissect_struct_HASH(0x85d56e0)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_hdr);
5770 lustre_dissect_element_llog_create_rec_lcr_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5772 //offset=lustre_dissect_struct_HASH(0x85d5830)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_fid);
5778 lustre_dissect_element_llog_create_rec_lcr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5780 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_lcr_oid);
5786 lustre_dissect_element_llog_create_rec_lcr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5788 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_lcr_ogen);
5794 lustre_dissect_element_llog_create_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5796 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_padding);
5802 lustre_dissect_element_llog_create_rec_lcr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5804 //offset=lustre_dissect_struct_HASH(0x85d69dc)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_tail);
5810 lustre_dissect_struct_llog_create_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5812 proto_item *item = NULL;
5813 proto_tree *tree = NULL;
5821 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5822 tree = proto_item_add_subtree(item, ett_lustre_llog_create_rec);
5825 offset=lustre_dissect_element_llog_create_rec_lcr_hdr(tvb, offset, pinfo, tree);
5827 offset=lustre_dissect_element_llog_create_rec_lcr_fid(tvb, offset, pinfo, tree);
5829 offset=lustre_dissect_element_llog_create_rec_lcr_oid(tvb, offset, pinfo, tree);
5831 offset=lustre_dissect_element_llog_create_rec_lcr_ogen(tvb, offset, pinfo, tree);
5833 offset=lustre_dissect_element_llog_create_rec_padding(tvb, offset, pinfo, tree);
5835 offset=lustre_dissect_element_llog_create_rec_lcr_tail(tvb, offset, pinfo, tree);
5838 proto_item_set_len(item, offset-old_offset);
5846 /* IDL: struct llog_orphan_rec { */
5847 /* IDL: struct llog_rec_hdr { */
5848 /* IDL: } lor_hdr; */
5849 /* IDL: uint64 lor_oid; */
5850 /* IDL: uint32 lor_ogen; */
5851 /* IDL: uint32 padding; */
5852 /* IDL: struct llog_rec_tail { */
5853 /* IDL: } lor_tail; */
5857 lustre_dissect_element_llog_orphan_rec_lor_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5859 //offset=lustre_dissect_struct_HASH(0x85d767c)(tvb,offset,pinfo,tree,hf_lustre_llog_orphan_rec_lor_hdr);
5865 lustre_dissect_element_llog_orphan_rec_lor_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5867 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_lor_oid);
5873 lustre_dissect_element_llog_orphan_rec_lor_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5875 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_lor_ogen);
5881 lustre_dissect_element_llog_orphan_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5883 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_padding);
5889 lustre_dissect_element_llog_orphan_rec_lor_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5891 //offset=lustre_dissect_struct_HASH(0x85d8550)(tvb,offset,pinfo,tree,hf_lustre_llog_orphan_rec_lor_tail);
5896 lustre_dissect_struct_llog_orphan_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5898 proto_item *item = NULL;
5899 proto_tree *tree = NULL;
5907 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5908 tree = proto_item_add_subtree(item, ett_lustre_llog_orphan_rec);
5911 offset=lustre_dissect_element_llog_orphan_rec_lor_hdr(tvb, offset, pinfo, tree);
5913 offset=lustre_dissect_element_llog_orphan_rec_lor_oid(tvb, offset, pinfo, tree);
5915 offset=lustre_dissect_element_llog_orphan_rec_lor_ogen(tvb, offset, pinfo, tree);
5917 offset=lustre_dissect_element_llog_orphan_rec_padding(tvb, offset, pinfo, tree);
5919 offset=lustre_dissect_element_llog_orphan_rec_lor_tail(tvb, offset, pinfo, tree);
5922 proto_item_set_len(item, offset-old_offset);
5929 /* IDL: struct llog_unlink_rec { */
5930 /* IDL: struct llog_rec_hdr { */
5931 /* IDL: } lur_hdr; */
5932 /* IDL: uint64 lur_oid; */
5933 /* IDL: uint32 lur_ogen; */
5934 /* IDL: uint32 padding; */
5935 /* IDL: struct llog_rec_tail { */
5936 /* IDL: } lur_tail; */
5940 lustre_dissect_element_llog_unlink_rec_lur_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5942 //offset=lustre_dissect_struct_HASH(0x85d8730)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_hdr);
5947 lustre_dissect_element_llog_unlink_rec_lur_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5949 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_oid);
5955 lustre_dissect_element_llog_unlink_rec_lur_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5957 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_ogen);
5963 lustre_dissect_element_llog_unlink_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5965 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_padding);
5971 lustre_dissect_element_llog_unlink_rec_lur_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5973 //offset=lustre_dissect_struct_HASH(0x85d9664)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_tail);
5978 lustre_dissect_struct_llog_unlink_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5980 proto_item *item = NULL;
5981 proto_tree *tree = NULL;
5989 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5990 tree = proto_item_add_subtree(item, ett_lustre_llog_unlink_rec);
5993 offset=lustre_dissect_element_llog_unlink_rec_lur_hdr(tvb, offset, pinfo, tree);
5995 offset=lustre_dissect_element_llog_unlink_rec_lur_oid(tvb, offset, pinfo, tree);
5997 offset=lustre_dissect_element_llog_unlink_rec_lur_ogen(tvb, offset, pinfo, tree);
5999 offset=lustre_dissect_element_llog_unlink_rec_padding(tvb, offset, pinfo, tree);
6001 offset=lustre_dissect_element_llog_unlink_rec_lur_tail(tvb, offset, pinfo, tree);
6004 proto_item_set_len(item, offset-old_offset);
6011 /* IDL: struct llog_setattr_rec { */
6012 /* IDL: struct llog_rec_hdr { */
6013 /* IDL: } lsr_hdr; */
6014 /* IDL: uint64 lsr_oid; */
6015 /* IDL: uint32 lsr_ogen; */
6016 /* IDL: uint32 lsr_uid; */
6017 /* IDL: uint32 lsr_gid; */
6018 /* IDL: uint32 padding; */
6019 /* IDL: struct llog_rec_tail { */
6020 /* IDL: } lsr_tail; */
6024 lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6026 //offset=lustre_dissect_struct_HASH(0x85da2f0)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_hdr);
6031 lustre_dissect_element_llog_setattr_rec_lsr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6033 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_oid);
6039 lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6041 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_ogen);
6047 lustre_dissect_element_llog_setattr_rec_lsr_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6049 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_uid);
6055 lustre_dissect_element_llog_setattr_rec_lsr_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6057 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_gid);
6063 lustre_dissect_element_llog_setattr_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6065 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_padding);
6071 lustre_dissect_element_llog_setattr_rec_lsr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6073 //offset=lustre_dissect_struct_HASH(0x85db3d4)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_tail);
6078 lustre_dissect_struct_llog_setattr_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6080 proto_item *item = NULL;
6081 proto_tree *tree = NULL;
6089 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6090 tree = proto_item_add_subtree(item, ett_lustre_llog_setattr_rec);
6093 offset=lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvb, offset, pinfo, tree);
6095 offset=lustre_dissect_element_llog_setattr_rec_lsr_oid(tvb, offset, pinfo, tree);
6097 offset=lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvb, offset, pinfo, tree);
6099 offset=lustre_dissect_element_llog_setattr_rec_lsr_uid(tvb, offset, pinfo, tree);
6101 offset=lustre_dissect_element_llog_setattr_rec_lsr_gid(tvb, offset, pinfo, tree);
6103 offset=lustre_dissect_element_llog_setattr_rec_padding(tvb, offset, pinfo, tree);
6105 offset=lustre_dissect_element_llog_setattr_rec_lsr_tail(tvb, offset, pinfo, tree);
6108 proto_item_set_len(item, offset-old_offset);
6116 /* IDL: struct llog_size_change_rec { */
6117 /* IDL: struct llog_rec_hdr { */
6118 /* IDL: } lsc_hdr; */
6119 /* IDL: struct ll_fid { */
6120 /* IDL: } lsc_fid; */
6121 /* IDL: uint32 lsc_io_epoch; */
6122 /* IDL: uint32 padding; */
6123 /* IDL: struct llog_rec_tail { */
6124 /* IDL: } lsc_tail; */
6128 lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6130 //offset=lustre_dissect_struct_HASH(0x85dc458)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_hdr);
6135 lustre_dissect_element_llog_size_change_rec_lsc_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6137 //offset=lustre_dissect_struct_HASH(0x85dc5a8)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_fid);
6142 lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6144 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_lsc_io_epoch);
6150 lustre_dissect_element_llog_size_change_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6152 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_padding);
6158 lustre_dissect_element_llog_size_change_rec_lsc_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6160 //offset=lustre_dissect_struct_HASH(0x85dd384)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_tail);
6161 // TODO: to be corrected !
6166 lustre_dissect_struct_llog_size_change_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6168 proto_item *item = NULL;
6169 proto_tree *tree = NULL;
6177 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6178 tree = proto_item_add_subtree(item, ett_lustre_llog_size_change_rec);
6181 offset=lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvb, offset, pinfo, tree);
6183 offset=lustre_dissect_element_llog_size_change_rec_lsc_fid(tvb, offset, pinfo, tree);
6185 offset=lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvb, offset, pinfo, tree);
6187 offset=lustre_dissect_element_llog_size_change_rec_padding(tvb, offset, pinfo, tree);
6189 offset=lustre_dissect_element_llog_size_change_rec_lsc_tail(tvb, offset, pinfo, tree);
6192 proto_item_set_len(item, offset-old_offset);
6200 /* IDL: struct llog_gen { */
6201 /* IDL: uint64 mnt_cnt; */
6202 /* IDL: uint64 conn_cnt; */
6206 lustre_dissect_element_llog_gen_mnt_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6208 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_mnt_cnt);
6214 lustre_dissect_element_llog_gen_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6216 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_conn_cnt);
6222 lustre_dissect_struct_llog_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6224 proto_item *item = NULL;
6225 proto_tree *tree = NULL;
6233 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6234 tree = proto_item_add_subtree(item, ett_lustre_llog_gen);
6237 offset=lustre_dissect_element_llog_gen_mnt_cnt(tvb, offset, pinfo, tree);
6239 offset=lustre_dissect_element_llog_gen_conn_cnt(tvb, offset, pinfo, tree);
6242 proto_item_set_len(item, offset-old_offset);
6247 /* IDL: struct llog_gen_rec { */
6248 /* IDL: struct llog_rec_hdr { */
6249 /* IDL: } lgr_hdr; */
6250 /* IDL: struct llog_gen { */
6251 /* IDL: } lgr_gen; */
6252 /* IDL: struct llog_rec_tail { */
6253 /* IDL: } lgr_tail; */
6257 lustre_dissect_element_llog_gen_rec_lgr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6259 //offset=lustre_dissect_struct_HASH(0x85de2e4)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_hdr);
6260 // TODO: to be corrected !
6265 lustre_dissect_element_llog_gen_rec_lgr_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6267 //offset=lustre_dissect_struct_HASH(0x85de434)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_gen);
6268 // TODO: to be corrected !
6273 lustre_dissect_element_llog_gen_rec_lgr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6275 //offset=lustre_dissect_struct_HASH(0x85df3f8)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_tail);
6276 // TODO: to be corrected !
6281 lustre_dissect_struct_llog_gen_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6283 proto_item *item = NULL;
6284 proto_tree *tree = NULL;
6292 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6293 tree = proto_item_add_subtree(item, ett_lustre_llog_gen_rec);
6296 offset=lustre_dissect_element_llog_gen_rec_lgr_hdr(tvb, offset, pinfo, tree);
6298 offset=lustre_dissect_element_llog_gen_rec_lgr_gen(tvb, offset, pinfo, tree);
6300 offset=lustre_dissect_element_llog_gen_rec_lgr_tail(tvb, offset, pinfo, tree);
6303 proto_item_set_len(item, offset-old_offset);
6311 /* IDL: struct llog_log_hdr { */
6312 /* IDL: struct llog_rec_hdr { */
6313 /* IDL: } llh_hdr; */
6314 /* IDL: uint64 llh_timestamp; */
6315 /* IDL: uint32 llh_count; */
6316 /* IDL: uint32 llh_bitmap_offset; */
6317 /* IDL: uint32 llh_size; */
6318 /* IDL: uint32 llh_flags; */
6319 /* IDL: uint32 llh_cat_idx; */
6320 /* IDL: struct obd_uuid { */
6321 /* IDL: } llh_tgtuuid; */
6322 /* IDL: uint32 llh_reserved[1]; */
6323 /* IDL: uint32 llh_bitmap[2024]; */
6324 /* IDL: struct llog_rec_tail { */
6325 /* IDL: } llh_tail; */
6329 lustre_dissect_element_llog_log_hdr_llh_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6331 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_hdr);
6336 lustre_dissect_element_llog_log_hdr_llh_timestamp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6339 ns.secs = tvb_get_letohl(tvb,offset);
6341 proto_tree_add_time(tree, hf_lustre_llog_log_hdr_llh_timestamp, tvb, offset, 8, &ns );
6347 lustre_dissect_element_llog_log_hdr_llh_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6349 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_count);
6355 lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6357 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap_offset);
6363 lustre_dissect_element_llog_log_hdr_llh_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6365 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_size);
6373 lustre_dissect_element_llog_log_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6375 proto_item *item = NULL;
6376 proto_tree *tree = NULL;
6379 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
6380 tree = proto_item_add_subtree(item, ett_lustre_llog_log_llh_flags);
6382 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_zap_when_empty);
6383 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_cat);
6384 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_play);
6391 lustre_dissect_element_llog_log_hdr_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6393 // offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
6394 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
6399 lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6401 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_cat_idx);
6407 lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6409 offset=lustre_dissect_struct_obd_uuid(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tgtuuid);
6414 lustre_dissect_element_llog_log_hdr_llh_reserved_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6416 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_reserved);
6422 lustre_dissect_element_llog_log_hdr_llh_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6425 for (i = 0; i < 1; i++)
6426 offset=lustre_dissect_element_llog_log_hdr_llh_reserved_(tvb, offset, pinfo, tree);
6432 lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6434 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap);
6441 lustre_dissect_element_llog_log_hdr_llh_bitmap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6444 for (i = 0; i < 2024; i++)
6445 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvb, offset, pinfo, tree);
6453 lustre_dissect_element_llog_log_hdr_llh_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6455 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tail);
6460 lustre_dissect_struct_llog_log_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6462 proto_item *item = NULL;
6463 proto_tree *tree = NULL;
6471 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6472 tree = proto_item_add_subtree(item, ett_lustre_llog_log_hdr);
6475 offset=lustre_dissect_element_llog_log_hdr_llh_hdr(tvb, offset, pinfo, tree);
6477 offset=lustre_dissect_element_llog_log_hdr_llh_timestamp(tvb, offset, pinfo, tree);
6479 offset=lustre_dissect_element_llog_log_hdr_llh_count(tvb, offset, pinfo, tree);
6481 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvb, offset, pinfo, tree);
6483 offset=lustre_dissect_element_llog_log_hdr_llh_size(tvb, offset, pinfo, tree);
6485 offset=lustre_dissect_element_llog_log_hdr_llh_flags(tvb, offset, pinfo, tree);
6487 offset=lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvb, offset, pinfo, tree);
6489 offset=lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvb, offset, pinfo, tree);
6491 offset=lustre_dissect_element_llog_log_hdr_llh_reserved(tvb, offset, pinfo, tree);
6493 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap(tvb, offset, pinfo, tree);
6495 offset=lustre_dissect_element_llog_log_hdr_llh_tail(tvb, offset, pinfo, tree);
6498 proto_item_set_len(item, offset-old_offset);
6506 /* IDL: struct llog_cookie { */
6507 /* IDL: struct llog_logid { */
6508 /* IDL: } lgc_lgl; */
6509 /* IDL: uint32 lgc_subsys; */
6510 /* IDL: uint32 lgc_index; */
6511 /* IDL: uint32 lgc_padding; */
6515 lustre_dissect_element_llog_cookie_lgc_lgl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6517 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_cookie_lgc_lgl);
6522 lustre_dissect_element_llog_cookie_lgc_subsys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6524 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_subsys);
6530 lustre_dissect_element_llog_cookie_lgc_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6532 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_index);
6538 lustre_dissect_element_llog_cookie_lgc_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6540 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_padding);
6546 lustre_dissect_struct_llog_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6548 proto_item *item = NULL;
6549 proto_tree *tree = NULL;
6557 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6558 tree = proto_item_add_subtree(item, ett_lustre_llog_cookie);
6561 offset=lustre_dissect_element_llog_cookie_lgc_lgl(tvb, offset, pinfo, tree);
6563 offset=lustre_dissect_element_llog_cookie_lgc_subsys(tvb, offset, pinfo, tree);
6565 offset=lustre_dissect_element_llog_cookie_lgc_index(tvb, offset, pinfo, tree);
6567 offset=lustre_dissect_element_llog_cookie_lgc_padding(tvb, offset, pinfo, tree);
6570 proto_item_set_len(item, offset-old_offset);
6577 /* IDL: struct llogd_body { */
6578 /* IDL: struct llog_logid { */
6579 /* IDL: } lgd_logid; */
6580 /* IDL: uint32 lgd_ctxt_idx; */
6581 /* IDL: uint32 lgd_llh_flags; */
6582 /* IDL: uint32 lgd_index; */
6583 /* IDL: uint32 lgd_saved_index; */
6584 /* IDL: uint32 lgd_len; */
6585 /* IDL: uint64 lgd_cur_offset; */
6589 lustre_dissect_element_llogd_body_lgd_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6591 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llogd_body_lgd_logid);
6596 lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6598 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_ctxt_idx);
6604 lustre_dissect_element_llogd_body_lgd_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6606 //offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
6608 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
6614 lustre_dissect_element_llogd_body_lgd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6616 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_index);
6622 lustre_dissect_element_llogd_body_lgd_saved_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6624 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_saved_index);
6630 lustre_dissect_element_llogd_body_lgd_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6632 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_len);
6638 lustre_dissect_element_llogd_body_lgd_cur_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6640 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_cur_offset);
6646 lustre_dissect_struct_llogd_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6648 proto_item *item = NULL;
6649 proto_tree *tree = NULL;
6657 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6658 tree = proto_item_add_subtree(item, ett_lustre_llogd_body);
6661 offset=lustre_dissect_element_llogd_body_lgd_logid(tvb, offset, pinfo, tree);
6663 offset=lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvb, offset, pinfo, tree);
6665 offset=lustre_dissect_element_llogd_body_lgd_llh_flags(tvb, offset, pinfo, tree);
6667 offset=lustre_dissect_element_llogd_body_lgd_index(tvb, offset, pinfo, tree);
6669 offset=lustre_dissect_element_llogd_body_lgd_saved_index(tvb, offset, pinfo, tree);
6671 offset=lustre_dissect_element_llogd_body_lgd_len(tvb, offset, pinfo, tree);
6673 offset=lustre_dissect_element_llogd_body_lgd_cur_offset(tvb, offset, pinfo, tree);
6676 proto_item_set_len(item, offset-old_offset);
6682 /* TODO : find when this Structure appear on the wire */
6683 /* IDL: struct llogd_conn_body { */
6684 /* IDL: struct llog_gen { */
6685 /* IDL: } lgdc_gen; */
6686 /* IDL: struct llog_logid { */
6687 /* IDL: } lgdc_logid; */
6688 /* IDL: uint32 lgdc_ctxt_idx; */
6692 lustre_dissect_element_llogd_conn_body_lgdc_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6694 //offset=lustre_dissect_struct_HASH(0x85e6038)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_gen);
6699 lustre_dissect_element_llogd_conn_body_lgdc_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6701 //offset=lustre_dissect_struct_HASH(0x85e6188)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_logid);
6706 lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6708 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_conn_body_lgdc_ctxt_idx);
6714 lustre_dissect_struct_llogd_conn_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6716 proto_item *item = NULL;
6717 proto_tree *tree = NULL;
6725 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6726 tree = proto_item_add_subtree(item, ett_lustre_llogd_conn_body);
6729 offset=lustre_dissect_element_llogd_conn_body_lgdc_gen(tvb, offset, pinfo, tree);
6731 offset=lustre_dissect_element_llogd_conn_body_lgdc_logid(tvb, offset, pinfo, tree);
6733 offset=lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvb, offset, pinfo, tree);
6736 proto_item_set_len(item, offset-old_offset);
6743 /* TODO : find when this Structure appear on the wire */
6744 /* IDL: struct lov_user_ost_data_join { */
6745 /* IDL: uint64 l_extent_start; */
6746 /* IDL: uint64 l_extent_end; */
6747 /* IDL: uint64 l_object_id; */
6748 /* IDL: uint64 l_object_gr; */
6749 /* IDL: uint32 l_ost_gen; */
6750 /* IDL: uint32 l_ost_idx; */
6754 lustre_dissect_element_lov_user_ost_data_join_l_extent_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6756 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_extent_start);
6762 lustre_dissect_element_lov_user_ost_data_join_l_extent_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6764 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_extent_end);
6770 lustre_dissect_element_lov_user_ost_data_join_l_object_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6772 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_object_id);
6778 lustre_dissect_element_lov_user_ost_data_join_l_object_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6780 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_object_gr);
6786 lustre_dissect_element_lov_user_ost_data_join_l_ost_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6788 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_ost_gen);
6794 lustre_dissect_element_lov_user_ost_data_join_l_ost_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6796 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_ost_data_join_l_ost_idx);
6802 lustre_dissect_struct_lov_user_ost_data_join(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6804 proto_item *item = NULL;
6805 proto_tree *tree = NULL;
6813 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6814 tree = proto_item_add_subtree(item, ett_lustre_lov_user_ost_data_join);
6817 offset=lustre_dissect_element_lov_user_ost_data_join_l_extent_start(tvb, offset, pinfo, tree);
6819 offset=lustre_dissect_element_lov_user_ost_data_join_l_extent_end(tvb, offset, pinfo, tree);
6821 offset=lustre_dissect_element_lov_user_ost_data_join_l_object_id(tvb, offset, pinfo, tree);
6823 offset=lustre_dissect_element_lov_user_ost_data_join_l_object_gr(tvb, offset, pinfo, tree);
6825 offset=lustre_dissect_element_lov_user_ost_data_join_l_ost_gen(tvb, offset, pinfo, tree);
6827 offset=lustre_dissect_element_lov_user_ost_data_join_l_ost_idx(tvb, offset, pinfo, tree);
6830 proto_item_set_len(item, offset-old_offset);
6835 /* TODO : find when this Structure appear on the wire */
6836 /* IDL: struct lov_user_md_join { */
6837 /* IDL: uint32 lmm_magic; */
6838 /* IDL: uint32 lmm_pattern; */
6839 /* IDL: uint64 lmm_object_id; */
6840 /* IDL: uint64 lmm_object_gr; */
6841 /* IDL: uint32 lmm_stripe_size; */
6842 /* IDL: uint32 lmm_stripe_count; */
6843 /* IDL: uint32 lmm_extent_count; */
6844 /* IDL: uint64 lmm_tree_id; */
6845 /* IDL: uint64 lmm_tree_gen; */
6846 /* IDL: struct llog_logid { */
6847 /* IDL: } lmm_array_id; */
6848 /* IDL: struct lov_user_ost_data_join { */
6849 /* IDL: } lmm_objects[0]; */
6853 lustre_dissect_element_lov_user_md_join_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6855 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_magic);
6861 lustre_dissect_element_lov_user_md_join_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6863 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_pattern);
6869 lustre_dissect_element_lov_user_md_join_lmm_object_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6871 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_object_id);
6877 lustre_dissect_element_lov_user_md_join_lmm_object_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6879 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_object_gr);
6885 lustre_dissect_element_lov_user_md_join_lmm_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6887 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_stripe_size);
6893 lustre_dissect_element_lov_user_md_join_lmm_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6895 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_stripe_count);
6901 lustre_dissect_element_lov_user_md_join_lmm_extent_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6903 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_extent_count);
6909 lustre_dissect_element_lov_user_md_join_lmm_tree_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6911 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_tree_id);
6917 lustre_dissect_element_lov_user_md_join_lmm_tree_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6919 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_tree_gen);
6925 lustre_dissect_element_lov_user_md_join_lmm_array_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6927 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_lov_user_md_join_lmm_array_id);
6932 lustre_dissect_element_lov_user_md_join_lmm_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6935 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_user_md_join_lmm_objects);
6936 //for (i = 0; i < 0; i++)
6937 // offset=lustre_dissect_element_lov_user_md_join_lmm_objects_(tvb, offset, pinfo, tree);
6943 //lustre_dissect_element_lov_user_md_join_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6945 // //offset=lustre_dissect_struct_HASH(0x85eb304)(tvb,offset,pinfo,tree,hf_lustre_lov_user_md_join_lmm_objects);
6950 lustre_dissect_struct_lov_user_md_join(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6952 proto_item *item = NULL;
6953 proto_tree *tree = NULL;
6961 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6962 tree = proto_item_add_subtree(item, ett_lustre_lov_user_md_join);
6965 offset=lustre_dissect_element_lov_user_md_join_lmm_magic(tvb, offset, pinfo, tree);
6967 offset=lustre_dissect_element_lov_user_md_join_lmm_pattern(tvb, offset, pinfo, tree);
6969 offset=lustre_dissect_element_lov_user_md_join_lmm_object_id(tvb, offset, pinfo, tree);
6971 offset=lustre_dissect_element_lov_user_md_join_lmm_object_gr(tvb, offset, pinfo, tree);
6973 offset=lustre_dissect_element_lov_user_md_join_lmm_stripe_size(tvb, offset, pinfo, tree);
6975 offset=lustre_dissect_element_lov_user_md_join_lmm_stripe_count(tvb, offset, pinfo, tree);
6977 offset=lustre_dissect_element_lov_user_md_join_lmm_extent_count(tvb, offset, pinfo, tree);
6979 offset=lustre_dissect_element_lov_user_md_join_lmm_tree_id(tvb, offset, pinfo, tree);
6981 offset=lustre_dissect_element_lov_user_md_join_lmm_tree_gen(tvb, offset, pinfo, tree);
6983 offset=lustre_dissect_element_lov_user_md_join_lmm_array_id(tvb, offset, pinfo, tree);
6985 offset=lustre_dissect_element_lov_user_md_join_lmm_objects(tvb, offset, pinfo, tree);
6988 proto_item_set_len(item, offset-old_offset);
6994 /* IDL: struct obdo { */
6995 /* IDL: uint64 o_valid; */
6996 /* IDL: uint64 o_id; */
6997 /* IDL: uint64 o_gr; */
6998 /* IDL: uint64 o_fid; */
6999 /* IDL: uint64 o_size; */
7000 /* IDL: uint64 o_mtime; */
7001 /* IDL: uint64 o_atime; */
7002 /* IDL: uint64 o_ctime; */
7003 /* IDL: uint64 o_blocks; */
7004 /* IDL: uint64 o_grant; */
7005 /* IDL: uint32 o_blksize; */
7006 /* IDL: uint32 o_mode; */
7007 /* IDL: uint32 o_uid; */
7008 /* IDL: uint32 o_gid; */
7009 /* IDL: uint32 o_flags; */
7010 /* IDL: uint32 o_nlink; */
7011 /* IDL: uint32 o_generation; */
7012 /* IDL: uint32 o_misc; */
7013 /* IDL: uint32 o_easize; */
7014 /* IDL: uint32 o_mds; */
7015 /* IDL: uint32 o_stripe_idx; */
7016 /* IDL: uint32 o_padding_1; */
7017 /* IDL: struct lustre_handle { */
7018 /* IDL: } o_handle; */
7019 /* IDL: struct llog_cookie { */
7020 /* IDL: } o_lcookie; */
7021 /* IDL: uint64 o_padding_2; */
7022 /* IDL: uint64 o_padding_3; */
7023 /* IDL: uint64 o_padding_4; */
7024 /* IDL: uint64 o_padding_5; */
7025 /* IDL: uint64 o_padding_6; */
7029 lustre_dissect_element_obdo_o_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7031 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_valid);
7037 lustre_dissect_element_obdo_o_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7039 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_id);
7045 lustre_dissect_element_obdo_o_gr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7047 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gr);
7053 lustre_dissect_element_obdo_o_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7055 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_fid);
7061 lustre_dissect_element_obdo_o_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7063 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_size);
7069 lustre_dissect_element_obdo_o_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7073 ns.secs = tvb_get_letohl(tvb,offset);
7075 proto_tree_add_time(tree, hf_lustre_obdo_o_mtime, tvb, offset, 8, &ns );
7081 lustre_dissect_element_obdo_o_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7085 ns.secs = tvb_get_letohl(tvb,offset);
7087 proto_tree_add_time(tree, hf_lustre_obdo_o_atime, tvb, offset, 8, &ns );
7094 lustre_dissect_element_obdo_o_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7098 ns.secs = tvb_get_letohl(tvb,offset);
7100 proto_tree_add_time(tree, hf_lustre_obdo_o_ctime, tvb, offset, 8, &ns );
7106 lustre_dissect_element_obdo_o_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7108 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blocks);
7114 lustre_dissect_element_obdo_o_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7116 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_grant);
7122 lustre_dissect_element_obdo_o_blksize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7124 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blksize);
7130 lustre_dissect_element_obdo_o_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7132 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_mode);
7138 lustre_dissect_element_obdo_o_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7140 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid);
7146 lustre_dissect_element_obdo_o_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7148 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid);
7154 lustre_dissect_element_obdo_o_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7156 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_flags);
7157 /* TODO rajouter ça , faire une fonction générique qui s'occupe de tous les flags d'un tableau. */
7159 /*0x00000001 : "OBD_FL_INLINEDATA",*/
7160 /*0x00000002 : "OBD_FL_OBDMDEXISTS",*/
7161 /*0x00000004 : "OBD_FL_DELORPHAN",*/
7162 /*0x00000008 : "OBD_FL_NORPC",*/
7163 /*0x00000010 : "OBD_FL_IDONLY",*/
7164 /*0x00000020 : "OBD_FL_RECREATE_OBJS",*/
7165 /*0x00000040 : "OBD_FL_DEBUG_CHECK",*/
7166 /*0x00000100 : "OBD_FL_NO_USRQUOTA",*/
7167 /*0x00000200 : "OBD_FL_NO_GRPQUOTA",*/
7168 /*0x00000400 : "OBD_FL_CREATE_CROW",*/
7169 /*0x00000800 : "OBD_FL_TRUNCLOCK",*/
7175 lustre_dissect_element_obdo_o_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7177 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_nlink);
7183 lustre_dissect_element_obdo_o_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7185 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_generation);
7191 lustre_dissect_element_obdo_o_misc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7193 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_misc);
7199 lustre_dissect_element_obdo_o_easize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7201 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_easize);
7207 lustre_dissect_element_obdo_o_mds(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7209 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_mds);
7215 lustre_dissect_element_obdo_o_stripe_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7217 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_stripe_idx);
7223 lustre_dissect_element_obdo_o_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7225 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_1);
7231 lustre_dissect_element_obdo_o_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7233 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_handle);
7238 lustre_dissect_element_obdo_o_lcookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7240 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_lcookie);
7245 lustre_dissect_element_obdo_o_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7247 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_2);
7253 lustre_dissect_element_obdo_o_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7255 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_3);
7261 lustre_dissect_element_obdo_o_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7263 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_4);
7269 lustre_dissect_element_obdo_o_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7271 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_5);
7277 lustre_dissect_element_obdo_o_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7279 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_6);
7285 lustre_dissect_struct_obdo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7287 proto_item *item = NULL;
7288 proto_tree *tree = NULL;
7296 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7297 tree = proto_item_add_subtree(item, ett_lustre_obdo);
7300 offset=lustre_dissect_element_obdo_o_valid(tvb, offset, pinfo, tree);
7302 offset=lustre_dissect_element_obdo_o_id(tvb, offset, pinfo, tree);
7304 offset=lustre_dissect_element_obdo_o_gr(tvb, offset, pinfo, tree);
7306 offset=lustre_dissect_element_obdo_o_fid(tvb, offset, pinfo, tree);
7308 offset=lustre_dissect_element_obdo_o_size(tvb, offset, pinfo, tree);
7310 offset=lustre_dissect_element_obdo_o_mtime(tvb, offset, pinfo, tree);
7312 offset=lustre_dissect_element_obdo_o_atime(tvb, offset, pinfo, tree);
7314 offset=lustre_dissect_element_obdo_o_ctime(tvb, offset, pinfo, tree);
7316 offset=lustre_dissect_element_obdo_o_blocks(tvb, offset, pinfo, tree);
7318 offset=lustre_dissect_element_obdo_o_grant(tvb, offset, pinfo, tree);
7320 offset=lustre_dissect_element_obdo_o_blksize(tvb, offset, pinfo, tree);
7322 offset=lustre_dissect_element_obdo_o_mode(tvb, offset, pinfo, tree);
7324 offset=lustre_dissect_element_obdo_o_uid(tvb, offset, pinfo, tree);
7326 offset=lustre_dissect_element_obdo_o_gid(tvb, offset, pinfo, tree);
7328 offset=lustre_dissect_element_obdo_o_flags(tvb, offset, pinfo, tree);
7330 offset=lustre_dissect_element_obdo_o_nlink(tvb, offset, pinfo, tree);
7332 offset=lustre_dissect_element_obdo_o_generation(tvb, offset, pinfo, tree);
7334 offset=lustre_dissect_element_obdo_o_misc(tvb, offset, pinfo, tree);
7336 offset=lustre_dissect_element_obdo_o_easize(tvb, offset, pinfo, tree);
7338 offset=lustre_dissect_element_obdo_o_mds(tvb, offset, pinfo, tree);
7340 offset=lustre_dissect_element_obdo_o_stripe_idx(tvb, offset, pinfo, tree);
7342 offset=lustre_dissect_element_obdo_o_padding_1(tvb, offset, pinfo, tree);
7344 offset=lustre_dissect_element_obdo_o_handle(tvb, offset, pinfo, tree);
7346 offset=lustre_dissect_element_obdo_o_lcookie(tvb, offset, pinfo, tree);
7348 offset=lustre_dissect_element_obdo_o_padding_2(tvb, offset, pinfo, tree);
7350 offset=lustre_dissect_element_obdo_o_padding_3(tvb, offset, pinfo, tree);
7352 offset=lustre_dissect_element_obdo_o_padding_4(tvb, offset, pinfo, tree);
7354 offset=lustre_dissect_element_obdo_o_padding_5(tvb, offset, pinfo, tree);
7356 offset=lustre_dissect_element_obdo_o_padding_6(tvb, offset, pinfo, tree);
7359 proto_item_set_len(item, offset-old_offset);
7366 /* IDL: struct ost_body { */
7367 /* IDL: struct obdo { */
7372 lustre_dissect_element_ost_body_oa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7374 offset=lustre_dissect_struct_obdo(tvb,offset,pinfo,tree,hf_lustre_ost_body_oa);
7379 lustre_dissect_struct_ost_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7381 proto_item *item = NULL;
7382 proto_tree *tree = NULL;
7390 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7391 tree = proto_item_add_subtree(item, ett_lustre_ost_body);
7394 offset=lustre_dissect_element_ost_body_oa(tvb, offset, pinfo, tree);
7397 proto_item_set_len(item, offset-old_offset);
7403 /* TODO : find when this Structure appear on the wire */
7404 /* IDL: struct qunit_data { */
7405 /* IDL: uint32 qd_id; */
7406 /* IDL: uint32 qd_flags; */
7407 /* IDL: uint64 qd_count; */
7408 /* IDL: uint64 qd_qunit; */
7409 /* IDL: uint64 padding; */
7413 lustre_dissect_element_qunit_data_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7415 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_id);
7421 lustre_dissect_element_qunit_data_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7423 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_flags);
7429 lustre_dissect_element_qunit_data_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7431 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_count);
7437 lustre_dissect_element_qunit_data_qd_qunit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7439 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_qunit);
7445 lustre_dissect_element_qunit_data_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7447 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_padding);
7453 lustre_dissect_struct_qunit_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7455 proto_item *item = NULL;
7456 proto_tree *tree = NULL;
7464 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7465 tree = proto_item_add_subtree(item, ett_lustre_qunit_data);
7468 offset=lustre_dissect_element_qunit_data_qd_id(tvb, offset, pinfo, tree);
7470 offset=lustre_dissect_element_qunit_data_qd_flags(tvb, offset, pinfo, tree);
7472 offset=lustre_dissect_element_qunit_data_qd_count(tvb, offset, pinfo, tree);
7474 offset=lustre_dissect_element_qunit_data_qd_qunit(tvb, offset, pinfo, tree);
7476 offset=lustre_dissect_element_qunit_data_padding(tvb, offset, pinfo, tree);
7479 proto_item_set_len(item, offset-old_offset);
7484 /* TODO : find when this Structure appear on the wire */
7485 /* IDL: struct qunit_data_old2 { */
7486 /* IDL: uint32 qd_id; */
7487 /* IDL: uint32 qd_flags; */
7488 /* IDL: uint64 qd_count; */
7492 lustre_dissect_element_qunit_data_old2_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7494 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_id);
7500 lustre_dissect_element_qunit_data_old2_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7502 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_flags);
7508 lustre_dissect_element_qunit_data_old2_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7510 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_count);
7516 lustre_dissect_struct_qunit_data_old2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7518 proto_item *item = NULL;
7519 proto_tree *tree = NULL;
7527 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7528 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old2);
7531 offset=lustre_dissect_element_qunit_data_old2_qd_id(tvb, offset, pinfo, tree);
7533 offset=lustre_dissect_element_qunit_data_old2_qd_flags(tvb, offset, pinfo, tree);
7535 offset=lustre_dissect_element_qunit_data_old2_qd_count(tvb, offset, pinfo, tree);
7538 proto_item_set_len(item, offset-old_offset);
7543 /* TODO : find when this Structure appear on the wire */
7544 /* IDL: struct qunit_data_old { */
7545 /* IDL: uint32 qd_id; */
7546 /* IDL: uint32 qd_type; */
7547 /* IDL: uint32 qd_count; */
7548 /* IDL: uint32 qd_isblk; */
7552 lustre_dissect_element_qunit_data_old_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7554 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_id);
7560 lustre_dissect_element_qunit_data_old_qd_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7562 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_type);
7568 lustre_dissect_element_qunit_data_old_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7570 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_count);
7576 lustre_dissect_element_qunit_data_old_qd_isblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7578 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_isblk);
7584 lustre_dissect_struct_qunit_data_old(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7586 proto_item *item = NULL;
7587 proto_tree *tree = NULL;
7595 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7596 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old);
7599 offset=lustre_dissect_element_qunit_data_old_qd_id(tvb, offset, pinfo, tree);
7601 offset=lustre_dissect_element_qunit_data_old_qd_type(tvb, offset, pinfo, tree);
7603 offset=lustre_dissect_element_qunit_data_old_qd_count(tvb, offset, pinfo, tree);
7605 offset=lustre_dissect_element_qunit_data_old_qd_isblk(tvb, offset, pinfo, tree);
7608 proto_item_set_len(item, offset-old_offset);
7614 /* ------------------------------------------------------------------------- */
7616 * the length of the string is the current buflen
7617 * @tvb the packet buff
7618 * @offset the current offset
7621 * @hf_index : the corresponding header field
7622 * @buf_num : the corresponding bufnumber of the string (we use it to
7623 * determine the string length), must respect : 0<bufnum<=bufmax_in_paquet
7626 lustre_dissect_element_string (tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
7628 proto_item *item = NULL;
7635 // if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb,
7636 // offset, -1, TRUE); // tree = proto_item_add_subtree(item,
7639 if(buf_num+1>LUSTRE_BUFCOUNT)
7642 string_len = tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF + 4 * buf_num) ; /* 4 because a buflen is on a guint32 */
7643 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
7645 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " filename : %s", tvb_get_string(tvb,offset,string_len) );
7648 proto_item_set_len(item, offset-old_offset);
7649 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* after a string we must be aligned to 8 bytes. */
7655 /* ------------------------------------------------------------------------- */
7656 /* dissect raw data */
7658 lustre_dissect_element_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
7660 proto_item *item = NULL;
7666 if(buf_num+1>LUSTRE_BUFCOUNT)
7669 data_len = tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF + 4 * buf_num) ; /* 4 because a buflen is on a guint32 */
7670 proto_tree_add_item(parent_tree, hf_index, tvb, offset, data_len, TRUE);
7673 proto_item_set_len(item, offset-old_offset);
7674 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* align on 8 bytes */
7678 /* ------------------------------------------------------------------------ */
7681 static int reint_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
7685 opcode = tvb_get_letohl(tvb,offset);
7689 /* [eadata][cookie_data][ldlm_request] */
7690 offset=lustre_dissect_struct_mds_rec_create(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create);
7691 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
7692 hf_lustre_ldlm_request) ;
7695 /* [rec_create][filename][tgt.. Ã 0 pour l'instant][ldlm_request] */
7696 offset=lustre_dissect_struct_mds_rec_create(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create);
7697 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
7698 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2); /* this string is all the time =="\0"*/
7699 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
7700 hf_lustre_ldlm_request) ;
7703 /*[mds_rec_link][filename][ldlm_req] */
7704 offset=lustre_dissect_struct_mds_rec_link(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link);
7705 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
7706 hf_lustre_ldlm_request) ;
7707 /*TODO : need to be check*/
7709 case REINT_UNLINK : /* mds_unlink_unpack : [mds_rec_unlink][filename][ldlm_req] */
7710 /* [mds_rec_unlink][filename][ldlm_req][..]*/
7711 offset=lustre_dissect_struct_mds_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink);
7712 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
7713 if ( (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF +2))) == 112) /* TODO : ugly .. but
7714 for now we have to do this */
7715 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
7717 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
7720 case REINT_RENAME : /*mds_rename_unpack : [mds_rec_rename][filename source][filename target_name][ldlm_request] */
7721 offset=lustre_dissect_struct_mds_rec_rename(tvb, offset, pinfo, tree, hf_lustre_mds_rec_link);
7722 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+1);
7723 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_new_name, LUSTRE_REQ_REC_OFF+2);
7724 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
7726 case REINT_OPEN : /* [rec_create][filename][eadata] */
7727 offset=lustre_dissect_struct_mds_rec_create(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create);
7728 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
7729 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2); /* TODO : replace with hf_eadata */
7740 /* dissect a connect message */
7742 lustre_dissect_generic_connect(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7744 /*TODO : add a cuuid and target uid */
7745 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
7746 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
7747 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mds_body_handle);
7748 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
7753 lustre_ost_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
7758 case OST_REPLY: /* obsolete so nothing */
7761 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7764 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7766 case OST_READ: /* [OST_BODY][obd_ioobj][niobuf_remote] for request, [OST_BODY] for reply */
7767 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7768 if(pb_type==PTL_RPC_MSG_REQUEST){
7769 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
7770 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_niobuf_remote);
7774 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo,
7775 tree, hf_lustre_ost_body) ; /* [ost_body] in both case */
7776 if(pb_type==PTL_RPC_MSG_REQUEST)
7778 for (i=0;i<tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+ 4*(LUSTRE_REQ_REC_OFF+1))/24;i++)
7779 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
7780 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_obd_ioobj);
7782 if(pb_type==PTL_RPC_MSG_REPLY) /* niocount *[uint32], but niocount is in request message, so
7783 we use the bufcount */
7785 for (i=0;i<tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)-2;i++) /* -2 because we have already dissect 2 buffers : ptl + ost */
7786 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_nio);
7787 if (i & 1 ) /* if odd we add extra padding */
7788 offset=dissect_uint32(tvb, offset, pinfo, tree,
7789 hf_lustre_extra_padding);
7793 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7796 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7797 if(pb_type==PTL_RPC_MSG_REQUEST) /* [ost_body][-si buf- ldlm_request] */
7798 if ( (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF +1))) != 0)
7799 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ost_body);
7800 /* TODO : test that */
7803 if(pb_type==PTL_RPC_MSG_REQUEST) /* [key] */
7805 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF+1);
7807 if (pb_type==PTL_RPC_MSG_REPLY)
7809 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF); /* val */
7814 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
7815 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
7816 if (pb_type==PTL_RPC_MSG_REPLY)
7817 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
7819 case OST_DISCONNECT: /* [nothing] */
7821 case OST_PUNCH: /* [ost_body] */
7822 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7824 case OST_OPEN: /* [nothing] in the code maybee obsolete */
7826 case OST_CLOSE: /* [nothing] in the code maybee obsolete */
7828 case OST_STATFS: /* [obd_statfs] check that : TODO */
7829 if(LUSTRE_BUFCOUNT>=2)
7830 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
7833 /*[ost_body] in both case */
7834 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
7837 if(pb_type==PTL_RPC_MSG_REQUEST)
7839 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
7840 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
7842 /* if Key = "evict_by_nid" --> need to be process.. TODO */
7844 case OST_QUOTACHECK:
7845 if(pb_type==PTL_RPC_MSG_REQUEST)
7846 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
7847 /* nothing in reply */
7850 /*[obd_quotactl in both case]*/
7851 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
7852 case OST_QUOTA_ADJUST_QUNIT:
7853 /* [quota_adjust_qunit] in both case ? */
7854 offset=lustre_dissect_struct_quota_adjust_qunit(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit) ;
7861 lustre_mds_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
7864 case MDS_DISCONNECT:
7869 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7872 if(pb_type==PTL_RPC_MSG_REQUEST)
7874 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7875 /*if(reply) : [nothing]*/
7878 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7879 if(pb_type==PTL_RPC_MSG_REQUEST)
7880 /*[string_xattr_name]*/
7881 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+1);
7882 if(pb_type==PTL_RPC_MSG_REPLY)
7884 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+1);
7887 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7888 /* TODO [ something ??? ] */
7890 case MDS_GETATTR_NAME:
7891 if(pb_type==PTL_RPC_MSG_REQUEST)
7893 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7894 /*[nothing in reply]*/
7896 case MDS_DONE_WRITING:
7898 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7900 case MDS_PIN: /* repbody.. */
7902 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7906 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7909 case MDS_CLOSE: /* TODO : check the corresponding structure in lustre code */
7910 if(pb_type==PTL_RPC_MSG_REQUEST)
7911 { /* [mds_body] [lov_mds_md][log_cookie] */
7912 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7913 if(LUSTRE_BUFCOUNT>=3)
7914 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1);
7915 if(LUSTRE_BUFCOUNT>=4)
7916 if( tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0)
7917 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
7919 if(pb_type==PTL_RPC_MSG_REPLY)
7920 { /* [mds_body][md][cookie] TODO : check that (reread the code about shrink in lustre) */
7921 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7922 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0)
7923 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_md_data,LUSTRE_REQ_REC_OFF+1); /* key */
7924 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0)
7925 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
7930 if(pb_type==PTL_RPC_MSG_REPLY)
7932 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
7933 /*in request : [nothing]*/
7937 /* [mds_body] but with some different interpration, need to modify the hf : TODO */
7938 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7942 /* the structure depend on the intent_opcode */
7943 if(pb_type==PTL_RPC_MSG_REQUEST)
7944 offset=reint_opcode_process(tvb, offset, pinfo, tree);
7945 if(pb_type==PTL_RPC_MSG_REPLY)
7947 /*[mds_body][??][llog_logid_rec] */
7948 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
7949 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0){
7950 /* OPEN, RENAME, and UNLINK */
7951 if(tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0){ /* rec_unlink or rec_rename */
7952 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
7953 LUSTRE_REQ_REC_OFF+1); // replace by eadata TODO TODO //
7954 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0) /* with unlink or rename we have 4 buffers handler.c line 1691*/
7955 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
7956 hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2); // replace withe eadata TODO TODO //
7963 if(pb_type==PTL_RPC_MSG_REQUEST){
7965 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
7966 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
7967 //offset=add_extra_padding(tvb,offset,pinfo,tree);
7969 /*nothing en reply*/
7971 case MDS_QUOTACHECK:
7972 /* [obd_quotactl] */
7973 if(pb_type==PTL_RPC_MSG_REQUEST)
7974 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
7977 /* [obd_quotactl] in both case*/
7978 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
7981 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
7982 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
7983 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
7984 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
7996 lustre_ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8002 /*[ldlm_request] if we have one more buffer it's [intent_opcode] and the opcode give us the
8003 * corresponding intent structure [intent] */
8004 if(pb_type==PTL_RPC_MSG_REQUEST)
8006 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8007 if (LUSTRE_BUFCOUNT>=3)
8008 offset=lustre_dissect_struct_ldlm_intent(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent);
8010 if(pb_type==PTL_RPC_MSG_REPLY)
8015 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply,&ldlm_type) ;
8016 if(LUSTRE_BUFCOUNT>2 && (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*2) == 40))
8017 /* TODO :this code need to be check and test, the lustre corresponding code is'nt explicit, so
8018 * not sure to have this buffer, but in example it works fine
8020 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8022 if(LUSTRE_BUFCOUNT>2)
8024 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
8025 /*g_print("buflen_off+4*3 = %d", tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*LUSTRE_DLM_INTENT_REC_OFF));*/
8026 if(LUSTRE_BUFCOUNT>2 &&
8027 (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*LUSTRE_DLM_INTENT_REC_OFF) > 0))
8029 magic=tvb_get_letohl(tvb, offset); /* TODO : replace this with a macro */
8033 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1);
8035 case LOV_MAGIC_JOIN:
8036 offset=lustre_dissect_struct_lov_mds_md_join(tvb, offset, pinfo, tree,
8037 hf_lustre_lov_mds_md_join);
8040 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8041 hf_lustre_extra_padding, LUSTRE_DLM_INTENT_REC_OFF);
8050 if(pb_type==PTL_RPC_MSG_REQUEST)
8052 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8053 if(pb_type==PTL_RPC_MSG_REPLY)
8055 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply, NULL) ;
8059 if(pb_type==PTL_RPC_MSG_REQUEST)
8061 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8062 /*[nothing en reply]*/
8065 case LDLM_BL_CALLBACK: /* TODO : check the corresponding code in lustre*/
8066 if(pb_type==PTL_RPC_MSG_REQUEST)
8068 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8071 case LDLM_CP_CALLBACK:
8072 if(pb_type==PTL_RPC_MSG_REQUEST){
8073 /*[ldlm_request] if the third buffer exist we have [lvb data] so it's [ost_lvb] : TODO :
8075 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8076 if(LUSTRE_BUFCOUNT>=3)
8077 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8079 /*reply : [nothing] */
8082 case LDLM_GL_CALLBACK:
8083 if(pb_type==PTL_RPC_MSG_REQUEST)
8085 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8087 if(pb_type==PTL_RPC_MSG_REPLY)
8088 /*reply : [ost_lvb] <-- need to be check*/
8089 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8099 lustre_mgs_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8103 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8104 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8105 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
8106 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8108 case MGS_DISCONNECT :
8111 case MGS_EXCEPTION : /* node died, etc. */
8114 case MGS_TARGET_REG:
8115 /*[mgs_target_info], mgs_handler.c mgs_handle_target_reg() called whenever a target startup*/
8116 offset=lustre_dissect_struct_mgs_target_info(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info);
8118 case MGS_TARGET_DEL:
8122 /*[mgs_send_param], mgs_set_info_rpc()*/
8123 offset=lustre_dissect_struct_mgs_send_param(tvb,offset,pinfo,tree,hf_lustre_mgs_send_param);
8132 lustre_odb_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8138 case OBD_LOG_CANCEL:
8141 case OBD_QC_CALLBACK:
8142 if(pb_type==PTL_RPC_MSG_REQUEST)
8143 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8144 /*if (request) : [nothing]*/
8153 lustre_llog_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8156 case LLOG_ORIGIN_HANDLE_CREATE : /* in handler.c */
8157 /*[llogd_body] (reply and request)*/
8158 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8159 if(pb_type==PTL_RPC_MSG_REQUEST) /*[filename] */
8160 if (LUSTRE_BUFCOUNT>2)
8161 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_name,
8162 LUSTRE_REQ_REC_OFF+1);
8164 case LLOG_ORIGIN_HANDLE_NEXT_BLOCK :/* in handler.c */
8165 /* [llogd_body][???]
8166 * the size of second buf is LLOG_CHKUNK_SIZE, so it's maybee only bulk data */
8167 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8168 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8169 LUSTRE_REQ_REC_OFF + 1 );
8171 case LLOG_ORIGIN_HANDLE_READ_HEADER:/* in handler.c */
8172 if(pb_type==PTL_RPC_MSG_REQUEST){
8173 /* [llogd_body][llog_log_hdr] */
8174 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8175 if(LUSTRE_BUFCOUNT>2)
8176 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8177 hf_lustre_llogd_log_hdr);
8179 if(pb_type==PTL_RPC_MSG_REPLY) /* [llog_log_hdr] */
8180 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8181 hf_lustre_llogd_log_hdr);
8183 case LLOG_ORIGIN_HANDLE_WRITE_REC : /* I think this is obsolete */
8186 case LLOG_ORIGIN_HANDLE_CLOSE :/* handler.c */
8189 case LLOG_ORIGIN_CONNECT : /* ost_handler.c */
8191 case LLOG_CATINFO : /*in handler.c */
8192 if(pb_type==PTL_RPC_MSG_REQUEST){
8193 /* [keyword][if keyword=config [char*] else [nothing]] */
8194 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_keyword,
8195 LUSTRE_REQ_REC_OFF);
8196 if(strcmp(tvb_get_string(tvb, LUSTRE_REQ_REC_OFF, tvb_get_letohl(tvb,
8197 LUSTRE_BUFLEN_OFF+4*LUSTRE_REQ_REC_OFF)), "config")==0) /* if(keyword ==
8199 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_client,
8200 LUSTRE_REQ_REC_OFF+1);
8202 if(pb_type==PTL_RPC_MSG_REPLY)
8203 /*[buf] sizeof = llog_chunk_size*/
8204 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8205 LUSTRE_REQ_REC_OFF + 1 );
8206 /* TODO TODO : check if it's note a catid */
8208 case LLOG_ORIGIN_HANDLE_PREV_BLOCK : /* in handler.c */
8209 /* [llogd_body] in both case */
8210 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8211 if(pb_type==PTL_RPC_MSG_REPLY)
8212 /*[buf] size of llog_chunk_size*/
8213 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8214 LUSTRE_REQ_REC_OFF + 1 );
8216 case LLOG_ORIGIN_HANDLE_DESTROY : /* in handler.c */
8217 /*[llogd_body] in both case*/
8218 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8227 /* process lustre opcode :
8228 check if opcode is in range_opcode, and call the corresponding opcode process function */
8230 lustre_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8232 if (opc <= OST_LAST_OPC) /* OST opcodes */
8233 offset=lustre_ost_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8235 if ( (opc >= MDS_FIRST_OPC) && (opc < MDS_LAST_OPC )) /* MDS opcodes */
8236 offset=lustre_mds_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8238 if ( (opc >= LDLM_FIRST_OPC) && (opc < LDLM_LAST_OPC) ) /*LDLM Opcodes*/
8239 offset=lustre_ldlm_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8241 if( (opc>= MGS_FIRST_OPC) && (opc <= MGS_LAST_OPC)) /* MGS Opcodes */
8242 offset=lustre_mgs_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8244 if( (opc>= OBD_FIRST_OPC) && (opc<=OBD_LAST_OPC)) /* ODB Opcodes */
8245 offset=lustre_odb_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8247 if( (opc>=LLOG_FIRST_OPC) && (opc<=LLOG_LAST_OPC)) /* LLOG Opcodes */
8248 offset=lustre_llog_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8253 /* ----------------------------------------------- */
8254 /* add an extra padding to be aligned to 8bytes */
8256 add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
8258 guint32 padding_len;
8260 padding_len = (8- offset%8)%8;
8262 proto_tree_add_item(tree, hf_lustre_extra_padding , tvb, offset, padding_len, TRUE);
8263 offset+=padding_len;
8267 /* ----------------------------------------------- */
8270 ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_)
8272 /* all corresponding code is in mdc_locks.c in function mdc_enqueue() */
8273 /* if 0x0003 we have CREAT + OPEN
8275 if (intent_opc & IT_OPEN) {
8276 /* mdc_intent_open_pack(), d'où [opcode][mdc_rec_create][name][eada] */
8277 offset=lustre_dissect_struct_mds_rec_create(tvb, offset, pinfo, tree, hf_lustre_mds_rec_create);
8278 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8279 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
8280 LUSTRE_DLM_INTENT_REC_OFF+2); /* TODO : replace hf with eada hf */
8283 if (intent_opc & IT_UNLINK){
8284 /* mdc_intent_unlink_pack(), d'où [opcode][mds_rec_unlink][name] */
8285 offset=lustre_dissect_struct_mds_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mds_rec_unlink);
8286 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8288 if (intent_opc & IT_GETATTR){
8289 /* mdc_intent_lookup_pack, d'où [mds_body][name] */
8290 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
8291 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8294 if (intent_opc & IT_LOOKUP){
8295 /* mdc_intent_lookup_pack, d'où [mds_body][name] */
8296 offset=lustre_dissect_struct_mds_body(tvb, offset, pinfo, tree, hf_lustre_mds_body) ;
8297 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8304 /* ----------------------------------------------- */
8305 /* function to test if the packet is entirely dissected add BUG in PROTOCOL COL when it's not*/
8307 sanity_check(tvbuff_t *tvb, packet_info *pinfo, guint32 val_offset _U_)
8309 guint32 magic_number ;
8310 guint32 somme_buflen = 0 ;
8313 magic_number = tvb_get_letohl(tvb, 8);
8316 for (i=0;i<LUSTRE_BUFCOUNT;i++)
8317 somme_buflen += tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF +
8318 4 * i ) + (8- tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4 * i)%8)%8; /* we add the
8326 if(val_offset!=somme_buflen){
8327 /*g_print("somme_buflen=%d, val_offset = %d \n",somme_buflen,val_offset);*/
8328 if (check_col(pinfo->cinfo, COL_INFO)) {
8329 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
8336 /* IDL: struct lustre_msg_v1 { */
8337 /* IDL: struct lustre_handle { */
8338 /* IDL: } lm_handle; */
8339 /* IDL: uint32 lm_magic; */
8340 /* IDL: uint32 lm_type; */
8341 /* IDL: uint32 lm_version; */
8342 /* IDL: uint32 lm_opc; */
8343 /* IDL: uint64 lm_last_xid; */
8344 /* IDL: uint64 lm_last_committed; */
8345 /* IDL: uint64 lm_transno; */
8346 /* IDL: uint32 lm_status; */
8347 /* IDL: uint32 lm_flags; */
8348 /* IDL: uint32 lm_conn_cnt; */
8349 /* IDL: uint32 lm_bufcount; */
8350 /* IDL: uint32 lm_buflens[0]; */
8355 lustre_dissect_element_msg_v1_lm_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8357 /*TODO : replace with a v1 handle*/
8358 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_lustre_msg_v1_lm_handle);
8363 lustre_dissect_element_msg_v1_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8365 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_magic);
8371 lustre_dissect_element_msg_v1_lm_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8373 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_type);
8379 lustre_dissect_element_msg_v1_lm_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8381 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_version);
8387 lustre_dissect_element_msg_v1_lm_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8389 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_opc);
8395 lustre_dissect_element_msg_v1_lm_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8397 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_xid);
8403 lustre_dissect_element_msg_v1_lm_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8405 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_committed);
8411 lustre_dissect_element_msg_v1_lm_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8413 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_transno);
8419 lustre_dissect_element_msg_v1_lm_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8421 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_status);
8427 lustre_dissect_element_msg_v1_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8429 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_flags);
8435 lustre_dissect_element_msg_v1_lm_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8437 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_conn_cnt);
8443 lustre_dissect_element_msg_v1_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8445 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_bufcount);
8451 lustre_dissect_element_msg_v1_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8453 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_buflens);
8459 lustre_dissect_element_msg_v1_lm_buflens(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8462 gboolean extra_padding ;
8465 bufcount=tvb_get_letohl(tvb, offset-4); /* TODO : replace with a macro */
8467 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
8472 for (i=0;i<bufcount;i++) {
8473 offset=lustre_dissect_element_msg_v1_lm_buflens_(tvb, offset, pinfo, tree);
8477 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
8486 lustre_dissect_struct_msg_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
8488 proto_item *item = NULL;
8489 proto_tree *tree = NULL;
8491 guint32 opc ; /* opcode */
8492 guint32 pb_type; /* type : {request, reply, error} */
8498 // if (parent_tree) {
8499 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8500 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v1);
8503 offset=lustre_dissect_element_msg_v1_lm_handle(tvb, offset, pinfo, tree);
8505 offset=lustre_dissect_element_msg_v1_lm_magic(tvb, offset, pinfo, tree);
8507 pb_type = tvb_get_letohl(tvb, offset);
8508 offset=lustre_dissect_element_msg_v1_lm_type(tvb, offset, pinfo, tree);
8510 offset=lustre_dissect_element_msg_v1_lm_version(tvb, offset, pinfo, tree);
8511 opc = tvb_get_letohl(tvb, offset);
8512 offset=lustre_dissect_element_msg_v1_lm_opc(tvb, offset, pinfo, tree);
8514 offset=lustre_dissect_element_msg_v1_lm_last_xid(tvb, offset, pinfo, tree);
8516 offset=lustre_dissect_element_msg_v1_lm_last_committed(tvb, offset, pinfo, tree);
8518 offset=lustre_dissect_element_msg_v1_lm_transno(tvb, offset, pinfo, tree);
8520 offset=lustre_dissect_element_msg_v1_lm_status(tvb, offset, pinfo, tree);
8522 offset=lustre_dissect_element_msg_v1_lm_flags(tvb, offset, pinfo, tree);
8524 offset=lustre_dissect_element_msg_v1_lm_conn_cnt(tvb, offset, pinfo, tree);
8526 offset=lustre_dissect_element_msg_v1_lm_bufcount(tvb, offset, pinfo, tree);
8528 offset=lustre_dissect_element_msg_v1_lm_buflens(tvb, offset, pinfo, tree);
8531 proto_item_set_len(item, offset-old_offset);
8533 /* display some nice infos */
8534 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
8535 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
8537 offset=lustre_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
8542 /* IDL: struct ptlrpc_body { */
8543 /* IDL: struct lustre_handle { */
8544 /* IDL: } pb_handle; */
8545 /* IDL: uint32 pb_type; */
8546 /* IDL: uint32 pb_version; */
8547 /* IDL: uint32 pb_opc; */
8548 /* IDL: uint32 pb_status; */
8549 /* IDL: uint64 pb_last_xid; */
8550 /* IDL: uint64 pb_last_seen; */
8551 /* IDL: uint64 pb_last_committed; */
8552 /* IDL: uint64 pb_transno; */
8553 /* IDL: uint32 pb_flags; */
8554 /* IDL: uint32 pb_op_flags; */
8555 /* IDL: uint32 pb_conn_cnt; */
8556 /* IDL: uint32 pb_timeout; */
8557 /* IDL: uint32 pb_service_time; */
8558 /* IDL: uint32 pb_limit; */
8559 /* IDL: uint64 pb_slv; */
8563 lustre_dissect_element_ptlrpc_body_pb_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8565 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ptlrpc_body_pb_handle);
8571 lustre_dissect_element_ptlrpc_body_pb_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8573 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_type);
8579 lustre_dissect_element_ptlrpc_body_pb_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8581 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_version);
8587 lustre_dissect_element_ptlrpc_body_pb_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8589 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_opc);
8595 lustre_dissect_element_ptlrpc_body_pb_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8597 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_status);
8603 lustre_dissect_element_ptlrpc_body_pb_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8605 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_xid);
8611 lustre_dissect_element_ptlrpc_body_pb_last_seen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8613 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_seen);
8619 lustre_dissect_element_ptlrpc_body_pb_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8621 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_committed);
8627 lustre_dissect_element_ptlrpc_body_pb_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8629 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_transno);
8635 lustre_dissect_element_ptlrpc_body_pb_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8637 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_flags);
8643 lustre_dissect_element_ptlrpc_body_pb_op_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8645 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_op_flags);
8651 lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8653 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_conn_cnt);
8659 lustre_dissect_element_ptlrpc_body_pb_timeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8661 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_timeout);
8667 lustre_dissect_element_ptlrpc_body_pb_service_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8669 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_service_time);
8675 lustre_dissect_element_ptlrpc_body_pb_limit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8677 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_limit);
8683 lustre_dissect_element_ptlrpc_body_pb_slv(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8685 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_slv);
8691 lustre_dissect_struct_ptlrpc_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_len _U_ )
8693 proto_item *item = NULL;
8694 proto_tree *tree = NULL;
8697 guint32 opc, pb_type;
8704 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8705 tree = proto_item_add_subtree(item, ett_lustre_ptlrpc_body);
8708 offset=lustre_dissect_element_ptlrpc_body_pb_handle(tvb, offset, pinfo, tree);
8710 pb_type = tvb_get_letohl(tvb, offset);
8711 //g_print("msg_v2_lm_type_offset = %d \n" , offset) ;
8713 offset=lustre_dissect_element_ptlrpc_body_pb_type(tvb, offset, pinfo, tree);
8715 offset=lustre_dissect_element_ptlrpc_body_pb_version(tvb, offset, pinfo, tree);
8717 // g_print("msg_v2_opcode_offset %d \n", offset);
8718 opc = tvb_get_letohl(tvb, offset);
8719 offset=lustre_dissect_element_ptlrpc_body_pb_opc(tvb, offset, pinfo, tree);
8721 offset=lustre_dissect_element_ptlrpc_body_pb_status(tvb, offset, pinfo, tree);
8723 offset=lustre_dissect_element_ptlrpc_body_pb_last_xid(tvb, offset, pinfo, tree);
8725 offset=lustre_dissect_element_ptlrpc_body_pb_last_seen(tvb, offset, pinfo, tree);
8727 offset=lustre_dissect_element_ptlrpc_body_pb_last_committed(tvb, offset, pinfo, tree);
8729 offset=lustre_dissect_element_ptlrpc_body_pb_transno(tvb, offset, pinfo, tree);
8731 offset=lustre_dissect_element_ptlrpc_body_pb_flags(tvb, offset, pinfo, tree);
8733 offset=lustre_dissect_element_ptlrpc_body_pb_op_flags(tvb, offset, pinfo, tree);
8735 offset=lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvb, offset, pinfo, tree);
8737 offset=lustre_dissect_element_ptlrpc_body_pb_timeout(tvb, offset, pinfo, tree);
8739 offset=lustre_dissect_element_ptlrpc_body_pb_service_time(tvb, offset, pinfo, tree);
8741 offset=lustre_dissect_element_ptlrpc_body_pb_limit(tvb, offset, pinfo, tree);
8743 offset=lustre_dissect_element_ptlrpc_body_pb_slv(tvb, offset, pinfo, tree);
8747 proto_item_set_len(item, offset-old_offset);
8749 /* display some nice infos */
8750 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
8751 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
8753 /* on utilise parent_tree pour bien distinguer les différents buffers (relatifs à bufcount + buflen), il s'agit d'un choix de présentation */
8754 offset=lustre_opcode_process(tvb, offset, pinfo, parent_tree, opc, pb_type);
8756 sanity_check(tvb,pinfo,offset-old_offset);
8762 /* IDL: struct lustre_msg_v2 { */
8763 /* IDL: uint32 lm_bufcount; */
8764 /* IDL: uint32 lm_secflvr; */
8765 /* IDL: uint32 lm_magic; */
8766 /* IDL: uint32 lm_repsize; */
8767 /* IDL: uint32 lm_cksum; */
8768 /* IDL: uint32 lm_flags; */
8769 /* IDL: uint32 lm_padding_2; */
8770 /* IDL: uint32 lm_padding_3; */
8771 /* IDL: uint32 lm_buflens[0]; */
8775 lustre_dissect_element_msg_v2_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8777 proto_tree_add_item(tree, hf_lustre_lustre_msg_v2_lm_bufcount, tvb, offset, 4, TRUE);
8783 lustre_dissect_element_msg_v2_lm_secflvr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8785 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_secflvr);
8791 lustre_dissect_element_msg_v2_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8793 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_magic);
8799 lustre_dissect_element_msg_v2_lm_repsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8801 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_repsize);
8807 lustre_dissect_element_msg_v2_lm_cksum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8809 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_cksum);
8815 lustre_dissect_element_msg_v2_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8817 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_flags);
8823 lustre_dissect_element_msg_v2_lm_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8825 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_2);
8831 lustre_dissect_element_msg_v2_lm_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8833 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_3);
8841 lustre_dissect_element_msg_v2_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8843 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_buflens);
8849 lustre_dissect_struct_msg_v2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
8851 proto_item *item = NULL;
8852 proto_tree *tree = NULL;
8856 guint32 buf_len_offset;
8857 guint32 current_buf_len ;
8858 gboolean extra_padding ;
8862 /* to get a light display */
8864 // if (parent_tree) {
8865 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8866 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v2);
8869 bufcount = tvb_get_letohl(tvb,offset);
8870 offset=lustre_dissect_element_msg_v2_lm_bufcount(tvb, offset, pinfo, tree);
8872 offset=lustre_dissect_element_msg_v2_lm_secflvr(tvb, offset, pinfo, tree);
8874 offset=lustre_dissect_element_msg_v2_lm_magic(tvb, offset, pinfo, tree);
8876 offset=lustre_dissect_element_msg_v2_lm_repsize(tvb, offset, pinfo, tree);
8878 offset=lustre_dissect_element_msg_v2_lm_cksum(tvb, offset, pinfo, tree);
8880 offset=lustre_dissect_element_msg_v2_lm_flags(tvb, offset, pinfo, tree);
8882 offset=lustre_dissect_element_msg_v2_lm_padding_2(tvb, offset, pinfo, tree);
8884 offset=lustre_dissect_element_msg_v2_lm_padding_3(tvb, offset, pinfo, tree);
8888 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
8893 buf_len_offset=offset ;
8894 for (i=0;i<bufcount;i++) {
8895 offset=lustre_dissect_element_msg_v2_lm_buflens_(tvb, offset, pinfo, tree);
8900 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
8905 current_buf_len = tvb_get_letohl(tvb, buf_len_offset);
8906 offset=lustre_dissect_struct_ptlrpc_body(tvb,offset, pinfo, tree, hf_lustre_ptlrpc_body_pb, current_buf_len);
8908 proto_item_set_len(item, offset-old_offset);
8917 dissect_lustre(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
8919 if (check_col(pinfo->cinfo, COL_PROTOCOL))
8920 col_set_str(pinfo->cinfo, COL_PROTOCOL, "Lustre");
8923 if (check_col(pinfo->cinfo, COL_INFO))
8924 col_set_str(pinfo->cinfo, COL_INFO, "");
8925 /* guint32 magic_number ; */
8926 /* magic_number = tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET); */
8927 /* switch (magic_number)*/
8929 /* case LUSTRE_MSG_MAGIC_V1:*/
8930 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V1 ");*/
8932 /* case LUSTRE_MSG_MAGIC_V2:*/
8933 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V2 ");*/
8941 guint32 magic_number ;
8943 proto_item *ti = NULL ;
8944 proto_tree * lustre_tree = NULL ;
8947 ti = proto_tree_add_item(tree,proto_lustre,tvb,0,-1,FALSE);
8948 lustre_tree = proto_item_add_subtree(ti,ett_lustre);
8951 magic_number = tvb_get_letohl(tvb, 8);
8954 switch (magic_number){
8955 case LUSTRE_MSG_MAGIC_V1:
8956 /* put some nice info*/
8957 proto_item_append_text(lustre_tree, " V1 ");
8958 offset=lustre_dissect_struct_msg_v1(tvb, 0, pinfo, lustre_tree, proto_lustre ) ;
8960 case LUSTRE_MSG_MAGIC_V2:
8961 /* put some nice info*/
8962 proto_item_append_text(lustre_tree, " V2 ");
8963 offset=lustre_dissect_struct_msg_v2(tvb, 0, pinfo, lustre_tree, proto_lustre ) ;
8972 void proto_register_dcerpc_lustre(void)
8974 static hf_register_info hf[] = {
8975 { &hf_lustre_mds_body_ctime,
8976 { "Ctime", "lustre.mds_body.ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
8977 { &hf_lustre_mds_body_fid1,
8978 { "Fid1", "lustre.mds_body.fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
8979 { &hf_lustre_mds_body_nlink,
8980 { "Nlink", "lustre.mds_body.nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
8981 { &hf_lustre_mds_body_flags,
8982 { "Flags", "lustre.mds_body.flags", FT_UINT32, BASE_HEX, VALS(lustre_mds_flags_vals) , 0, "", HFILL }},
8983 { &hf_lustre_mds_body_fsgid,
8984 { "Fsgid", "lustre.mds_body.fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
8985 { &hf_lustre_mds_body_mtime,
8986 { "Mtime", "lustre.mds_body.mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
8987 { &hf_lustre_mds_body_uid,
8988 { "Uid", "lustre.mds_body.uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
8989 { &hf_lustre_mds_body_mode,
8990 { "Mode", "lustre.mds_body.mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
8991 { &hf_lustre_mds_body_max_cookiesize,
8992 { "Max Cookiesize", "lustre.mds_body.max_cookiesize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
8993 { &hf_lustre_mds_body_io_epoch,
8994 { "Io Epoch", "lustre.mds_body.io_epoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
8995 { &hf_lustre_mds_body_ino,
8996 { "Ino", "lustre.mds_body.ino", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
8997 { &hf_lustre_mds_body_fid2,
8998 { "Fid2", "lustre.mds_body.fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
8999 { &hf_lustre_mds_body_padding_4,
9000 { "Padding 4", "lustre.mds_body.padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9001 { &hf_lustre_mds_body_aclsize,
9002 { "Aclsize", "lustre.mds_body.aclsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9003 { &hf_lustre_mds_body_valid,
9004 { "Valid", "lustre.mds_body.valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9005 { &hf_lustre_mds_body_generation,
9006 { "Generation", "lustre.mds_body.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9007 { &hf_lustre_mds_body_atime,
9008 { "Atime", "lustre.mds_body.atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9009 { &hf_lustre_mds_body_handle,
9010 { "Handle", "lustre.mds_body.handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9011 { &hf_lustre_mds_body_max_mdsize,
9012 { "Max Mdsize", "lustre.mds_body.max_mdsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9013 { &hf_lustre_mds_body_rdev,
9014 { "Rdev", "lustre.mds_body.rdev", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9015 { &hf_lustre_mds_body_blocks,
9016 { "Blocks", "lustre.mds_body.blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9017 { &hf_lustre_mds_body_fsuid,
9018 { "Fsuid", "lustre.mds_body.fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9019 { &hf_lustre_mds_body_gid,
9020 { "Gid", "lustre.mds_body.gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9021 { &hf_lustre_lustre_handle_cookie,
9022 { "Cookie", "lustre.lustre_handle.cookie", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9023 { &hf_lustre_mds_body_suppgid,
9024 { "Suppgid", "lustre.mds_body.suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9025 { &hf_lustre_mds_body_size,
9026 { "Size", "lustre.mds_body.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9027 { &hf_lustre_mds_body_eadatasize,
9028 { "Eadatasize", "lustre.mds_body.eadatasize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9029 { &hf_lustre_mds_body_capability,
9030 { "Capability", "lustre.mds_body.capability", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9031 { &hf_lustre_ptlrpc_body_pb_last_committed,
9032 { "Pb Last Committed", "lustre.ptlrpc_body.pb_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9033 { &hf_lustre_ptlrpc_body_pb_version,
9034 { "Pb Version", "lustre.ptlrpc_body.pb_version", FT_UINT32, BASE_DEC, NULL, ~LUSTRE_VERSION_MASK, "", HFILL }},
9035 { &hf_lustre_lustre_msg_v1_lm_bufcount,
9036 { "Lm Bufcount", "lustre.lustre_msg_v1.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9037 { &hf_lustre_obd_ioobj_ioo_id,
9038 { "Ioo Id", "lustre.obd_ioobj.ioo_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9039 { &hf_lustre_ptlrpc_body_pb_slv,
9040 { "Pb Slv", "lustre.ptlrpc_body.pb_slv", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9041 { &hf_lustre_lustre_msg_v1_lm_handle,
9042 { "Lm Handle", "lustre.lustre_msg_v1.lm_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9043 { &hf_lustre_ost_lvb_lvb_atime,
9044 { "Lvb Atime", "lustre.ost_lvb.lvb_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9045 { &hf_lustre_ptlrpc_body_pb_timeout,
9046 { "Pb Timeout", "lustre.ptlrpc_body.pb_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9047 { &hf_lustre_obd_statfs_os_bavail,
9048 { "Os Bavail", "lustre.obd_statfs.os_bavail", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9049 { &hf_lustre_obd_statfs_os_bsize,
9050 { "Os Bsize", "lustre.obd_statfs.os_bsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9051 { &hf_lustre_lustre_msg_v2_lm_repsize,
9052 { "Lm Repsize", "lustre.lustre_msg_v2.lm_repsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9053 { &hf_lustre_lov_mds_md_v1_lmm_stripe_size,
9054 { "Lmm Stripe Size", "lustre.lov_mds_md_v1.lmm_stripe_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9055 { &hf_lustre_lustre_msg_v1_lm_last_xid,
9056 { "Lm Last Xid", "lustre.lustre_msg_v1.lm_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9057 { &hf_lustre_ll_fid_f_type,
9058 { "F Type", "lustre.ll_fid.f_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9059 { &hf_lustre_lustre_msg_v2_lm_cksum,
9060 { "Lm Cksum", "lustre.lustre_msg_v2.lm_cksum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9061 { &hf_lustre_lustre_msg_v2_lm_buflens,
9062 { "Lm Buflens", "lustre.lustre_msg_v2.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9063 { &hf_lustre_lustre_msg_v1_lm_status,
9064 { "Lm Status", "lustre.lustre_msg_v1.lm_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9065 { &hf_lustre_lustre_msg_v1_lm_type,
9066 { "Lm Type", "lustre.lustre_msg_v1.lm_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
9067 { &hf_lustre_niobuf_remote_len,
9068 { "Len", "lustre.niobuf_remote.len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9069 { &hf_lustre_lov_mds_md_v1_lmm_magic,
9070 { "Lmm Magic", "lustre.lov_mds_md_v1.lmm_magic", FT_UINT32, BASE_HEX, VALS(lustre_lov_magic) , 0, "", HFILL }},
9071 { &hf_lustre_ptlrpc_body_pb_op_flags,
9072 { "Pb Op Flags", "lustre.ptlrpc_body.pb_op_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9073 { &hf_lustre_ost_lvb_lvb_ctime,
9074 { "Lvb Ctime", "lustre.ost_lvb.lvb_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9075 { &hf_lustre_ptlrpc_body_pb_type,
9076 { "Pb Type", "lustre.ptlrpc_body.pb_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
9077 { &hf_lustre_obd_connect_data_ocd_nllg,
9078 { "Ocd Nllg", "lustre.obd_connect_data.ocd_nllg", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9079 { &hf_lustre_obd_connect_data_ocd_nllu,
9080 { "Ocd Nllu", "lustre.obd_connect_data.ocd_nllu", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9081 { &hf_lustre_ll_fid_generation,
9082 { "Generation", "lustre.ll_fid.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9083 { &hf_lustre_ost_lvb_lvb_mtime,
9084 { "Lvb Mtime", "lustre.ost_lvb.lvb_mtime",FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0, "", HFILL }},
9085 { &hf_lustre_obd_connect_data_ocd_ibits_known,
9086 { "Ocd Ibits Known", "lustre.obd_connect_data.ocd_ibits_known", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9087 { &hf_lustre_lustre_msg_v2_lm_padding_3,
9088 { "Lm Padding 3", "lustre.lustre_msg_v2.lm_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9089 { &hf_lustre_ptlrpc_body_pb_flags,
9090 { "Pb Flags", "lustre.ptlrpc_body.pb_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9091 { &hf_lustre_obd_statfs_os_spare4,
9092 { "Os Spare4", "lustre.obd_statfs.os_spare4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9093 { &hf_lustre_obd_connect_data_ocd_group,
9094 { "Ocd Group", "lustre.obd_connect_data.ocd_group", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9095 { &hf_lustre_lov_ost_data_v1_l_object_gr,
9096 { "L Object Gr", "lustre.lov_ost_data_v1.l_object_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9097 { &hf_lustre_lov_mds_md_v1_lmm_object_gr,
9098 { "Lmm Object Gr", "lustre.lov_mds_md_v1.lmm_object_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9099 { &hf_lustre_obd_connect_data_ocd_brw_size,
9100 { "Ocd Brw Size", "lustre.obd_connect_data.ocd_brw_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9101 { &hf_lustre_ptlrpc_body_pb_limit,
9102 { "Pb Limit", "lustre.ptlrpc_body.pb_limit", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9103 { &hf_lustre_obd_statfs_os_maxbytes,
9104 { "Os Maxbytes", "lustre.obd_statfs.os_maxbytes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9105 { &hf_lustre_obd_statfs_os_spare5,
9106 { "Os Spare5", "lustre.obd_statfs.os_spare5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9107 { &hf_lustre_lustre_msg_v2_lm_flags,
9108 { "Lm Flags", "lustre.lustre_msg_v2.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9109 { &hf_lustre_obd_statfs_os_ffree,
9110 { "Os Ffree", "lustre.obd_statfs.os_ffree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9111 { &hf_lustre_obd_statfs_os_files,
9112 { "Os Files", "lustre.obd_statfs.os_files", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9113 { &hf_lustre_lov_mds_md_v1_lmm_stripe_count,
9114 { "Lmm Stripe Count", "lustre.lov_mds_md_v1.lmm_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9115 { &hf_lustre_lustre_msg_v1_lm_flags,
9116 { "Lm Flags", "lustre.lustre_msg_v1.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9117 { &hf_lustre_lustre_msg_v1_lm_last_committed,
9118 { "Lm Last Committed", "lustre.lustre_msg_v1.lm_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9119 { &hf_lustre_obd_statfs_os_spare9,
9120 { "Os Spare9", "lustre.obd_statfs.os_spare9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9121 { &hf_lustre_obd_connect_data_ocd_index,
9122 { "Ocd Index", "lustre.obd_connect_data.ocd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9123 { &hf_lustre_lustre_msg_v1_lm_buflens,
9124 { "Lm Buflens", "lustre.lustre_msg_v1.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9125 { &hf_lustre_obd_statfs_os_spare1,
9126 { "Os Spare1", "lustre.obd_statfs.os_spare1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9127 { &hf_lustre_obd_statfs_os_spare8,
9128 { "Os Spare8", "lustre.obd_statfs.os_spare8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9129 { &hf_lustre_lustre_msg_v1_lm_conn_cnt,
9130 { "Lm Conn Cnt", "lustre.lustre_msg_v1.lm_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9131 { &hf_lustre_ptlrpc_body_pb_transno,
9132 { "Pb Transno", "lustre.ptlrpc_body.pb_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9133 { &hf_lustre_ptlrpc_body_pb_service_time,
9134 { "Pb Service Time", "lustre.ptlrpc_body.pb_service_time",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9135 { &hf_lustre_ptlrpc_body_pb_conn_cnt,
9136 { "Pb Conn Cnt", "lustre.ptlrpc_body.pb_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9137 { &hf_lustre_ptlrpc_body_pb_opc,
9138 { "Pb Opc", "lustre.ptlrpc_body.pb_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
9139 { &hf_lustre_obd_connect_data_ocd_connect_flags,
9140 { "Ocd Connect Flags", "lustre.obd_connect_data.ocd_connect_flags", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9141 { &hf_lustre_lov_ost_data_v1_l_object_id,
9142 { "L Object Id", "lustre.lov_ost_data_v1.l_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9143 { &hf_lustre_lov_ost_data_v1_l_ost_gen,
9144 { "L Ost Gen", "lustre.lov_ost_data_v1.l_ost_gen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9145 { &hf_lustre_obd_statfs_os_bfree,
9146 { "Os Bfree", "lustre.obd_statfs.os_bfree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9147 { &hf_lustre_obd_connect_data_ocd_version,
9148 { "Ocd Version", "lustre.obd_connect_data.ocd_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9149 { &hf_lustre_lov_mds_md_v1_lmm_objects,
9150 { "Lmm Objects", "lustre.lov_mds_md_v1.lmm_objects", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9151 { &hf_lustre_mds_status_req_flags,
9152 { "Flags", "lustre.mds_status_req.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9153 { &hf_lustre_obd_statfs_os_namelen,
9154 { "Os Namelen", "lustre.obd_statfs.os_namelen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9155 { &hf_lustre_obd_statfs_os_blocks,
9156 { "Os Blocks", "lustre.obd_statfs.os_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9157 { &hf_lustre_lustre_msg_v2_lm_secflvr,
9158 { "Lm Secflvr", "lustre.lustre_msg_v2.lm_secflvr", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9159 { &hf_lustre_lustre_msg_v1_lm_transno,
9160 { "Lm Transno", "lustre.lustre_msg_v1.lm_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9161 { &hf_lustre_lov_mds_md_v1_lmm_pattern,
9162 { "Lmm Pattern", "lustre.lov_mds_md_v1.lmm_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9163 { &hf_lustre_lustre_msg_v1_lm_opc,
9164 { "Lm Opc", "lustre.lustre_msg_v1.lm_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
9165 { &hf_lustre_obd_connect_data_ocd_grant,
9166 { "Ocd Grant", "lustre.obd_connect_data.ocd_grant", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9167 { &hf_lustre_obd_ioobj_ioo_bufcnt,
9168 { "Ioo Bufcnt", "lustre.obd_ioobj.ioo_bufcnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9169 { &hf_lustre_lustre_msg_v1_lm_version,
9170 { "Lm Version", "lustre.lustre_msg_v1.lm_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9171 { &hf_lustre_obd_statfs_os_spare7,
9172 { "Os Spare7", "lustre.obd_statfs.os_spare7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9173 { &hf_lustre_obd_statfs_os_fsid,
9174 { "Os Fsid", "lustre.obd_statfs.os_fsid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9175 { &hf_lustre_obd_connect_data_ocd_cksum_types,
9176 { "Ocd Cksum Types", "lustre.obd_connect_data.ocd_cksum_types", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9177 { &hf_lustre_ost_lvb_lvb_size,
9178 { "Lvb Size", "lustre.ost_lvb.lvb_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9179 { &hf_lustre_obd_statfs_os_type,
9180 { "Os Type", "lustre.obd_statfs.os_type", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9181 { &hf_lustre_obd_statfs_os_spare6,
9182 { "Os Spare6", "lustre.obd_statfs.os_spare6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9183 { &hf_lustre_obd_statfs_os_state,
9184 { "Os State", "lustre.obd_statfs.os_state", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9185 { &hf_lustre_obd_statfs_os_spare3,
9186 { "Os Spare3", "lustre.obd_statfs.os_spare3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9187 { &hf_lustre_lustre_msg_v2_lm_magic,
9188 { "Lm Magic", "lustre.lustre_msg_v2.lm_magic", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
9189 { &hf_lustre_lov_mds_md_v1_lmm_object_id,
9190 { "Lmm Object Id", "lustre.lov_mds_md_v1.lmm_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9191 { &hf_lustre_ptlrpc_body_pb_last_seen,
9192 { "Pb Last Seen", "lustre.ptlrpc_body.pb_last_seen", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9193 { &hf_lustre_obd_ioobj_ioo_type, /* TODO : create the corresponding value_string */
9194 { "Ioo Type", "lustre.obd_ioobj.ioo_type", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
9195 { &hf_lustre_ptlrpc_body_pb_last_xid,
9196 { "Pb Last Xid", "lustre.ptlrpc_body.pb_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9197 { &hf_lustre_ptlrpc_body_pb_status,
9198 { "Pb Status", "lustre.ptlrpc_body.pb_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9199 { &hf_lustre_niobuf_remote_flags,
9200 { "Flags", "lustre.niobuf_remote.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9201 { &hf_lustre_ll_fid_id,
9202 { "Id", "lustre.ll_fid.id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9203 { &hf_lustre_ost_lvb_lvb_blocks,
9204 { "Lvb Blocks", "lustre.ost_lvb.lvb_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9205 { &hf_lustre_lustre_msg_v2_lm_padding_2,
9206 { "Lm Padding 2", "lustre.lustre_msg_v2.lm_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9207 { &hf_lustre_obd_connect_data_padding1,
9208 { "Padding1", "lustre.obd_connect_data.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9209 { &hf_lustre_lov_ost_data_v1_l_ost_idx,
9210 { "L Ost Idx", "lustre.lov_ost_data_v1.l_ost_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9211 { &hf_lustre_obd_connect_data_padding2,
9212 { "Padding2", "lustre.obd_connect_data.padding2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9213 { &hf_lustre_obd_ioobj_ioo_gr,
9214 { "Ioo Gr", "lustre.obd_ioobj.ioo_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9215 { &hf_lustre_niobuf_remote_offset,
9216 { "Offset", "lustre.niobuf_remote.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9217 { &hf_lustre_mds_status_req_repbuf,
9218 { "Repbuf", "lustre.mds_status_req.repbuf", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9219 { &hf_lustre_obd_statfs_os_spare2,
9220 { "Os Spare2", "lustre.obd_statfs.os_spare2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9221 { &hf_lustre_lustre_msg_v2_lm_bufcount,
9222 { "Lm Bufcount", "lustre.lustre_msg_v2.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9223 { &hf_lustre_ptlrpc_body_pb_handle,
9224 { "Pb Handle", "lustre.ptlrpc_body.pb_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9225 { &hf_lustre_obd_connect_data_ocd_transno,
9226 { "Ocd Transno", "lustre.obd_connect_data.ocd_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9227 { &hf_lustre_lustre_msg_v1_lm_magic,
9228 { "Lm Magic", "lustre.lustre_msg_v1.lm_magic", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9229 { &hf_lustre_ptlrpc_body_pb,
9230 { "ptl rpc", "lustre.ptlrpc_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9231 { &hf_lustre_mds_body,
9232 { "mds body", "lustre.mds_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9233 { &hf_lustre_mds_rec_create,
9234 { "mds rec create", "lustre.mds_rec_create", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9235 { &hf_lustre_mds_rec_link,
9236 { "mds rec link", "lustre.mds_rec_link", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9237 { &hf_lustre_mds_rec_unlink,
9238 { "mds rec unlink", "lustre.mds_rec_unlink", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9240 { &hf_lustre_obd_uuid,
9241 { "obd uid name", "lustre.obd_uid", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9242 { &hf_lustre_obd_connect_data ,
9243 { "obd connect data", "lustre.obd_connect_data", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9245 { &hf_lustre_ldlm_intent,
9246 { "ldlm intent", "lustre.ldlm_intent", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9248 { &hf_lustre_lov_user_md_join,
9249 { "lov user md join", "lustre.lov_user_md_join", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9250 { &hf_lustre_obd_ioobj,
9251 { "lustre obd ioobj", "lustre.obd_ioobj", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9252 { &hf_lustre_niobuf_remote,
9253 { "lustre niobuf remote", "lustre.niobuf_remote", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9254 { &hf_lustre_ost_key,
9255 { "lustre ost key", "lustre.ost_key", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9256 { &hf_lustre_ost_val,
9257 { "lustre ost val", "lustre.ost_val", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9258 { &hf_lustre_llogd_chunk,
9259 { "lustre llogd chunk", "lustre.llogd_chunk", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9260 { &hf_lustre_llogd_keyword,
9261 { "lustre llogd keyword", "lustre.llogd_keyword", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9262 { &hf_lustre_llogd_client,
9263 { "lustre llogd client", "lustre.llogd_client", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9264 { &hf_lustre_llogd_name,
9265 { "lustre llogd name", "lustre.llogd_name", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9266 { &hf_lustre_llogd_log_hdr,
9267 { "lustre llogd log hdr", "lustre.llogd_log_hdr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9268 { &hf_lustre_llog_logid_rec,
9269 { "lustre llog logid rec", "lustre.llog_logid_rec", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9271 { &hf_lustre_llogd_body,
9272 { "lustre llogd body", "lustre.llogd_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9274 { "lustre nio", "lustre.nio", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9275 { &hf_lustre_ost_body,
9276 { "ost body", "lustre.ost_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9277 { &hf_lustre_obd_statfs,
9278 { "obd statfs", "lustre.obd_statfs", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9279 { &hf_lustre_obd_quotactl,
9280 { "obd quotactl", "lustre.obd_quotacl", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9281 { &hf_lustre_quota_adjust_qunit,
9282 { "obd quota adjust qunit", "lustre.quota_adjust_qunit", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9283 { &hf_lustre_llog_unlink_rec_lur_tail,
9284 { "Lur Tail", "lustre.llog_unlink_rec.lur_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9285 { &hf_lustre_llog_size_change_rec_lsc_io_epoch,
9286 { "Lsc Io Epoch", "lustre.llog_size_change_rec.lsc_io_epoch", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9287 { &hf_lustre_mgs_target_info_mti_flags,
9288 { "Mti Flags", "lustre.mgs_target_info.mti_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9289 { &hf_lustre_ldlm_reply_lock_policy_res1,
9290 { "Lock Policy Res1", "lustre.ldlm_reply.lock_policy_res1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9291 { &hf_lustre_mds_rec_link_lk_fsuid,
9292 { "Lk Fsuid", "lustre.mds_rec_link.lk_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9293 { &hf_lustre_llogd_body_lgd_len,
9294 { "Lgd Len", "lustre.llogd_body.lgd_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9295 { &hf_lustre_qunit_data_old_qd_id,
9296 { "Qd Id", "lustre.qunit_data_old.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9297 { &hf_lustre_lov_user_md_join_lmm_stripe_count,
9298 { "Lmm Stripe Count", "lustre.lov_user_md_join.lmm_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9299 { &hf_lustre_llog_logid_rec_padding1,
9300 { "Padding1", "lustre.llog_logid_rec.padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9301 { &hf_lustre_quota_adjust_qunit_padding1,
9302 { "Padding1", "lustre.quota_adjust_qunit.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9303 { &hf_lustre_llog_size_change_rec_lsc_fid,
9304 { "Lsc Fid", "lustre.llog_size_change_rec.lsc_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9305 { &hf_lustre_llog_rec_hdr_padding,
9306 { "Padding", "lustre.llog_rec_hdr.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9307 { &hf_lustre_mds_rec_create_cr_time,
9308 { "Cr Time", "lustre.mds_rec_create.cr_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9309 { &hf_lustre_mds_rec_create_cr_padding_1,
9310 { "Cr Padding 1", "lustre.mds_rec_create.cr_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9311 { &hf_lustre_obdo_o_nlink,
9312 { "O Nlink", "lustre.obdo.o_nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9313 { &hf_lustre_mds_rec_rename_rn_suppgid2,
9314 { "Rn Suppgid2", "lustre.mds_rec_rename.rn_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9315 { &hf_lustre_mds_rec_link_lk_padding_4,
9316 { "Lk Padding 4", "lustre.mds_rec_link.lk_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9317 { &hf_lustre_mds_rec_link_lk_cap,
9318 { "Lk Cap", "lustre.mds_rec_link.lk_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9319 { &hf_lustre_ldlm_extent_gid,
9320 { "Gid", "lustre.ldlm_extent.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9321 { &hf_lustre_obdo_o_uid,
9322 { "O Uid", "lustre.obdo.o_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9323 { &hf_lustre_mds_rec_create_cr_padding_5,
9324 { "Cr Padding 5", "lustre.mds_rec_create.cr_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9325 { &hf_lustre_mds_xattr_name,
9326 { "mds xattr name", "lustre.mds_xattr_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9327 { &hf_lustre_lov_mds_md_v1,
9328 { "lov mds md v1", "lustre.lov_mds_md_v1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9329 { &hf_lustre_llog_cookie,
9330 { "llog cookie", "lustre.llog_cookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9331 { &hf_lustre_mds_md_data,
9332 { "mds md data", "lustre.mds_md_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9333 { &hf_lustre_mds_reint_opcode,
9334 { "mds reint opcode", "lustre.mds_reint_opcode", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9335 { &hf_lustre_mds_xattr_eadata,
9336 { "mds xattr eadata", "lustre.mds_xattr_eadata", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9337 { &hf_lustre_lov_mds_md_join,
9338 { "lov mds md join", "lustre.lov_mds_md_join", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9339 { &hf_lustre_reint_name,
9340 { "mds reint name", "lustre.mds_reint_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9341 { &hf_lustre_reint_old_name,
9342 { "mds reint old name", "lustre.mds_reint_old_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9343 { &hf_lustre_reint_new_name,
9344 { "mds reint new name", "lustre.mds_reint_new_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9348 { &hf_lustre_obdo_o_valid,
9349 { "O Valid", "lustre.obdo.o_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9350 { &hf_lustre_ldlm_reply_lock_flags,
9351 { "Lock Flags", "lustre.ldlm_reply.lock_flags", FT_UINT32,BASE_HEX, NULL, 0, "", HFILL }},
9353 {&hf_lustre_ldlm_fl_lock_changed, {"LDLM_FL_LOCK_CHANGED", "lustre.ldlm_fl_lock_changed", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_LOCK_CHANGED, "", HFILL}},
9354 {&hf_lustre_ldlm_fl_block_granted, {"LDLM_FL_BLOCK_GRANTED", "lustre.ldlm_fl_block_granted", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_GRANTED, "", HFILL}},
9355 {&hf_lustre_ldlm_fl_block_conv, {"LDLM_FL_BLOCK_CONV", "lustre.ldlm_fl_block_conv", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_CONV, "", HFILL}},
9356 {&hf_lustre_ldlm_fl_block_wait, {"LDLM_FL_BLOCK_WAIT", "lustre.ldlm_fl_block_wait", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_WAIT, "", HFILL}},
9357 {&hf_lustre_ldlm_fl_cbpending, {"LDLM_FL_CBPENDING", "lustre.ldlm_fl_cbpending", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CBPENDING, "", HFILL}},
9358 {&hf_lustre_ldlm_fl_ast_sent, {"LDLM_FL_AST_SENT", "lustre.ldlm_fl_ast_sent", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_AST_SENT, "", HFILL}},
9359 {&hf_lustre_ldlm_fl_wait_noreproc, {"LDLM_FL_WAIT_NOREPROC", "lustre.ldlm_fl_wait_noreproc", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_WAIT_NOREPROC, "", HFILL}},
9360 {&hf_lustre_ldlm_fl_cancel, {"LDLM_FL_CANCEL", "lustre.ldlm_fl_cancel", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CANCEL, "", HFILL}},
9361 {&hf_lustre_ldlm_fl_replay, {"LDLM_FL_REPLAY", "lustre.ldlm_fl_replay", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_REPLAY, "", HFILL}},
9362 {&hf_lustre_ldlm_fl_intent_only, {"LDLM_FL_INTENT_ONLY", "lustre.ldlm_fl_intent_only", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_INTENT_ONLY, "", HFILL}},
9363 {&hf_lustre_ldlm_fl_local_only, {"LDLM_FL_LOCAL_ONLY", "lustre.ldlm_fl_local_only", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_LOCAL_ONLY, "", HFILL}},
9364 {&hf_lustre_ldlm_fl_failed, {"LDLM_FL_FAILED", "lustre.ldlm_fl_failed", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_FAILED, "", HFILL}},
9365 {&hf_lustre_ldlm_fl_has_intent, {"LDLM_FL_HAS_INTENT", "lustre.ldlm_fl_has_intent", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_HAS_INTENT, "", HFILL}},
9366 {&hf_lustre_ldlm_fl_canceling, {"LDLM_FL_CANCELING", "lustre.ldlm_fl_canceling", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CANCELING, "", HFILL}},
9367 {&hf_lustre_ldlm_fl_local, {"LDLM_FL_LOCAL", "lustre.ldlm_fl_local", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_LOCAL, "", HFILL}},
9368 {&hf_lustre_ldlm_fl_warn, {"LDLM_FL_WARN", "lustre.ldlm_fl_warn", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_WARN, "", HFILL}},
9369 {&hf_lustre_ldlm_fl_discard_data, {"LDLM_FL_DISCARD_DATA", "lustre.ldlm_fl_discard_data", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_DISCARD_DATA, "", HFILL}},
9370 {&hf_lustre_ldlm_fl_no_timeout, {"LDLM_FL_NO_TIMEOUT", "lustre.ldlm_fl_no_timeout", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_NO_TIMEOUT, "", HFILL}},
9371 {&hf_lustre_ldlm_fl_block_nowait, {"LDLM_FL_BLOCK_NOWAIT", "lustre.ldlm_fl_block_nowait", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_NOWAIT, "", HFILL}},
9372 {&hf_lustre_ldlm_fl_test_lock, {"LDLM_FL_TEST_LOCK", "lustre.ldlm_fl_test_lock", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_TEST_LOCK, "", HFILL}},
9373 {&hf_lustre_ldlm_fl_lvb_ready, {"LDLM_FL_LVB_READY", "lustre.ldlm_fl_lvb_ready", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_LVB_READY, "", HFILL}},
9374 {&hf_lustre_ldlm_fl_kms_ignore, {"LDLM_FL_KMS_IGNORE", "lustre.ldlm_fl_kms_ignore", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_KMS_IGNORE, "", HFILL}},
9375 {&hf_lustre_ldlm_fl_no_lru, {"LDLM_FL_NO_LRU", "lustre.ldlm_fl_no_lru", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_NO_LRU, "", HFILL}},
9376 {&hf_lustre_ldlm_fl_cancel_on_block, {"LDLM_FL_CANCEL_ON_BLOCK", "lustre.ldlm_fl_cancel_on_block", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CANCEL_ON_BLOCK, "", HFILL}},
9377 {&hf_lustre_ldlm_fl_cp_reqd, {"LDLM_FL_CP_REQD", "lustre.ldlm_fl_cp_reqd", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CP_REQD, "", HFILL}},
9378 {&hf_lustre_ldlm_fl_cleaned, {"LDLM_FL_CLEANED", "lustre.ldlm_fl_cleaned", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CLEANED, "", HFILL}},
9379 {&hf_lustre_ldlm_fl_atomic_cb, {"LDLM_FL_ATOMIC_CB", "lustre.ldlm_fl_atomic_cb", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_ATOMIC_CB, "", HFILL}},
9380 {&hf_lustre_ldlm_fl_bl_ast, {"LDLM_FL_BL_AST", "lustre.ldlm_fl_bl_ast", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BL_AST, "", HFILL}},
9381 {&hf_lustre_ldlm_fl_bl_done, {"LDLM_FL_BL_DONE", "lustre.ldlm_fl_bl_done", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BL_DONE, "", HFILL}},
9382 {&hf_lustre_ldlm_fl_deny_on_contention, {"LDLM_FL_DENY_ON_CONTENTION", "lustre.ldlm_fl_deny_on_contention", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_DENY_ON_CONTENTION, "", HFILL}},
9383 {&hf_lustre_ldlm_ast_discard_data, {"LDLM_AST_DISCARD_DATA", "lustre.ldlm_ast_discard_data", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_AST_DISCARD_DATA, "", HFILL}},
9386 { &hf_lustre_mds_rec_link_lk_padding_3,
9387 { "Lk Padding 3", "lustre.mds_rec_link.lk_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9388 { &hf_lustre_obdo_o_misc,
9389 { "O Misc", "lustre.obdo.o_misc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9390 { &hf_lustre_mds_rec_setattr_sa_suppgid,
9391 { "Sa Suppgid", "lustre.mds_rec_setattr.sa_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9392 { &hf_lustre_mds_rec_setattr_sa_attr_flags,
9393 { "Sa Attr Flags", "lustre.mds_rec_setattr.sa_attr_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9394 { &hf_lustre_mds_rec_rename_rn_padding_2,
9395 { "Rn Padding 2", "lustre.mds_rec_rename.rn_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9396 { &hf_lustre_ldlm_request_lock_handle,
9397 { "Lock Handle", "lustre.ldlm_request.lock_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9398 { &hf_lustre_llog_logid_lgl_oid,
9399 { "Lgl Oid", "lustre.llog_logid.lgl_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9400 { &hf_lustre_ldlm_inodebits_bits,
9401 { "Bits", "lustre.ldlm_inodebits.bits", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9402 { &hf_lustre_llog_log_hdr_llh_count,
9403 { "Llh Count", "lustre.llog_log_hdr.llh_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9404 { &hf_lustre_mds_rec_unlink_ul_padding_4,
9405 { "Ul Padding 4", "lustre.mds_rec_unlink.ul_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9406 { &hf_lustre_lov_user_md_join_lmm_stripe_size,
9407 { "Lmm Stripe Size", "lustre.lov_user_md_join.lmm_stripe_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9408 { &hf_lustre_llog_gen_rec_lgr_tail,
9409 { "Lgr Tail", "lustre.llog_gen_rec.lgr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9410 { &hf_lustre_llog_catid_lci_padding3,
9411 { "Lci Padding3", "lustre.llog_catid.lci_padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9412 { &hf_lustre_qunit_data_qd_qunit,
9413 { "Qd Qunit", "lustre.qunit_data.qd_qunit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9414 { &hf_lustre_mds_rec_unlink_ul_fid1,
9415 { "Ul Fid1", "lustre.mds_rec_unlink.ul_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9416 { &hf_lustre_llog_setattr_rec_padding,
9417 { "Padding", "lustre.llog_setattr_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9418 { &hf_lustre_mds_rec_rename_rn_opcode,
9419 { "Rn Opcode", "lustre.mds_rec_rename.rn_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9420 { &hf_lustre_mds_rec_create_cr_flags,
9421 { "Cr Flags", "lustre.mds_rec_create.cr_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9422 { &hf_lustre_mds_rec_rename_rn_fid1,
9423 { "Rn Fid1", "lustre.mds_rec_rename.rn_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9424 { &hf_lustre_mds_extent_desc_med_start,
9425 { "Med Start", "lustre.mds_extent_desc.med_start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9426 { &hf_lustre_llog_cookie_lgc_lgl,
9427 { "Lgc Lgl", "lustre.llog_cookie.lgc_lgl", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9428 { &hf_lustre_obd_quotactl_qc_dqinfo,
9429 { "Qc Dqinfo", "lustre.obd_quotactl.qc_dqinfo", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9430 { &hf_lustre_llog_log_hdr_llh_bitmap,
9431 { "Llh Bitmap", "lustre.llog_log_hdr.llh_bitmap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9432 { &hf_lustre_mds_rec_setattr_sa_size,
9433 { "Sa Size", "lustre.mds_rec_setattr.sa_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9434 { &hf_lustre_mds_rec_rename_rn_suppgid1,
9435 { "Rn Suppgid1", "lustre.mds_rec_rename.rn_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9436 { &hf_lustre_obd_quotactl_qc_stat,
9437 { "Qc Stat", "lustre.obd_quotactl.qc_stat", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9438 { &hf_lustre_qunit_data_old2_qd_id,
9439 { "Qd Id", "lustre.qunit_data_old2.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9440 { &hf_lustre_llog_logid_rec_padding2,
9441 { "Padding2", "lustre.llog_logid_rec.padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9442 { &hf_lustre_mds_rec_unlink_ul_mode,
9443 { "Ul Mode", "lustre.mds_rec_unlink.ul_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9444 { &hf_lustre_llog_orphan_rec_lor_tail,
9445 { "Lor Tail", "lustre.llog_orphan_rec.lor_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9446 { &hf_lustre_llog_logid_rec_padding5,
9447 { "Padding5", "lustre.llog_logid_rec.padding5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9448 { &hf_lustre_mds_rec_create_cr_fsgid,
9449 { "Cr Fsgid", "lustre.mds_rec_create.cr_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9450 { &hf_lustre_mds_rec_join_jr_fid,
9451 { "Jr Fid", "lustre.mds_rec_join.jr_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9452 /*-------------------------------------------------------------------------------------------------------------*/
9453 /*all this flags are uint64, but I don't find the way to use something like TFS() with a Uint64*/
9454 { &hf_lustre_ldlm_intent_opc_open,
9455 { "open", "lustre.ldlm_intent.opc_open", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_OPEN, "", HFILL}},
9456 { &hf_lustre_ldlm_intent_opc_creat,
9457 { "creat", "lustre.ldlm_intent.opc_creat", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_CREAT , "", HFILL}},
9458 { &hf_lustre_ldlm_intent_opc_readdir,
9459 { "readdir", "lustre.ldlm_intent.opc_readdir", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_READDIR , "", HFILL}},
9460 { &hf_lustre_ldlm_intent_opc_getattr,
9461 { "getattr", "lustre.ldlm_intent.opc_getattr", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_GETATTR, "", HFILL}},
9462 { &hf_lustre_ldlm_intent_opc_lookup,
9463 { "lookup", "lustre.ldlm_intent.opc_lookup", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_LOOKUP , "", HFILL}},
9464 { &hf_lustre_ldlm_intent_opc_unlink,
9465 { "unlink", "lustre.ldlm_intent.opc_unlink", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_UNLINK , "", HFILL}},
9466 { &hf_lustre_ldlm_intent_opc_getxattr,
9467 { "getxattr", "lustre.ldlm_intent.opc_getxattr", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_GETXATTR , "", HFILL}},
9468 { &hf_lustre_ldlm_intent_opc_exec,
9469 { "exec", "lustre.ldlm_intent.opc_exec", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_EXEC , "", HFILL}},
9470 { &hf_lustre_ldlm_intent_opc_pin,
9471 { "pin", "lustre.ldlm_intent.opc_pin", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_PIN , "", HFILL}},
9472 /*-------------------------------------------------------------------------------------------------------------*/
9473 { &hf_lustre_ldlm_intent_opc,
9474 { "intent opcode", "lustre.ldlm_intent.opc", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
9475 { &hf_lustre_llog_rec_hdr_lrh_type,
9476 { "Lrh Type", "lustre.llog_rec_hdr.lrh_type", FT_UINT32, BASE_HEX, VALS(lustre_llog_op_type), 0, "", HFILL }},
9477 { &hf_lustre_mds_rec_link_lk_fsgid,
9478 { "Lk Fsgid", "lustre.mds_rec_link.lk_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9479 { &hf_lustre_llog_rec_hdr_lrh_len,
9480 { "Lrh Len", "lustre.llog_rec_hdr.lrh_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9481 { &hf_lustre_llog_setattr_rec_lsr_uid,
9482 { "Lsr Uid", "lustre.llog_setattr_rec.lsr_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9483 { &hf_lustre_lov_desc_ld_padding_1,
9484 { "Ld Padding 1", "lustre.lov_desc.ld_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9485 { &hf_lustre_obdo_o_padding_4,
9486 { "O Padding 4", "lustre.obdo.o_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9487 { &hf_lustre_mgs_target_info_padding,
9488 { "Padding", "lustre.mgs_target_info.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9489 { &hf_lustre_obd_quotactl_qc_dqblk,
9490 { "Qc Dqblk", "lustre.obd_quotactl.qc_dqblk", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9491 { &hf_lustre_llogd_conn_body_lgdc_gen,
9492 { "Lgdc Gen", "lustre.llogd_conn_body.lgdc_gen", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9493 { &hf_lustre_mds_rec_create_cr_padding_2,
9494 { "Cr Padding 2", "lustre.mds_rec_create.cr_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9495 { &hf_lustre_mds_rec_setattr_sa_ctime,
9496 { "Sa Ctime", "lustre.mds_rec_setattr.sa_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9497 { &hf_lustre_llog_log_hdr_llh_tail,
9498 { "Llh Tail", "lustre.llog_log_hdr.llh_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9499 { &hf_lustre_obdo_o_size,
9500 { "O Size", "lustre.obdo.o_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9501 { &hf_lustre_mds_rec_setattr_sa_cap,
9502 { "Sa Cap", "lustre.mds_rec_setattr.sa_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9503 { &hf_lustre_ldlm_extent_start,
9504 { "Start", "lustre.ldlm_extent.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9505 { &hf_lustre_mds_rec_unlink_ul_opcode,
9506 { "Ul Opcode", "lustre.mds_rec_unlink.ul_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9507 { &hf_lustre_llog_size_change_rec_lsc_hdr,
9508 { "Lsc Hdr", "lustre.llog_size_change_rec.lsc_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9509 { &hf_lustre_mds_rec_unlink_ul_time,
9510 { "Ul Time", "lustre.mds_rec_unlink.ul_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9511 { &hf_lustre_lov_user_ost_data_join_l_extent_start,
9512 { "L Extent Start", "lustre.lov_user_ost_data_join.l_extent_start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9513 { &hf_lustre_lov_user_md_join_lmm_tree_id,
9514 { "Lmm Tree Id", "lustre.lov_user_md_join.lmm_tree_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9515 { &hf_lustre_llog_create_rec_lcr_tail,
9516 { "Lcr Tail", "lustre.llog_create_rec.lcr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9517 { &hf_lustre_mds_rec_setattr_sa_mode,
9518 { "Sa Mode", "lustre.mds_rec_setattr.sa_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9519 { &hf_lustre_llog_logid_lgl_ogr,
9520 { "Lgl Ogr", "lustre.llog_logid.lgl_ogr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9521 { &hf_lustre_llog_create_rec_lcr_hdr,
9522 { "Lcr Hdr", "lustre.llog_create_rec.lcr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9523 { &hf_lustre_llog_cookie_lgc_padding,
9524 { "Lgc Padding", "lustre.llog_cookie.lgc_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9525 { &hf_lustre_mds_rec_create_cr_cap,
9526 { "Cr Cap", "lustre.mds_rec_create.cr_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9527 { &hf_lustre_qunit_data_old_qd_type,
9528 { "Qd Type", "lustre.qunit_data_old.qd_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9529 { &hf_lustre_ldlm_flock_blocking_export,
9530 { "Blocking Export", "lustre.ldlm_flock.blocking_export", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9531 { &hf_lustre_mds_rec_setattr_sa_gid,
9532 { "Sa Gid", "lustre.mds_rec_setattr.sa_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9533 { &hf_lustre_lov_desc_ld_pattern,
9534 { "Ld Pattern", "lustre.lov_desc.ld_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9535 { &hf_lustre_qunit_data_qd_id,
9536 { "Qd Id", "lustre.qunit_data.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9537 { &hf_lustre_mgs_target_info_mti_fsname,
9538 { "Mti Fsname", "lustre.mgs_target_info.mti_fsname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9539 { &hf_lustre_lov_user_md_join_lmm_object_gr,
9540 { "Lmm Object Gr", "lustre.lov_user_md_join.lmm_object_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9541 { &hf_lustre_ldlm_request_lock_flags,
9542 { "Lock Flags", "lustre.ldlm_request.lock_flags", FT_UINT32, BASE_HEX, NULL, 0 , "", HFILL }},
9543 { &hf_lustre_obdo_o_mode,
9544 { "O Mode", "lustre.obdo.o_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9545 { &hf_lustre_mgs_target_info_mti_svname,
9546 { "Mti Svname", "lustre.mgs_target_info.mti_svname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9547 { &hf_lustre_llogd_body_lgd_logid,
9548 { "Lgd Logid", "lustre.llogd_body.lgd_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9549 { &hf_lustre_mds_rec_create_cr_opcode,
9550 { "Cr Opcode", "lustre.mds_rec_create.cr_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9551 { &hf_lustre_llog_log_hdr_llh_size,
9552 { "Llh Size", "lustre.llog_log_hdr.llh_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9553 { &hf_lustre_llog_create_rec_padding,
9554 { "Padding", "lustre.llog_create_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9555 { &hf_lustre_obdo_o_handle,
9556 { "O Handle", "lustre.obdo.o_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9557 { &hf_lustre_obdo_o_atime,
9558 { "O Atime", "lustre.obdo.o_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9559 { &hf_lustre_quota_adjust_qunit_qaq_id,
9560 { "Qaq Id", "lustre.quota_adjust_qunit.qaq_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9561 { &hf_lustre_mds_rec_rename_rn_fid2,
9562 { "Rn Fid2", "lustre.mds_rec_rename.rn_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9563 { &hf_lustre_mds_rec_create_cr_replayfid,
9564 { "Cr Replayfid", "lustre.mds_rec_create.cr_replayfid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9565 { &hf_lustre_ldlm_lock_desc_l_policy_data,
9566 { "L Policy Data", "lustre.ldlm_lock_desc.l_policy_data", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9567 { &hf_lustre_mds_rec_link_lk_suppgid1,
9568 { "Lk Suppgid1", "lustre.mds_rec_link.lk_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9569 { &hf_lustre_obd_quotactl_qc_cmd,
9570 { "Qc Cmd", "lustre.obd_quotactl.qc_cmd", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9571 { &hf_lustre_lov_user_md_join_lmm_object_id,
9572 { "Lmm Object Id", "lustre.lov_user_md_join.lmm_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9573 { &hf_lustre_mds_rec_rename_rn_padding_3,
9574 { "Rn Padding 3", "lustre.mds_rec_rename.rn_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9575 { &hf_lustre_qunit_data_padding,
9576 { "Padding", "lustre.qunit_data.padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9577 { &hf_lustre_lov_user_md_join_lmm_objects,
9578 { "Lmm Objects", "lustre.lov_user_md_join.lmm_objects", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9579 { &hf_lustre_quota_adjust_qunit_qaq_flags,
9580 { "Qaq Flags", "lustre.quota_adjust_qunit.qaq_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9581 { &hf_lustre_lov_user_ost_data_join_l_object_gr,
9582 { "L Object Gr", "lustre.lov_user_ost_data_join.l_object_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9583 { &hf_lustre_ldlm_lock_desc_l_granted_mode,
9584 { "L Granted Mode", "lustre.ldlm_lock_desc.l_granted_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
9585 { &hf_lustre_obdo_o_gr,
9586 { "O Gr", "lustre.obdo.o_gr", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9587 { &hf_lustre_mds_rec_unlink_ul_padding_2,
9588 { "Ul Padding 2", "lustre.mds_rec_unlink.ul_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9589 { &hf_lustre_obdo_o_gid,
9590 { "O Gid", "lustre.obdo.o_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9591 { &hf_lustre_llog_catid_lci_logid,
9592 { "Lci Logid", "lustre.llog_catid.lci_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9593 { &hf_lustre_llog_rec_tail_lrt_index,
9594 { "Lrt Index", "lustre.llog_rec_tail.lrt_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9595 { &hf_lustre_obdo_o_mds,
9596 { "O Mds", "lustre.obdo.o_mds", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9597 { &hf_lustre_mds_extent_desc_med_lmm,
9598 { "Med Lmm", "lustre.mds_extent_desc.med_lmm", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9599 { &hf_lustre_lov_desc_ld_default_stripe_count,
9600 { "Ld Default Stripe Count", "lustre.lov_desc.ld_default_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9601 { &hf_lustre_ldlm_resource_desc_lr_padding,
9602 { "Lr Padding", "lustre.ldlm_resource_desc.lr_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9603 { &hf_lustre_cfg_marker_cm_vers,
9604 { "Cm Vers", "lustre.cfg_marker.cm_vers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9605 { &hf_lustre_mds_rec_create_cr_fid,
9606 { "Cr Fid", "lustre.mds_rec_create.cr_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9607 { &hf_lustre_llog_unlink_rec_lur_hdr,
9608 { "Lur Hdr", "lustre.llog_unlink_rec.lur_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9609 { &hf_lustre_llogd_body_lgd_index,
9610 { "Lgd Index", "lustre.llogd_body.lgd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9611 { &hf_lustre_cfg_marker_cm_tgtname,
9612 { "Cm Tgtname", "lustre.cfg_marker.cm_tgtname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9613 { &hf_lustre_mds_rec_unlink_ul_padding_1,
9614 { "Ul Padding 1", "lustre.mds_rec_unlink.ul_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9615 { &hf_lustre_mds_rec_unlink_ul_cap,
9616 { "Ul Cap", "lustre.mds_rec_unlink.ul_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9617 { &hf_lustre_llog_array_rec_lmr_med,
9618 { "Lmr Med", "lustre.llog_array_rec.lmr_med", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9619 { &hf_lustre_llog_setattr_rec_lsr_ogen,
9620 { "Lsr Ogen", "lustre.llog_setattr_rec.lsr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9621 { &hf_lustre_mds_rec_create_cr_padding_3,
9622 { "Cr Padding 3", "lustre.mds_rec_create.cr_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9623 { &hf_lustre_llog_logid_rec_lid_hdr,
9624 { "Lid Hdr", "lustre.llog_logid_rec.lid_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9625 { &hf_lustre_lov_user_ost_data_join_l_ost_idx,
9626 { "L Ost Idx", "lustre.lov_user_ost_data_join.l_ost_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9627 { &hf_lustre_obdo_o_easize,
9628 { "O Easize", "lustre.obdo.o_easize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9629 { &hf_lustre_lov_user_md_join_lmm_array_id,
9630 { "Lmm Array Id", "lustre.lov_user_md_join.lmm_array_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9631 { &hf_lustre_ost_body_oa,
9632 { "Oa", "lustre.ost_body.oa", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9633 { &hf_lustre_llog_logid_rec_padding3,
9634 { "Padding3", "lustre.llog_logid_rec.padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9635 { &hf_lustre_llog_log_hdr_llh_flags,
9636 { "Llh Flags", "lustre.llog_log_hdr.llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9637 {&hf_lustre_llog_hdr_llh_flag_zap_when_empty,
9638 {"LLOG_F_ZAP_WHEN_EMPTY","lustre.lustre.llog_log_hdr.llh_flag_zap",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_ZAP_WHEN_EMPTY,"",HFILL}},
9639 {&hf_lustre_llog_hdr_llh_flag_is_cat,
9640 {"LLOG_F_IS_CAT","lustre.lustre.llog_log_hdr.llh_flag_cat",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_IS_CAT,"",HFILL}},
9641 {&hf_lustre_llog_hdr_llh_flag_is_play,
9642 {"LOG_F_IS_PLAIN","lustre.lustre.llog_log_hdr.llh_flag_play",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_IS_PLAIN,"",HFILL}},
9644 { &hf_lustre_llog_setattr_rec_lsr_oid,
9645 { "Lsr Oid", "lustre.llog_setattr_rec.lsr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9646 { &hf_lustre_mds_rec_create_cr_mode,
9647 { "Cr Mode", "lustre.mds_rec_create.cr_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9648 { &hf_lustre_llog_size_change_rec_padding,
9649 { "Padding", "lustre.llog_size_change_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9650 { &hf_lustre_mgs_target_info_mti_config_ver,
9651 { "Mti Config Ver", "lustre.mgs_target_info.mti_config_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9652 { &hf_lustre_cfg_marker_cm_createtime,
9653 { "Cm Createtime", "lustre.cfg_marker.cm_createtime",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9654 { &hf_lustre_qunit_data_old_qd_count,
9655 { "Qd Count", "lustre.qunit_data_old.qd_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9656 { &hf_lustre_lov_mds_md_join_lmmj_array_id,
9657 { "Lmmj Array Id", "lustre.lov_mds_md_join.lmmj_array_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9658 { &hf_lustre_mds_rec_setattr_sa_uid,
9659 { "Sa Uid", "lustre.mds_rec_setattr.sa_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9660 { &hf_lustre_llog_catid_lci_padding1,
9661 { "Lci Padding1", "lustre.llog_catid.lci_padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9662 { &hf_lustre_mds_rec_setattr_sa_atime,
9663 { "Sa Atime", "lustre.mds_rec_setattr.sa_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9664 { &hf_lustre_lov_desc_ld_active_tgt_count,
9665 { "Ld Active Tgt Count", "lustre.lov_desc.ld_active_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9666 { &hf_lustre_obdo_o_lcookie,
9667 { "O Lcookie", "lustre.obdo.o_lcookie", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9668 { &hf_lustre_llog_gen_rec_lgr_gen,
9669 { "Lgr Gen", "lustre.llog_gen_rec.lgr_gen", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9670 { &hf_lustre_lov_user_ost_data_join_l_object_id,
9671 { "L Object Id", "lustre.lov_user_ost_data_join.l_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9672 { &hf_lustre_obdo_o_id,
9673 { "O Id", "lustre.obdo.o_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9674 { &hf_lustre_mgs_target_info_mti_uuid,
9675 { "Mti Uuid", "lustre.mgs_target_info.mti_uuid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9676 { &hf_lustre_mds_rec_link_lk_padding_1,
9677 { "Lk Padding 1", "lustre.mds_rec_link.lk_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9678 { &hf_lustre_llog_rec_hdr_lrh_index,
9679 { "Lrh Index", "lustre.llog_rec_hdr.lrh_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9680 { &hf_lustre_llog_setattr_rec_lsr_hdr,
9681 { "Lsr Hdr", "lustre.llog_setattr_rec.lsr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9682 { &hf_lustre_mgs_target_info_mti_stripe_index,
9683 { "Mti Stripe Index", "lustre.mgs_target_info.mti_stripe_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9684 { &hf_lustre_llog_gen_conn_cnt,
9685 { "Conn Cnt", "lustre.llog_gen.conn_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9686 { &hf_lustre_obdo_o_padding_6,
9687 { "O Padding 6", "lustre.obdo.o_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9688 { &hf_lustre_mds_rec_create_cr_suppgid,
9689 { "Cr Suppgid", "lustre.mds_rec_create.cr_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9690 { &hf_lustre_llog_cookie_lgc_index,
9691 { "Lgc Index", "lustre.llog_cookie.lgc_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9692 { &hf_lustre_lov_desc_ld_uuid,
9693 { "Ld Uuid", "lustre.lov_desc.ld_uuid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9694 { &hf_lustre_llog_create_rec_lcr_oid,
9695 { "Lcr Oid", "lustre.llog_create_rec.lcr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9696 { &hf_lustre_ldlm_reply_lock_desc,
9697 { "Lock Desc", "lustre.ldlm_reply.lock_desc", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9698 { &hf_lustre_lov_desc_ld_padding_0,
9699 { "Ld Padding 0", "lustre.lov_desc.ld_padding_0", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9700 { &hf_lustre_llog_unlink_rec_lur_ogen,
9701 { "Lur Ogen", "lustre.llog_unlink_rec.lur_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9702 { &hf_lustre_llog_orphan_rec_lor_hdr,
9703 { "Lor Hdr", "lustre.llog_orphan_rec.lor_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9704 { &hf_lustre_mds_rec_rename_rn_fsuid,
9705 { "Rn Fsuid", "lustre.mds_rec_rename.rn_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9706 { &hf_lustre_cfg_marker_cm_flags,
9707 { "Cm Flags", "lustre.cfg_marker.cm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9708 { &hf_lustre_obdo_o_padding_3,
9709 { "O Padding 3", "lustre.obdo.o_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9710 { &hf_lustre_lov_user_ost_data_join_l_ost_gen,
9711 { "L Ost Gen", "lustre.lov_user_ost_data_join.l_ost_gen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9712 { &hf_lustre_mds_rec_create_cr_fsuid,
9713 { "Cr Fsuid", "lustre.mds_rec_create.cr_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9714 { &hf_lustre_mds_rec_unlink_ul_fsgid,
9715 { "Ul Fsgid", "lustre.mds_rec_unlink.ul_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9716 { &hf_lustre_ldlm_request_lock_desc,
9717 { "Lock Desc", "lustre.ldlm_request.lock_desc", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9718 { &hf_lustre_lov_user_md_join_lmm_pattern,
9719 { "Lmm Pattern", "lustre.lov_user_md_join.lmm_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9720 { &hf_lustre_mds_rec_unlink_ul_fsuid,
9721 { "Ul Fsuid", "lustre.mds_rec_unlink.ul_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9722 { &hf_lustre_mds_rec_link_lk_suppgid2,
9723 { "Lk Suppgid2", "lustre.mds_rec_link.lk_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9724 { &hf_lustre_llog_orphan_rec_padding,
9725 { "Padding", "lustre.llog_orphan_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9726 { &hf_lustre_lov_user_md_join_lmm_tree_gen,
9727 { "Lmm Tree Gen", "lustre.lov_user_md_join.lmm_tree_gen", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9728 { &hf_lustre_obdo_o_flags,
9729 { "O Flags", "lustre.obdo.o_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9730 { &hf_lustre_mgs_target_info_mti_params,
9731 { "Mti Params", "lustre.mgs_target_info.mti_params", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9732 { &hf_lustre_llog_logid_lgl_ogen,
9733 { "Lgl Ogen", "lustre.llog_logid.lgl_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9734 { &hf_lustre_mds_rec_setattr_sa_valid,
9735 { "Sa Valid", "lustre.mds_rec_setattr.sa_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9736 { &hf_lustre_cfg_marker_cm_comment,
9737 { "Cm Comment", "lustre.cfg_marker.cm_comment", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9738 { &hf_lustre_llog_unlink_rec_lur_oid,
9739 { "Lur Oid", "lustre.llog_unlink_rec.lur_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9740 { &hf_lustre_qunit_data_qd_count,
9741 { "Qd Count", "lustre.qunit_data.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9742 { &hf_lustre_mds_rec_rename_rn_padding_1,
9743 { "Rn Padding 1", "lustre.mds_rec_rename.rn_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9744 { &hf_lustre_obdo_o_mtime,
9745 { "O Mtime", "lustre.obdo.o_mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9746 { &hf_lustre_lov_mds_md_join_lmmj_md,
9747 { "Lmmj Md", "lustre.lov_mds_md_join.lmmj_md", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9748 { &hf_lustre_mds_rec_rename_rn_fsgid,
9749 { "Rn Fsgid", "lustre.mds_rec_rename.rn_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9750 { &hf_lustre_mds_rec_rename_rn_cap,
9751 { "Rn Cap", "lustre.mds_rec_rename.rn_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9752 { &hf_lustre_obdo_o_blksize,
9753 { "O Blksize", "lustre.obdo.o_blksize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9754 { &hf_lustre_mds_rec_unlink_ul_suppgid,
9755 { "Ul Suppgid", "lustre.mds_rec_unlink.ul_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9756 { &hf_lustre_ldlm_res_id_name,
9757 { "Name", "lustre.ldlm_res_id.name", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9758 { &hf_lustre_mds_rec_link_lk_time,
9759 { "Lk Time", "lustre.mds_rec_link.lk_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9760 { &hf_lustre_ldlm_reply_lock_handle,
9761 { "Lock Handle", "lustre.ldlm_reply.lock_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9762 { &hf_lustre_mds_rec_unlink_ul_padding_3,
9763 { "Ul Padding 3", "lustre.mds_rec_unlink.ul_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9764 { &hf_lustre_llogd_body_lgd_saved_index,
9765 { "Lgd Saved Index", "lustre.llogd_body.lgd_saved_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9766 { &hf_lustre_mds_rec_join_jr_headsize,
9767 { "Jr Headsize", "lustre.mds_rec_join.jr_headsize", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9768 { &hf_lustre_mds_rec_rename_rn_padding_4,
9769 { "Rn Padding 4", "lustre.mds_rec_rename.rn_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9770 { &hf_lustre_qunit_data_old_qd_isblk,
9771 { "Qd Isblk", "lustre.qunit_data_old.qd_isblk", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9772 { &hf_lustre_obdo_o_blocks,
9773 { "O Blocks", "lustre.obdo.o_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9774 { &hf_lustre_lov_desc_ld_padding_2,
9775 { "Ld Padding 2", "lustre.lov_desc.ld_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9776 { &hf_lustre_mds_rec_link_lk_fid2,
9777 { "Lk Fid2", "lustre.mds_rec_link.lk_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9778 { &hf_lustre_llog_logid_rec_lid_tail,
9779 { "Lid Tail", "lustre.llog_logid_rec.lid_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9780 { &hf_lustre_obdo_o_grant,
9781 { "O Grant", "lustre.obdo.o_grant", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9782 { &hf_lustre_obdo_o_padding_2,
9783 { "O Padding 2", "lustre.obdo.o_padding_2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9784 { &hf_lustre_quota_adjust_qunit_qaq_iunit_sz,
9785 { "Qaq Iunit Sz", "lustre.quota_adjust_qunit.qaq_iunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9786 { &hf_lustre_llog_unlink_rec_padding,
9787 { "Padding", "lustre.llog_unlink_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9788 { &hf_lustre_ldlm_lock_desc_l_req_mode,
9789 { "L Req Mode", "lustre.ldlm_lock_desc.l_req_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
9790 { &hf_lustre_ldlm_extent_end,
9791 { "End", "lustre.ldlm_extent.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9792 { &hf_lustre_llog_gen_rec_lgr_hdr,
9793 { "Lgr Hdr", "lustre.llog_gen_rec.lgr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9794 { &hf_lustre_llog_orphan_rec_lor_ogen,
9795 { "Lor Ogen", "lustre.llog_orphan_rec.lor_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9796 { &hf_lustre_lov_user_md_join_lmm_extent_count,
9797 { "Lmm Extent Count", "lustre.lov_user_md_join.lmm_extent_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9798 { &hf_lustre_mds_extent_desc_med_len,
9799 { "Med Len", "lustre.mds_extent_desc.med_len", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9800 { &hf_lustre_llogd_body_lgd_llh_flags,
9801 { "Lgd Llh Flags", "lustre.llogd_body.lgd_llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9802 { &hf_lustre_llog_array_rec_lmr_hdr,
9803 { "Lmr Hdr", "lustre.llog_array_rec.lmr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9804 { &hf_lustre_llog_log_hdr_llh_cat_idx,
9805 { "Llh Cat Idx", "lustre.llog_log_hdr.llh_cat_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9806 { &hf_lustre_llog_log_hdr_llh_bitmap_offset,
9807 { "Llh Bitmap Offset", "lustre.llog_log_hdr.llh_bitmap_offset", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9808 { &hf_lustre_llog_orphan_rec_lor_oid,
9809 { "Lor Oid", "lustre.llog_orphan_rec.lor_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9810 { &hf_lustre_ldlm_reply_lock_padding,
9811 { "Lock Padding", "lustre.ldlm_reply.lock_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9812 { &hf_lustre_obd_quotactl_qc_id,
9813 { "Qc Id", "lustre.obd_quotactl.qc_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9814 { &hf_lustre_mds_rec_create_cr_padding_4,
9815 { "Cr Padding 4", "lustre.mds_rec_create.cr_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9816 { &hf_lustre_llog_logid_rec_padding4,
9817 { "Padding4", "lustre.llog_logid_rec.padding4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9818 { &hf_lustre_mds_rec_link_lk_padding_2,
9819 { "Lk Padding 2", "lustre.mds_rec_link.lk_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9820 { &hf_lustre_llog_setattr_rec_lsr_gid,
9821 { "Lsr Gid", "lustre.llog_setattr_rec.lsr_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9822 { &hf_lustre_lov_user_md_join_lmm_magic,
9823 { "Lmm Magic", "lustre.lov_user_md_join.lmm_magic", FT_UINT32, BASE_HEX, VALS(lustre_lov_magic), 0, "", HFILL }},
9824 { &hf_lustre_obd_quotactl_qc_type,
9825 { "Qc Type", "lustre.obd_quotactl.qc_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9826 { &hf_lustre_cfg_marker_padding,
9827 { "Padding", "lustre.cfg_marker.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9828 { &hf_lustre_mgs_target_info_mti_nids,
9829 { "Mti Nids", "lustre.mgs_target_info.mti_nids", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9830 { &hf_lustre_lov_user_ost_data_join_l_extent_end,
9831 { "L Extent End", "lustre.lov_user_ost_data_join.l_extent_end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9832 { &hf_lustre_obdo_o_stripe_idx,
9833 { "O Stripe Idx", "lustre.obdo.o_stripe_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9834 { &hf_lustre_llogd_conn_body_lgdc_logid,
9835 { "Lgdc Logid", "lustre.llogd_conn_body.lgdc_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9836 { &hf_lustre_mds_rec_setattr_sa_fsuid,
9837 { "Sa Fsuid", "lustre.mds_rec_setattr.sa_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9838 { &hf_lustre_ldlm_flock_blocking_pid,
9839 { "Blocking Pid", "lustre.ldlm_flock.blocking_pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9840 { &hf_lustre_lov_desc_ld_tgt_count,
9841 { "Ld Tgt Count", "lustre.lov_desc.ld_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9842 { &hf_lustre_llogd_body_lgd_cur_offset,
9843 { "Lgd Cur Offset", "lustre.llogd_body.lgd_cur_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9844 { &hf_lustre_llog_create_rec_lcr_ogen,
9845 { "Lcr Ogen", "lustre.llog_create_rec.lcr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9846 { &hf_lustre_qunit_data_old2_qd_count,
9847 { "Qd Count", "lustre.qunit_data_old2.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9849 { "Operation", "lustre.opnum", FT_UINT16, BASE_DEC, NULL, 0, "", HFILL }},
9850 { &hf_lustre_qunit_data_old2_qd_flags,
9851 { "Qd Flags", "lustre.qunit_data_old2.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9852 { &hf_lustre_ldlm_flock_start,
9853 { "Start", "lustre.ldlm_flock.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9854 { &hf_lustre_quota_adjust_qunit_qaq_bunit_sz,
9855 { "Qaq Bunit Sz", "lustre.quota_adjust_qunit.qaq_bunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9856 { &hf_lustre_llog_array_rec_lmr_tail,
9857 { "Lmr Tail", "lustre.llog_array_rec.lmr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9858 { &hf_lustre_ldlm_flock_pid,
9859 { "Pid", "lustre.ldlm_flock.pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9860 { &hf_lustre_lov_desc_ld_default_stripe_size,
9861 { "Ld Default Stripe Size", "lustre.lov_desc.ld_default_stripe_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9862 { &hf_lustre_mds_rec_setattr_sa_opcode,
9863 { "Sa Opcode", "lustre.mds_rec_setattr.sa_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9864 { &hf_lustre_llog_log_hdr_llh_tgtuuid,
9865 { "Llh Tgtuuid", "lustre.llog_log_hdr.llh_tgtuuid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9866 { &hf_lustre_mds_rec_link_lk_fid1,
9867 { "Lk Fid1", "lustre.mds_rec_link.lk_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9868 { &hf_lustre_cfg_marker_cm_step,
9869 { "Cm Step", "lustre.cfg_marker.cm_step", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9870 { &hf_lustre_mgs_send_param_mgs_param,
9871 { "Mgs Param", "lustre.mgs_send_param.mgs_param", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9872 { &hf_lustre_llog_create_rec_lcr_fid,
9873 { "Lcr Fid", "lustre.llog_create_rec.lcr_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9874 { &hf_lustre_lov_desc_ld_default_stripe_offset,
9875 { "Ld Default Stripe Offset", "lustre.lov_desc.ld_default_stripe_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9876 { &hf_lustre_ldlm_resource_desc_lr_name,
9877 { "Lr Name", "lustre.ldlm_resource_desc.lr_name", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9878 { &hf_lustre_llog_rec_tail_lrt_len,
9879 { "Lrt Len", "lustre.llog_rec_tail.lrt_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9880 { &hf_lustre_mds_rec_setattr_sa_mtime,
9881 { "Sa Mtime", "lustre.mds_rec_setattr.sa_mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9882 { &hf_lustre_llog_log_hdr_llh_timestamp,
9883 { "Llh Timestamp", "lustre.llog_log_hdr.llh_timestamp", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9884 { &hf_lustre_llog_catid_lci_padding2,
9885 { "Lci Padding2", "lustre.llog_catid.lci_padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9886 { &hf_lustre_llogd_conn_body_lgdc_ctxt_idx,
9887 { "Lgdc Ctxt Idx", "lustre.llogd_conn_body.lgdc_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9888 { &hf_lustre_cfg_marker_cm_canceltime,
9889 { "Cm Canceltime", "lustre.cfg_marker.cm_canceltime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9890 { &hf_lustre_mgs_target_info_mti_lustre_ver,
9891 { "Mti Lustre Ver", "lustre.mgs_target_info.mti_lustre_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9892 { &hf_lustre_obdo_o_padding_1,
9893 { "O Padding 1", "lustre.obdo.o_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9894 { &hf_lustre_qunit_data_qd_flags,
9895 { "Qd Flags", "lustre.qunit_data.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9896 { &hf_lustre_llog_logid_rec_lid_id,
9897 { "Lid Id", "lustre.llog_logid_rec.lid_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9898 { &hf_lustre_obdo_o_generation,
9899 { "O Generation", "lustre.obdo.o_generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9900 { &hf_lustre_llog_gen_mnt_cnt,
9901 { "Mnt Cnt", "lustre.llog_gen.mnt_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9902 { &hf_lustre_llog_size_change_rec_lsc_tail,
9903 { "Lsc Tail", "lustre.llog_size_change_rec.lsc_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9904 { &hf_lustre_obdo_o_padding_5,
9905 { "O Padding 5", "lustre.obdo.o_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9906 { &hf_lustre_ldlm_lock_desc_l_resource,
9907 { "L Resource", "lustre.ldlm_lock_desc.l_resource", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9908 { &hf_lustre_mds_rec_rename_rn_time,
9909 { "Rn Time", "lustre.mds_rec_rename.rn_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9910 { &hf_lustre_mds_rec_create_cr_rdev,
9911 { "Cr Rdev", "lustre.mds_rec_create.cr_rdev", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9912 { &hf_lustre_obdo_o_fid,
9913 { "O Fid", "lustre.obdo.o_fid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9914 { &hf_lustre_mds_rec_setattr_sa_fid,
9915 { "Sa Fid", "lustre.mds_rec_setattr.sa_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9916 { &hf_lustre_ldlm_request_lock_count,
9917 { "Lock Count", "lustre.ldlm_request.lock_count", FT_UINT32, BASE_HEX_DEC, NULL, 0, "", HFILL }},
9918 { &hf_lustre_ldlm_flock_end,
9919 { "End", "lustre.ldlm_flock.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9920 { &hf_lustre_mds_rec_link_lk_opcode,
9921 { "Lk Opcode", "lustre.mds_rec_link.lk_opcode", FT_UINT32, BASE_DEC,VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9922 { &hf_lustre_mgs_target_info_mti_nid_count,
9923 { "Mti Nid Count", "lustre.mgs_target_info.mti_nid_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9924 /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
9925 { &hf_lustre_mgs_target_info,
9926 { "mgs target info", "lustre.mgs_target_info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9927 { &hf_lustre_mgs_send_param,
9928 { "mgs send param", "lustre.mgs_send_param", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9929 /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
9930 { &hf_lustre_ost_lvb,
9931 { "ost lvb data", "lustre.ost_lvb", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9933 { &hf_lustre_obdo_o_ctime,
9934 { "O Ctime", "lustre.obdo.o_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9935 { &hf_lustre_ldlm_reply_lock_policy_res2,
9936 { "Lock Policy Res2", "lustre.ldlm_reply.lock_policy_res2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9937 { &hf_lustre_llogd_body_lgd_ctxt_idx,
9938 { "Lgd Ctxt Idx", "lustre.llogd_body.lgd_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9939 { &hf_lustre_mds_rec_unlink_ul_fid2,
9940 { "Ul Fid2", "lustre.mds_rec_unlink.ul_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9941 { &hf_lustre_lov_desc_ld_qos_maxage,
9942 { "Ld Qos Maxage", "lustre.lov_desc.ld_qos_maxage", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9943 { &hf_lustre_ldlm_resource_desc_lr_type,
9944 { "Lr Type", "lustre.ldlm_resource_desc.lr_type", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_type_t_vals), 0, "", HFILL }},
9945 { &hf_lustre_llog_setattr_rec_lsr_tail,
9946 { "Lsr Tail", "lustre.llog_setattr_rec.lsr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9947 { &hf_lustre_llog_cookie_lgc_subsys,
9948 { "Lgc Subsys", "lustre.llog_cookie.lgc_subsys", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9949 { &hf_lustre_llog_log_hdr_llh_hdr,
9950 { "Llh Hdr", "lustre.llog_log_hdr.llh_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9951 { &hf_lustre_mds_rec_setattr_sa_fsgid,
9952 { "Sa Fsgid", "lustre.mds_rec_setattr.sa_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9953 { &hf_lustre_mds_rec_setattr_sa_padding,
9954 { "Sa Padding", "lustre.mds_rec_setattr.sa_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9955 { &hf_lustre_lov_mds_md_join_lmmj_extent_count,
9956 { "Lmmj Extent Count", "lustre.lov_mds_md_join.lmmj_extent_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9957 { &hf_lustre_llog_log_hdr_llh_reserved,
9958 { "Llh Reserved", "lustre.llog_log_hdr.llh_reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9960 { &hf_lustre_extra_padding,
9961 { "extra padding", "lustre.msg_v2_extra_padding", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
9962 { &hf_lustre_ldlm_reply,
9963 { "ldlm reply", "lustre.ldlm_reply", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
9964 { &hf_lustre_ldlm_request,
9965 { "ldlm request", "lustre.ldlm_request", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
9967 /* add for lustre_user.h */
9968 { &hf_lustre_obd_dqinfo_dqi_valid,
9969 { "Dqi Valid", "lustre.obd_dqinfo.dqi_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9970 { &hf_lustre_obd_dqblk_dqb_isoftlimit,
9971 { "Dqb Isoftlimit", "lustre.obd_dqblk.dqb_isoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9972 { &hf_lustre_obd_dqblk_dqb_bhardlimit,
9973 { "Dqb Bhardlimit", "lustre.obd_dqblk.dqb_bhardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9974 { &hf_lustre_obd_dqblk_dqb_curspace,
9975 { "Dqb Curspace", "lustre.obd_dqblk.dqb_curspace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9976 { &hf_lustre_obd_dqblk_dqb_itime,
9977 { "Dqb Itime", "lustre.obd_dqblk.dqb_itime", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9978 { &hf_lustre_obd_dqblk_dqb_valid,
9979 { "Dqb Valid", "lustre.obd_dqblk.dqb_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9980 { &hf_lustre_obd_dqinfo_dqi_igrace,
9981 { "Dqi Igrace", "lustre.obd_dqinfo.dqi_igrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9982 { &hf_lustre_obd_dqinfo_dqi_bgrace,
9983 { "Dqi Bgrace", "lustre.obd_dqinfo.dqi_bgrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9984 { &hf_lustre_obd_dqblk_padding,
9985 { "Padding", "lustre.obd_dqblk.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9986 { &hf_lustre_obd_dqblk_dqb_curinodes,
9987 { "Dqb Curinodes", "lustre.obd_dqblk.dqb_curinodes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9988 { &hf_lustre_obd_dqblk_dqb_bsoftlimit,
9989 { "Dqb Bsoftlimit", "lustre.obd_dqblk.dqb_bsoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9990 { &hf_lustre_obd_dqinfo_dqi_flags,
9991 { "Dqi Flags", "lustre.obd_dqinfo.dqi_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9992 { &hf_lustre_obd_dqblk_dqb_btime,
9993 { "Dqb Btime", "lustre.obd_dqblk.dqb_btime", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9994 { &hf_lustre_obd_dqblk_dqb_ihardlimit,
9995 { "Dqb Ihardlimit", "lustre.obd_dqblk.dqb_ihardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }}
10000 static gint *ett[] = {
10002 &ett_lustre_lustre_handle_cookie,
10003 &ett_lustre_lustre_msg_v1,
10004 &ett_lustre_lustre_handle_v1,
10005 &ett_lustre_lustre_msg_v2,
10006 &ett_lustre_ptlrpc_body,
10007 &ett_lustre_lustre_handle_v2,
10008 &ett_lustre_obd_connect_data,
10009 &ett_lustre_lov_mds_md_v1,
10010 &ett_lustre_lov_ost_data_v1,
10011 &ett_lustre_obd_statfs,
10012 &ett_lustre_obd_ioobj,
10013 &ett_lustre_niobuf_remote,
10014 &ett_lustre_ost_lvb,
10015 &ett_lustre_ll_fid,
10016 &ett_lustre_mds_status_req,
10017 &ett_lustre_mds_body,
10018 &ett_lustre_obd_quotactl,
10019 &ett_lustre_obd_dqinfo,
10020 &ett_lustre_obd_dqblk,
10021 &ett_lustre_quota_adjust_qunit,
10022 &ett_lustre_mds_rec_setattr,
10023 &ett_lustre_mds_rec_create,
10024 &ett_lustre_mds_rec_join,
10025 &ett_lustre_mds_rec_link,
10026 &ett_lustre_mds_rec_unlink,
10027 &ett_lustre_mds_rec_rename,
10028 &ett_lustre_lov_desc,
10029 &ett_lustre_obd_uuid,
10030 &ett_lustre_ldlm_res_id,
10031 &ett_lustre_ldlm_extent,
10032 &ett_lustre_ldlm_inodebits,
10033 &ett_lustre_ldlm_flock,
10034 &ett_lustre_ldlm_intent_opc,
10035 &ett_lustre_ldlm_resource_desc,
10036 &ett_lustre_ldlm_res_id,
10037 &ett_lustre_ldlm_lock_desc,
10038 &ett_lustre_ldlm_resource_desc,
10039 &ett_lustre_ldlm_request,
10040 &ett_lustre_ldlm_lock_desc,
10041 &ett_lustre_lustre_handle,
10042 &ett_lustre_ldlm_reply,
10043 &ett_lustre_ldlm_lock_desc,
10044 &ett_lustre_lustre_handle,
10045 &ett_lustre_mgs_send_param,
10046 &ett_lustre_mgs_target_info,
10047 &ett_lustre_cfg_marker,
10048 &ett_lustre_llog_logid,
10049 &ett_lustre_llog_catid,
10050 &ett_lustre_llog_logid,
10051 &ett_lustre_lov_mds_md_join,
10052 &ett_lustre_lov_mds_md,
10053 &ett_lustre_llog_logid,
10054 &ett_lustre_llog_rec_hdr,
10055 &ett_lustre_llog_rec_tail,
10056 &ett_lustre_llog_logid_rec,
10057 &ett_lustre_llog_rec_hdr,
10058 &ett_lustre_llog_logid,
10059 &ett_lustre_llog_rec_tail,
10060 &ett_lustre_mds_extent_desc,
10061 &ett_lustre_lov_mds_md,
10062 &ett_lustre_llog_array_rec,
10063 &ett_lustre_llog_rec_hdr,
10064 &ett_lustre_mds_extent_desc,
10065 &ett_lustre_llog_rec_tail,
10066 &ett_lustre_llog_create_rec,
10067 &ett_lustre_llog_rec_hdr,
10068 &ett_lustre_ll_fid,
10069 &ett_lustre_llog_rec_tail,
10070 &ett_lustre_llog_orphan_rec,
10071 &ett_lustre_llog_rec_hdr,
10072 &ett_lustre_llog_rec_tail,
10073 &ett_lustre_llog_unlink_rec,
10074 &ett_lustre_llog_rec_hdr,
10075 &ett_lustre_llog_rec_tail,
10076 &ett_lustre_llog_setattr_rec,
10077 &ett_lustre_llog_rec_hdr,
10078 &ett_lustre_llog_rec_tail,
10079 &ett_lustre_llog_size_change_rec,
10080 &ett_lustre_llog_rec_hdr,
10081 &ett_lustre_ll_fid,
10082 &ett_lustre_llog_rec_tail,
10083 &ett_lustre_llog_gen,
10084 &ett_lustre_llog_gen_rec,
10085 &ett_lustre_llog_rec_hdr,
10086 &ett_lustre_llog_gen,
10087 &ett_lustre_llog_rec_tail,
10088 &ett_lustre_llog_log_hdr,
10089 &ett_lustre_llog_rec_hdr,
10090 &ett_lustre_obd_uuid,
10091 &ett_lustre_llog_rec_tail,
10092 &ett_lustre_llog_cookie,
10093 &ett_lustre_llog_logid,
10094 &ett_lustre_llogd_body,
10095 &ett_lustre_llog_logid,
10096 &ett_lustre_llogd_conn_body,
10097 &ett_lustre_llog_gen,
10098 &ett_lustre_llog_logid,
10099 &ett_lustre_lov_user_ost_data_join,
10100 &ett_lustre_lov_user_md_join,
10101 &ett_lustre_llog_logid,
10102 &ett_lustre_lov_user_ost_data_join,
10104 &ett_lustre_lustre_handle,
10105 &ett_lustre_llog_cookie,
10106 &ett_lustre_ost_body,
10108 &ett_lustre_qunit_data,
10109 &ett_lustre_qunit_data_old2,
10110 &ett_lustre_qunit_data_old,
10111 &ett_lustre_ldlm_lock_flags,
10112 &ett_lustre_llog_log_llh_flags,
10116 proto_lustre = proto_register_protocol("Lustre", "lustre", "lustre");
10117 proto_register_field_array(proto_lustre, hf, array_length (hf));
10118 proto_register_subtree_array(ett, array_length(ett));
10122 void proto_reg_handoff_lustre(void)
10124 dissector_handle_t lustre_handle;
10125 lustre_handle=create_dissector_handle(dissect_lustre, proto_lustre);
10126 /* we use Lustre only if we get ptl_index = One of this code (we have removed the bulk code) */
10127 /* in LNET we test if the message is a put or not before adding an lnet.ptl_index value */
10128 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
10129 dissector_add("lnet.ptl_index", CONNMGR_REQUEST_PORTAL , lustre_handle);
10130 dissector_add("lnet.ptl_index", CONNMGR_REPLY_PORTAL , lustre_handle);
10131 dissector_add("lnet.ptl_index", OSC_REPLY_PORTAL , lustre_handle);
10132 dissector_add("lnet.ptl_index", OST_IO_PORTAL , lustre_handle);
10133 dissector_add("lnet.ptl_index", OST_CREATE_PORTAL , lustre_handle);
10134 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
10135 dissector_add("lnet.ptl_index", MDS_REQUEST_PORTAL , lustre_handle);
10136 dissector_add("lnet.ptl_index", LDLM_CB_REQUEST_PORTAL , lustre_handle);
10137 dissector_add("lnet.ptl_index", LDLM_CB_REPLY_PORTAL , lustre_handle);
10138 dissector_add("lnet.ptl_index", LDLM_CANCEL_REQUEST_PORTAL, lustre_handle);
10139 dissector_add("lnet.ptl_index", LDLM_CANCEL_REPLY_PORTAL , lustre_handle);
10140 dissector_add("lnet.ptl_index", MDS_SETATTR_PORTAL , lustre_handle);
10141 dissector_add("lnet.ptl_index", MDS_READPAGE_PORTAL , lustre_handle);
10142 dissector_add("lnet.ptl_index", MGC_REPLY_PORTAL , lustre_handle);
10143 dissector_add("lnet.ptl_index", MGS_REQUEST_PORTAL , lustre_handle);
10144 dissector_add("lnet.ptl_index", MGS_REPLY_PORTAL , lustre_handle);
10145 dissector_add("lnet.ptl_index", OST_REQUEST_PORTAL , lustre_handle);