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 * C-Syle: 2 space indents
13 * This program is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License
15 * as published by the Free Software Foundation; either version 2
16 * of the License, or (at your option) any later version.
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
23 * You should have received a copy of the GNU General Public License
24 * along with this program; if not, write to the Free Software
25 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27 * Copyright (c) 2011, 2012, Intel Corporation.
37 #include <epan/packet.h>
39 #include <epan/dissectors/packet-windows-common.h>
41 const true_false_string lnet_flags_set_truth = { "Set", "Unset" };
43 /* --------------------------------------------------------------------------------------- */
44 /* def and macro to know where we are the the lustre payload */
45 #define LUSTRE_MAGIC_OFFSET 8
46 #define LUSTRE_MSG_MAGIC_V1 0x0BD00BD0
47 #define LUSTRE_MSG_MAGIC_V2 0x0BD00BD3
49 #define LUSTRE_BUFCOUNT_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 0 : 60)
50 #define LUSTRE_BUFCOUNT ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) \
51 ? (tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)) : ((tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF))) )
52 /* remark : BUFLENOFF don't have the same meaning if it's for v1 or v2
53 * v1 : LUSTRE_BUFLEN_OFF = offset buflen[0] - 4 bytes.
54 * v2 : LUSTRE_BUFLEN_OFF = offset buflen[0]
56 #define LUSTRE_BUFLEN_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 32 : 60)
58 /* LUSTRE_BUFFER_LEN(buffnum) */
59 #define LUSTRE_BUFFER_LEN(_n) (LUSTRE_BUFCOUNT <= (_n) ? 0 \
60 : tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+\
61 sizeof(guint32)*(_n)))
63 #define LUSTRE_REQ_REC_OFF 1 /* normal request record offset */
64 #define LUSTRE_REPLY_REC_OFF 1 /* normal reply record offset */
66 #define LUSTRE_DLM_INTENT_IT_OFF 2 /* intent lock it offset */
67 #define LUSTRE_DLM_INTENT_REC_OFF 3 /* intent lock record offset */
68 #define LUSTRE_DLM_LOCKREPLY_OFF 1 /* lockrep offset */
69 #define LUSTRE_DLM_REPLY_REC_OFF 2 /* reply record offset */
70 /* --------------------------------------------------------------------------------------- */
73 #define LUSTRE_PTLRPC_MSG_VERSION 0x00000003
74 #define LUSTRE_VERSION_MASK 0xffff0000
75 #define LUSTRE_OBD_VERSION 0x00010000
76 #define LUSTRE_MDS_VERSION 0x00020000
77 #define LUSTRE_OST_VERSION 0x00030000
78 #define LUSTRE_DLM_VERSION 0x00040000
79 #define LUSTRE_LOG_VERSION 0x00050000
80 #define LUSTRE_MGS_VERSION 0x00060000
84 #define LOV_MAGIC_V1 0x0BD10BD0
85 #define LOV_MAGIC LOV_MAGIC_V1
86 #define LOV_MAGIC_JOIN_V1 0x0BD20BD0
88 /* defined in lustre/include/lustre/lustre_idl.h */
90 CONNMGR_REQUEST_PORTAL = 1,
91 CONNMGR_REPLY_PORTAL = 2,
92 OSC_REQUEST_PORTAL = 3,
96 OST_CREATE_PORTAL = 7,
98 MDC_REQUEST_PORTAL = 9,
99 MDC_REPLY_PORTAL = 10,
100 MDC_BULK_PORTAL = 11,
101 MDS_REQUEST_PORTAL = 12,
102 MDS_REPLY_PORTAL = 13,
103 MDS_BULK_PORTAL = 14,
104 LDLM_CB_REQUEST_PORTAL = 15,
105 LDLM_CB_REPLY_PORTAL = 16,
106 LDLM_CANCEL_REQUEST_PORTAL = 17,
107 LDLM_CANCEL_REPLY_PORTAL = 18,
108 PTLBD_REQUEST_PORTAL = 19,
109 PTLBD_REPLY_PORTAL = 20,
110 PTLBD_BULK_PORTAL = 21,
111 MDS_SETATTR_PORTAL = 22,
112 MDS_READPAGE_PORTAL = 23,
114 MGC_REPLY_PORTAL = 25,
115 MGS_REQUEST_PORTAL = 26,
116 MGS_REPLY_PORTAL = 27,
117 OST_REQUEST_PORTAL = 28,
118 FLD_REQUEST_PORTAL = 29,
119 SEQ_METADATA_PORTAL = 30,
120 SEQ_DATA_PORTAL = 31,
121 SEQ_CONTROLLER_PORTAL = 32,
125 static const value_string portal_indices[] = {
126 { CONNMGR_REQUEST_PORTAL, "CONNMGR_REQUEST_PORTAL"},
127 { CONNMGR_REPLY_PORTAL , "CONNMGR_REPLY_PORTAL"},
128 { OSC_REQUEST_PORTAL , "OSC_REQUEST_PORTAL(obsolete)"},
129 { OSC_REPLY_PORTAL , "OSC_REPLY_PORTAL"},
130 { OSC_BULK_PORTAL , "OSC_BULK_PORTAL(obsolete)"},
131 { OST_IO_PORTAL , "OST_IO_PORTAL"},
132 { OST_CREATE_PORTAL , "OST_CREATE_PORTAL"},
133 { OST_BULK_PORTAL , "OST_BULK_PORTAL"},
134 { MDC_REQUEST_PORTAL , "MDC_REQUEST_PORTAL(obsolete)"},
135 { MDC_REPLY_PORTAL , "MDC_REPLY_PORTAL"},
136 { MDC_BULK_PORTAL , "MDC_BULK_PORTAL(obsolete)"},
137 { MDS_REQUEST_PORTAL , "MDS_REQUEST_PORTAL"},
138 { MDS_REPLY_PORTAL , "MDS_REPLY_PORTAL(obsolete)"},
139 { MDS_BULK_PORTAL , "MDS_BULK_PORTAL"},
140 { LDLM_CB_REQUEST_PORTAL , "LDLM_CB_REQUEST_PORTAL"},
141 { LDLM_CB_REPLY_PORTAL , "LDLM_CB_REPLY_PORTAL"},
142 { LDLM_CANCEL_REQUEST_PORTAL , "LDLM_CANCEL_REQUEST_PORTAL"},
143 { LDLM_CANCEL_REPLY_PORTAL , "LDLM_CANCEL_REPLY_PORTAL"},
144 { PTLBD_REQUEST_PORTAL , "PTLBD_REQUEST_PORTAL(obsolete)"},
145 { PTLBD_REPLY_PORTAL , "PTLBD_REPLY_PORTAL(obsolete)"},
146 { PTLBD_BULK_PORTAL , "PTLBD_BULK_PORTAL(obsolete)"},
147 { MDS_SETATTR_PORTAL , "MDS_SETATTR_PORTAL"},
148 { MDS_READPAGE_PORTAL , "MDS_READPAGE_PORTAL"},
149 { MDS_MDS_PORTAL, "MDS_MDS_PORTAL"},
150 { MGC_REPLY_PORTAL , "MGC_REPLY_PORTAL"},
151 { MGS_REQUEST_PORTAL , "MGS_REQUEST_PORTAL"},
152 { MGS_REPLY_PORTAL , "MGS_REPLY_PORTAL"},
153 { OST_REQUEST_PORTAL , "OST_REQUEST_PORTAL"},
154 { FLD_REQUEST_PORTAL , "FLD_REQUEST_PORTAL"},
155 { SEQ_METADATA_PORTAL, "SEQ_METADATA_PORTAL"},
156 { SEQ_DATA_PORTAL, "SEQ_DATA_PORTAL"},
157 { SEQ_CONTROLLER_PORTAL, "SEQ_CONTROLLER_PORTAL"},
158 { MGS_BULK_PORTAL, "MGS_BULK_PORTAL"}
162 OST_REPLY = 0, /* reply ? */
176 /* OST_SAN_READ = 14, deprecated */
177 /* OST_SAN_WRITE = 15, deprecated */
182 OST_QUOTA_ADJUST_QUNIT = 20,
193 #define OBD_FIRST_OPC OBD_PING
195 /* must be coherent with same declaration
196 * in lustre/include/lustre/lustre_idl.h
200 MDS_GETATTR_NAME = 34,
211 MDS_DONE_WRITING = 45,
223 #define IT_OPEN 0x0001
224 #define IT_CREAT 0x0002
225 #define IT_READDIR 0x0004
226 #define IT_GETATTR 0x0008
227 #define IT_LOOKUP 0x0010
228 #define IT_UNLINK 0x0020
229 #define IT_GETXATTR 0x0040
230 #define IT_EXEC 0x0080
231 #define IT_PIN 0x0100
235 #define MDS_FIRST_OPC MDS_GETATTR
236 #define LDLM_FIRST_OPC LDLM_ENQUEUE
255 LDLM_BL_CALLBACK = 104,
256 LDLM_CP_CALLBACK = 105,
257 LDLM_GL_CALLBACK = 106,
260 #define LDLM_FIRST_OPC LDLM_ENQUEUE
265 SEQ_FIRST_OPC = SEQ_QUERY
271 FLD_FIRST_OPC = FLD_QUERY
274 #define LDLM_FL_LOCK_CHANGED 0x000001
275 #define LDLM_FL_BLOCK_GRANTED 0x000002
276 #define LDLM_FL_BLOCK_CONV 0x000004
277 #define LDLM_FL_BLOCK_WAIT 0x000008
278 #define LDLM_FL_CBPENDING 0x000010
279 #define LDLM_FL_AST_SENT 0x000020
280 #define LDLM_FL_WAIT_NOREPROC 0x000040
281 #define LDLM_FL_CANCEL 0x000080
282 #define LDLM_FL_REPLAY 0x000100
283 #define LDLM_FL_INTENT_ONLY 0x000200
284 #define LDLM_FL_LOCAL_ONLY 0x000400
285 #define LDLM_FL_FAILED 0x000800
286 #define LDLM_FL_HAS_INTENT 0x001000
287 #define LDLM_FL_CANCELING 0x002000
288 #define LDLM_FL_LOCAL 0x004000
289 #define LDLM_FL_WARN 0x008000
290 #define LDLM_FL_DISCARD_DATA 0x010000
291 #define LDLM_FL_NO_TIMEOUT 0x020000
292 #define LDLM_FL_BLOCK_NOWAIT 0x040000
293 #define LDLM_FL_TEST_LOCK 0x080000
294 #define LDLM_FL_LVB_READY 0x100000
295 #define LDLM_FL_KMS_IGNORE 0x200000
296 #define LDLM_FL_NO_LRU 0x400000
297 #define LDLM_FL_CANCEL_ON_BLOCK 0x800000
298 #define LDLM_FL_CP_REQD 0x1000000
299 #define LDLM_FL_CLEANED 0x2000000
300 #define LDLM_FL_ATOMIC_CB 0x4000000
301 #define LDLM_FL_BL_AST 0x10000000
302 #define LDLM_FL_BL_DONE 0x20000000
303 #define LDLM_FL_DENY_ON_CONTENTION 0x40000000
304 #define LDLM_AST_DISCARD_DATA 0x80000000
307 #define LDLM_ENQUEUE (101)
308 #define LDLM_CONVERT (102)
309 #define LDLM_CANCEL (103)
310 #define LDLM_BL_CALLBACK (104)
311 #define LDLM_CP_CALLBACK (105)
312 #define LDLM_GL_CALLBACK (106)
313 #define LCK_MINMODE (0)
320 #define LCK_GROUP (64)
321 #define LDLM_PLAIN (10)
322 #define LDLM_EXTENT (11)
323 #define LDLM_FLOCK (12)
324 #define LDLM_IBITS (13)
325 //#define MGS_CONNECT (250)
326 #define OBD_PING (400)
329 * Opcodes for mountconf (mgs and mgc)
334 MGS_EXCEPTION, /* node died, etc. */
335 MGS_TARGET_REG, /* whenever target starts up */
341 #define MGS_FIRST_OPC MGS_CONNECT
345 LLOG_ORIGIN_HANDLE_CREATE = 501,
346 LLOG_ORIGIN_HANDLE_NEXT_BLOCK = 502,
347 LLOG_ORIGIN_HANDLE_READ_HEADER = 503,
348 LLOG_ORIGIN_HANDLE_WRITE_REC = 504,
349 LLOG_ORIGIN_HANDLE_CLOSE = 505,
350 LLOG_ORIGIN_CONNECT = 506,
351 LLOG_CATINFO = 507, /* for lfs catinfo */
352 LLOG_ORIGIN_HANDLE_PREV_BLOCK = 508,
353 LLOG_ORIGIN_HANDLE_DESTROY = 509, /* for destroy llog object*/
357 #define LLOG_FIRST_OPC LLOG_ORIGIN_HANDLE_CREATE
358 /*flag for the LLOG*/
359 #define LLOG_OP_MAGIC 0x10600000
360 #define LLOG_OP_MASK 0xfff00000
363 LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000,
364 OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00,
365 OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000,
366 MDS_UNLINK_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_UNLINK,
367 MDS_SETATTR_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_SETATTR,
368 OBD_CFG_REC = LLOG_OP_MAGIC | 0x20000,
369 PTL_CFG_REC = LLOG_OP_MAGIC | 0x30000, /* obsolete */
370 LLOG_GEN_REC = LLOG_OP_MAGIC | 0x40000,
371 LLOG_JOIN_REC = LLOG_OP_MAGIC | 0x50000, /* obsolete */
372 LLOG_HDR_MAGIC = LLOG_OP_MAGIC | 0x45539,
373 LLOG_LOGID_MAGIC = LLOG_OP_MAGIC | 0x4553b,
377 /*defined in lustre/include/lustre/lustre_idl.h*/
378 #define LLOG_F_ZAP_WHEN_EMPTY 0x1
379 #define LLOG_F_IS_CAT 0x2
380 #define LLOG_F_IS_PLAIN 0x4
382 #define PTL_RPC_MSG_REQUEST 4711
383 #define PTL_RPC_MSG_ERR 4712
384 #define PTL_RPC_MSG_REPLY 4713
387 /* Ett declarations */
388 static gint ett_lustre_llog_log_llh_flags = -1 ;
389 static gint ett_lustre = -1;
390 static gint ett_lustre_lustre_handle_cookie = -1;
391 static gint ett_lustre_lustre_msg_v1 = -1;
392 static gint ett_lustre_lustre_handle_v1 = -1;
393 static gint ett_lustre_lustre_msg_v2 = -1;
394 static gint ett_lustre_ptlrpc_body = -1;
395 static gint ett_lustre_lustre_handle_v2 = -1;
396 static gint ett_lustre_obd_connect_data = -1;
397 static gint ett_lustre_lov_mds_md_v1 = -1;
398 static gint ett_lustre_lov_ost_data_v1 = -1;
399 static gint ett_lustre_obd_statfs = -1;
400 static gint ett_lustre_obd_ioobj = -1;
401 static gint ett_lustre_niobuf_remote = -1;
402 static gint ett_lustre_ost_lvb = -1;
403 static gint ett_lustre_ll_fid = -1;
404 static gint ett_lustre_mdt_body = -1;
405 static gint ett_lustre_mdt_rec_setattr = -1;
406 static gint ett_lustre_mdt_rec_create = -1;
407 static gint ett_lustre_mdt_rec_link = -1;
408 static gint ett_lustre_mdt_rec_unlink = -1;
409 static gint ett_lustre_mdt_rec_rename = -1;
410 static gint ett_lustre_mdt_rec_setxattr = -1;
411 static gint ett_lustre_obd_quotactl = -1;
412 static gint ett_lustre_obd_dqinfo = -1;
413 static gint ett_lustre_obd_dqblk = -1;
414 static gint ett_lustre_quota_adjust_qunit = -1;
415 static gint ett_lustre_lov_desc = -1;
416 static gint ett_lustre_obd_uuid = -1;
417 static gint ett_lustre_ldlm_res_id = -1;
418 static gint ett_lustre_ldlm_extent = -1;
419 static gint ett_lustre_ldlm_inodebits = -1;
420 static gint ett_lustre_ldlm_flock = -1;
421 static gint ett_lustre_ldlm_intent_opc = -1;
422 static gint ett_lustre_ldlm_resource_desc = -1;
423 static gint ett_lustre_ldlm_lock_desc = -1;
424 static gint ett_lustre_ldlm_request = -1;
425 static gint ett_lustre_lustre_handle = -1;
426 static gint ett_lustre_ldlm_reply = -1;
427 static gint ett_lustre_mgs_send_param = -1;
428 static gint ett_lustre_mgs_target_info = -1;
429 static gint ett_lustre_mgs_config_body = -1;
430 static gint ett_lustre_mgs_config_res = -1;
431 static gint ett_lustre_cfg_marker = -1;
432 static gint ett_lustre_llog_catid = -1;
433 static gint ett_lustre_llog_rec_hdr = -1;
434 static gint ett_lustre_llog_logid_rec = -1;
435 static gint ett_lustre_llog_logid = -1;
436 static gint ett_lustre_llog_rec_tail = -1;
437 static gint ett_lustre_lov_mds_md = -1;
438 static gint ett_lustre_llog_unlink_rec = -1;
439 static gint ett_lustre_llog_setattr_rec = -1;
440 static gint ett_lustre_llog_size_change_rec = -1;
441 static gint ett_lustre_llog_gen_rec = -1;
442 static gint ett_lustre_llog_log_hdr = -1;
443 static gint ett_lustre_llog_cookie = -1;
444 static gint ett_lustre_llogd_body = -1;
445 static gint ett_lustre_llogd_conn_body = -1;
446 static gint ett_lustre_llog_gen = -1;
447 static gint ett_lustre_obdo = -1;
448 static gint ett_lustre_ost_body = -1;
449 static gint ett_lustre_qunit_data = -1;
450 static gint ett_lustre_qunit_data_old2 = -1;
451 static gint ett_lustre_qunit_data_old = -1;
452 static gint ett_lustre_ldlm_lock_flags = -1 ;
453 static gint ett_lustre_seq_range = -1;
454 static gint ett_lustre_fld_range = -1;
455 static gint ett_lustre_mdt_ioepoch = -1;
456 static gint ett_lustre_capa = -1;
457 static gint ett_lustre_acl = -1;
459 /* -----------------------------------------------*/
460 /* Header field declarations */
461 static int hf_lustre_ptlrpc_body_pb = -1 ;
462 static int hf_lustre_ost_body = -1 ;
463 static int hf_lustre_obd_statfs = -1 ;
464 static int hf_lustre_obd_quotactl = -1 ;
465 static int hf_lustre_quota_adjust_qunit = -1 ;
466 static int hf_lustre_extra_padding = -1 ;
467 static int hf_lustre_ldlm_reply = -1 ;
468 static int hf_lustre_ldlm_request = -1 ;
469 static int hf_lustre_obd_uuid = -1 ;
470 static int hf_lustre_obd_connect_data = -1 ;
471 static int hf_lustre_ldlm_intent = -1;
472 static int hf_lustre_obd_ioobj = -1 ;
473 static int hf_lustre_niobuf_remote = -1 ;
474 static int hf_lustre_ost_key = -1 ;
475 static int hf_lustre_nio= -1 ;
476 static int hf_lustre_ost_val= -1;
477 static int hf_lustre_llogd_body = -1;
478 static int hf_lustre_llogd_log_hdr= -1;
479 static int hf_lustre_llog_logid_rec =-1 ;
480 static int hf_lustre_llogd_chunk= -1;
481 static int hf_lustre_llogd_keyword= -1;
482 static int hf_lustre_llogd_client= -1;
483 static int hf_lustre_llogd_name= -1;
485 static int hf_lustre_mds_xattr_name = -1;
486 static int hf_lustre_lov_mds_md_v1= -1;
487 static int hf_lustre_llog_cookie= -1;
488 static int hf_lustre_mds_md_data= -1;
489 static int hf_lustre_mds_reint_opcode= -1;
490 static int hf_lustre_mds_xattr_eadata = -1;
492 static int hf_lustre_reint_name= -1;
493 static int hf_lustre_reint_old_name= -1;
494 static int hf_lustre_reint_new_name= -1;
496 static int hf_lustre_mgs_target_info = -1 ;
497 static int hf_lustre_mgs_send_param = -1;
499 static int hf_lustre_mgs_config_body = -1;
500 static int hf_lustre_mgs_config_body_name = -1;
501 static int hf_lustre_mgs_config_body_offset = -1;
502 static int hf_lustre_mgs_config_body_type = -1;
503 static int hf_lustre_mgs_config_body_reserved = -1;
504 static int hf_lustre_mgs_config_body_bits = -1;
505 static int hf_lustre_mgs_config_body_units = -1;
507 static int hf_lustre_mgs_config_res = -1;
508 static int hf_lustre_mgs_config_res_offset = -1;
509 static int hf_lustre_mgs_config_res_size = -1;
511 static int hf_lustre_ost_lvb = -1 ;
513 static int hf_lustre_ldlm_fl_lock_changed = -1;
514 static int hf_lustre_ldlm_fl_block_granted = -1;
515 static int hf_lustre_ldlm_fl_block_conv = -1;
516 static int hf_lustre_ldlm_fl_block_wait = -1;
517 static int hf_lustre_ldlm_fl_cbpending = -1;
518 static int hf_lustre_ldlm_fl_ast_sent = -1;
519 static int hf_lustre_ldlm_fl_wait_noreproc = -1;
520 static int hf_lustre_ldlm_fl_cancel = -1;
521 static int hf_lustre_ldlm_fl_replay = -1;
522 static int hf_lustre_ldlm_fl_intent_only = -1;
523 static int hf_lustre_ldlm_fl_local_only = -1;
524 static int hf_lustre_ldlm_fl_failed = -1;
525 static int hf_lustre_ldlm_fl_has_intent = -1;
526 static int hf_lustre_ldlm_fl_canceling = -1;
527 static int hf_lustre_ldlm_fl_local = -1;
528 static int hf_lustre_ldlm_fl_warn = -1;
529 static int hf_lustre_ldlm_fl_discard_data = -1;
530 static int hf_lustre_ldlm_fl_no_timeout = -1;
531 static int hf_lustre_ldlm_fl_block_nowait = -1;
532 static int hf_lustre_ldlm_fl_test_lock = -1;
533 static int hf_lustre_ldlm_fl_lvb_ready = -1;
534 static int hf_lustre_ldlm_fl_kms_ignore = -1;
535 static int hf_lustre_ldlm_fl_no_lru = -1;
536 static int hf_lustre_ldlm_fl_cancel_on_block = -1;
537 static int hf_lustre_ldlm_fl_cp_reqd = -1;
538 static int hf_lustre_ldlm_fl_cleaned = -1;
539 static int hf_lustre_ldlm_fl_atomic_cb = -1;
540 static int hf_lustre_ldlm_fl_bl_ast = -1;
541 static int hf_lustre_ldlm_fl_bl_done = -1;
542 static int hf_lustre_ldlm_fl_deny_on_contention = -1;
543 static int hf_lustre_ldlm_ast_discard_data = -1;
545 static int hf_lustre_mdt_body = -1 ;
546 static int hf_lustre_mdt_body_fid1 = -1;
547 static int hf_lustre_mdt_body_fid2 = -1;
548 static int hf_lustre_mdt_body_handle = -1;
549 static int hf_lustre_mdt_body_valid = -1;
550 static int hf_lustre_mdt_body_size = -1;
551 static int hf_lustre_mdt_body_mtime = -1;
552 static int hf_lustre_mdt_body_atime = -1;
553 static int hf_lustre_mdt_body_ctime = -1;
554 static int hf_lustre_mdt_body_blocks = -1;
555 static int hf_lustre_mdt_body_ioepoch = -1;
556 static int hf_lustre_mdt_body_ino = -1;
557 static int hf_lustre_mdt_body_fsuid = -1;
558 static int hf_lustre_mdt_body_fsgid = -1;
559 static int hf_lustre_mdt_body_capability = -1;
560 static int hf_lustre_mdt_body_mode = -1;
561 static int hf_lustre_mdt_body_uid = -1;
562 static int hf_lustre_mdt_body_gid = -1;
563 static int hf_lustre_mdt_body_flags = -1;
564 static int hf_lustre_mdt_body_rdev = -1;
565 static int hf_lustre_mdt_body_nlink = -1;
566 static int hf_lustre_mdt_body_generation = -1;
567 static int hf_lustre_mdt_body_suppgid = -1;
568 static int hf_lustre_mdt_body_eadatasize = -1;
569 static int hf_lustre_mdt_body_aclsize = -1;
570 static int hf_lustre_mdt_body_max_mdsize = -1;
571 static int hf_lustre_mdt_body_max_cookiesize = -1;
572 static int hf_lustre_mdt_body_uid_h = -1;
573 static int hf_lustre_mdt_body_gid_h = -1;
574 static int hf_lustre_mdt_body_padding_5 = -1;
575 static int hf_lustre_mdt_body_padding_6 = -1;
576 static int hf_lustre_mdt_body_padding_7 = -1;
577 static int hf_lustre_mdt_body_padding_8 = -1;
578 static int hf_lustre_mdt_body_padding_9 = -1;
579 static int hf_lustre_mdt_body_padding_10 = -1;
581 static int hf_lustre_mdt_rec_setattr = -1 ;
582 static int hf_lustre_mdt_rec_setattr_sa_opcode = -1;
583 static int hf_lustre_mdt_rec_setattr_sa_cap = -1;
584 static int hf_lustre_mdt_rec_setattr_sa_fsuid = -1;
585 static int hf_lustre_mdt_rec_setattr_sa_fsuid_h = -1;
586 static int hf_lustre_mdt_rec_setattr_sa_fsgid = -1;
587 static int hf_lustre_mdt_rec_setattr_sa_fsgid_h = -1;
588 static int hf_lustre_mdt_rec_setattr_sa_suppgid = -1;
589 static int hf_lustre_mdt_rec_setattr_sa_suppgid_h = -1;
590 static int hf_lustre_mdt_rec_setattr_sa_padding_1 = -1;
591 static int hf_lustre_mdt_rec_setattr_sa_padding_1_h = -1;
592 static int hf_lustre_mdt_rec_setattr_sa_fid = -1;
593 static int hf_lustre_mdt_rec_setattr_sa_valid = -1;
594 static int hf_lustre_mdt_rec_setattr_sa_uid = -1;
595 static int hf_lustre_mdt_rec_setattr_sa_gid = -1;
596 static int hf_lustre_mdt_rec_setattr_sa_size = -1;
597 static int hf_lustre_mdt_rec_setattr_sa_blocks = -1;
598 static int hf_lustre_mdt_rec_setattr_sa_mtime = -1;
599 static int hf_lustre_mdt_rec_setattr_sa_atime = -1;
600 static int hf_lustre_mdt_rec_setattr_sa_ctime = -1;
601 static int hf_lustre_mdt_rec_setattr_sa_attr_flags = -1;
602 static int hf_lustre_mdt_rec_setattr_sa_mode = -1;
603 static int hf_lustre_mdt_rec_setattr_sa_padding_2 = -1;
604 static int hf_lustre_mdt_rec_setattr_sa_padding_3 = -1;
605 static int hf_lustre_mdt_rec_setattr_sa_padding_4 = -1;
606 static int hf_lustre_mdt_rec_setattr_sa_padding_5 = -1;
608 static int hf_lustre_mdt_rec_create = -1 ;
609 static int hf_lustre_mdt_rec_create_cr_opcode = -1;
610 static int hf_lustre_mdt_rec_create_cr_cap = -1;
611 static int hf_lustre_mdt_rec_create_cr_fsuid = -1;
612 static int hf_lustre_mdt_rec_create_cr_fsuid_h = -1;
613 static int hf_lustre_mdt_rec_create_cr_fsgid = -1;
614 static int hf_lustre_mdt_rec_create_cr_fsgid_h = -1;
615 static int hf_lustre_mdt_rec_create_cr_suppgid1 = -1;
616 static int hf_lustre_mdt_rec_create_cr_suppgid1_h = -1;
617 static int hf_lustre_mdt_rec_create_cr_suppgid2 = -1;
618 static int hf_lustre_mdt_rec_create_cr_suppgid2_h = -1;
619 static int hf_lustre_mdt_rec_create_cr_fid1 = -1;
620 static int hf_lustre_mdt_rec_create_cr_fid2 = -1;
621 static int hf_lustre_mdt_rec_create_cr_old_handle = -1;
622 static int hf_lustre_mdt_rec_create_cr_time = -1;
623 static int hf_lustre_mdt_rec_create_cr_rdev = -1;
624 static int hf_lustre_mdt_rec_create_cr_ioepoch = -1;
625 static int hf_lustre_mdt_rec_create_cr_padding_1 = -1;
626 static int hf_lustre_mdt_rec_create_cr_mode = -1;
627 static int hf_lustre_mdt_rec_create_cr_bias = -1;
628 static int hf_lustre_mdt_rec_create_cr_flags_l = -1;
629 static int hf_lustre_mdt_rec_create_cr_flags_h = -1;
630 static int hf_lustre_mdt_rec_create_cr_umask = -1;
631 static int hf_lustre_mdt_rec_create_cr_padding_4 = -1;
633 static int hf_lustre_mdt_rec_link = -1 ;
634 static int hf_lustre_mdt_rec_link_lk_opcode = -1;
635 static int hf_lustre_mdt_rec_link_lk_cap = -1;
636 static int hf_lustre_mdt_rec_link_lk_fsuid = -1;
637 static int hf_lustre_mdt_rec_link_lk_fsuid_h = -1;
638 static int hf_lustre_mdt_rec_link_lk_fsgid = -1;
639 static int hf_lustre_mdt_rec_link_lk_fsgid_h = -1;
640 static int hf_lustre_mdt_rec_link_lk_suppgid1 = -1;
641 static int hf_lustre_mdt_rec_link_lk_suppgid1_h = -1;
642 static int hf_lustre_mdt_rec_link_lk_suppgid2 = -1;
643 static int hf_lustre_mdt_rec_link_lk_suppgid2_h = -1;
644 static int hf_lustre_mdt_rec_link_lk_fid1 = -1;
645 static int hf_lustre_mdt_rec_link_lk_fid2 = -1;
646 static int hf_lustre_mdt_rec_link_lk_time = -1;
647 static int hf_lustre_mdt_rec_link_lk_padding_1 = -1;
648 static int hf_lustre_mdt_rec_link_lk_padding_2 = -1;
649 static int hf_lustre_mdt_rec_link_lk_padding_3 = -1;
650 static int hf_lustre_mdt_rec_link_lk_padding_4 = -1;
651 static int hf_lustre_mdt_rec_link_lk_bias = -1;
652 static int hf_lustre_mdt_rec_link_lk_padding_5 = -1;
653 static int hf_lustre_mdt_rec_link_lk_padding_6 = -1;
654 static int hf_lustre_mdt_rec_link_lk_padding_7 = -1;
655 static int hf_lustre_mdt_rec_link_lk_padding_8 = -1;
656 static int hf_lustre_mdt_rec_link_lk_padding_9 = -1;
658 static int hf_lustre_mdt_rec_unlink = -1 ;
659 static int hf_lustre_mdt_rec_unlink_ul_opcode = -1;
660 static int hf_lustre_mdt_rec_unlink_ul_cap = -1;
661 static int hf_lustre_mdt_rec_unlink_ul_fsuid = -1;
662 static int hf_lustre_mdt_rec_unlink_ul_fsuid_h = -1;
663 static int hf_lustre_mdt_rec_unlink_ul_fsgid = -1;
664 static int hf_lustre_mdt_rec_unlink_ul_fsgid_h = -1;
665 static int hf_lustre_mdt_rec_unlink_ul_suppgid1 = -1;
666 static int hf_lustre_mdt_rec_unlink_ul_suppgid1_h = -1;
667 static int hf_lustre_mdt_rec_unlink_ul_suppgid2 = -1;
668 static int hf_lustre_mdt_rec_unlink_ul_suppgid2_h = -1;
669 static int hf_lustre_mdt_rec_unlink_ul_fid1 = -1;
670 static int hf_lustre_mdt_rec_unlink_ul_fid2 = -1;
671 static int hf_lustre_mdt_rec_unlink_ul_time = -1;
672 static int hf_lustre_mdt_rec_unlink_ul_padding_2 = -1;
673 static int hf_lustre_mdt_rec_unlink_ul_padding_3 = -1;
674 static int hf_lustre_mdt_rec_unlink_ul_padding_4 = -1;
675 static int hf_lustre_mdt_rec_unlink_ul_padding_5 = -1;
676 static int hf_lustre_mdt_rec_unlink_ul_bias = -1;
677 static int hf_lustre_mdt_rec_unlink_ul_mode = -1;
678 static int hf_lustre_mdt_rec_unlink_ul_padding_6 = -1;
679 static int hf_lustre_mdt_rec_unlink_ul_padding_7 = -1;
680 static int hf_lustre_mdt_rec_unlink_ul_padding_8 = -1;
681 static int hf_lustre_mdt_rec_unlink_ul_padding_9 = -1;
683 static int hf_lustre_mdt_rec_rename = -1 ;
684 static int hf_lustre_mdt_rec_rename_rn_opcode = -1;
685 static int hf_lustre_mdt_rec_rename_rn_cap = -1;
686 static int hf_lustre_mdt_rec_rename_rn_fsuid = -1;
687 static int hf_lustre_mdt_rec_rename_rn_fsuid_h = -1;
688 static int hf_lustre_mdt_rec_rename_rn_fsgid = -1;
689 static int hf_lustre_mdt_rec_rename_rn_fsgid_h = -1;
690 static int hf_lustre_mdt_rec_rename_rn_suppgid1 = -1;
691 static int hf_lustre_mdt_rec_rename_rn_suppgid1_h = -1;
692 static int hf_lustre_mdt_rec_rename_rn_suppgid2 = -1;
693 static int hf_lustre_mdt_rec_rename_rn_suppgid2_h = -1;
694 static int hf_lustre_mdt_rec_rename_rn_fid1 = -1;
695 static int hf_lustre_mdt_rec_rename_rn_fid2 = -1;
696 static int hf_lustre_mdt_rec_rename_rn_time = -1;
697 static int hf_lustre_mdt_rec_rename_rn_padding_1 = -1;
698 static int hf_lustre_mdt_rec_rename_rn_padding_2 = -1;
699 static int hf_lustre_mdt_rec_rename_rn_padding_3 = -1;
700 static int hf_lustre_mdt_rec_rename_rn_padding_4 = -1;
701 static int hf_lustre_mdt_rec_rename_rn_bias = -1;
702 static int hf_lustre_mdt_rec_rename_rn_mode = -1;
703 static int hf_lustre_mdt_rec_rename_rn_padding_5 = -1;
704 static int hf_lustre_mdt_rec_rename_rn_padding_6 = -1;
705 static int hf_lustre_mdt_rec_rename_rn_padding_7 = -1;
706 static int hf_lustre_mdt_rec_rename_rn_padding_8 = -1;
708 static int hf_lustre_mdt_rec_setxattr = -1 ;
709 static int hf_lustre_mdt_rec_setxattr_sx_opcode = -1;
710 static int hf_lustre_mdt_rec_setxattr_sx_cap = -1;
711 static int hf_lustre_mdt_rec_setxattr_sx_fsuid = -1;
712 static int hf_lustre_mdt_rec_setxattr_sx_fsuid_h = -1;
713 static int hf_lustre_mdt_rec_setxattr_sx_fsgid = -1;
714 static int hf_lustre_mdt_rec_setxattr_sx_fsgid_h = -1;
715 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1 = -1;
716 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1_h = -1;
717 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2 = -1;
718 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2_h = -1;
719 static int hf_lustre_mdt_rec_setxattr_sx_fid = -1;
720 static int hf_lustre_mdt_rec_setxattr_sx_padding_1 = -1;
721 static int hf_lustre_mdt_rec_setxattr_sx_padding_2 = -1;
722 static int hf_lustre_mdt_rec_setxattr_sx_padding_3 = -1;
723 static int hf_lustre_mdt_rec_setxattr_sx_valid = -1;
724 static int hf_lustre_mdt_rec_setxattr_sx_time = -1;
725 static int hf_lustre_mdt_rec_setxattr_sx_padding_5 = -1;
726 static int hf_lustre_mdt_rec_setxattr_sx_padding_6 = -1;
727 static int hf_lustre_mdt_rec_setxattr_sx_padding_7 = -1;
728 static int hf_lustre_mdt_rec_setxattr_sx_size = -1;
729 static int hf_lustre_mdt_rec_setxattr_sx_flags = -1;
730 static int hf_lustre_mdt_rec_setxattr_sx_padding_8 = -1;
731 static int hf_lustre_mdt_rec_setxattr_sx_padding_9 = -1;
732 static int hf_lustre_mdt_rec_setxattr_sx_padding_10 = -1;
733 static int hf_lustre_mdt_rec_setxattr_sx_padding_11 = -1;
735 static int hf_lustre_seq_opc = -1;
736 static int hf_lustre_seq_range = -1;
737 static int hf_lustre_seq_range_start = -1;
738 static int hf_lustre_seq_range_end = -1;
739 static int hf_lustre_seq_range_index = -1;
740 static int hf_lustre_seq_range_flags = -1;
742 static int hf_lustre_fld_opc = -1;
743 static int hf_lustre_fld_range = -1;
744 static int hf_lustre_fld_range_start = -1;
745 static int hf_lustre_fld_range_end = -1;
746 static int hf_lustre_fld_range_index = -1;
747 static int hf_lustre_fld_range_flags = -1;
749 static int hf_lustre_mdt_ioepoch = -1;
750 static int hf_lustre_mdt_ioepoch_handle = -1;
751 static int hf_lustre_mdt_ioepoch_ioepoch = -1;
752 static int hf_lustre_mdt_ioepoch_flags = -1;
753 static int hf_lustre_mdt_ioepoch_padding = -1;
755 static int hf_lustre_capa = -1;
756 static int hf_lustre_capa_fid = -1;
757 static int hf_lustre_capa_opc = -1;
758 static int hf_lustre_capa_uid = -1;
759 static int hf_lustre_capa_gid = -1;
760 static int hf_lustre_capa_flags = -1;
761 static int hf_lustre_capa_keyid = -1;
762 static int hf_lustre_capa_timeout = -1;
763 static int hf_lustre_capa_expiry = -1;
764 static int hf_lustre_capa_hmac = -1;
766 static int hf_lustre_acl = -1;
768 static int hf_lustre_lustre_handle_cookie = -1;
769 static int hf_lustre_ptlrpc_body_pb_last_committed = -1;
770 static int hf_lustre_ptlrpc_body_pb_version = -1;
771 static int hf_lustre_lustre_msg_v1_lm_bufcount = -1;
772 static int hf_lustre_obd_ioobj_ioo_id = -1;
773 static int hf_lustre_ptlrpc_body_pb_slv = -1;
774 static int hf_lustre_ptlrpc_body_pb_pre_version = -1;
775 static int hf_lustre_ptlrpc_body_pb_padding = -1;
776 static int hf_lustre_ptlrpc_body_pb_jobid = -1;
777 static int hf_lustre_lustre_msg_v1_lm_handle = -1;
778 static int hf_lustre_ost_lvb_lvb_atime = -1;
779 static int hf_lustre_ptlrpc_body_pb_timeout = -1;
780 static int hf_lustre_obd_statfs_os_bavail = -1;
781 static int hf_lustre_obd_statfs_os_bsize = -1;
782 static int hf_lustre_lustre_msg_v2_lm_repsize = -1;
783 static int hf_lustre_lov_mds_md_v1_lmm_stripe_size = -1;
784 static int hf_lustre_lustre_msg_v1_lm_last_xid = -1;
785 static int hf_lustre_ll_fid_f_type = -1;
786 static int hf_lustre_lustre_msg_v2_lm_cksum = -1;
787 static int hf_lustre_lustre_msg_v2_lm_buflens = -1;
788 static int hf_lustre_lustre_msg_v1_lm_status = -1;
789 static int hf_lustre_lustre_msg_v1_lm_type = -1;
790 static int hf_lustre_niobuf_remote_len = -1;
791 static int hf_lustre_lov_mds_md_v1_lmm_magic = -1;
792 static int hf_lustre_ptlrpc_body_pb_op_flags = -1;
793 static int hf_lustre_ost_lvb_lvb_ctime = -1;
794 static int hf_lustre_ptlrpc_body_pb_type = -1;
795 static int hf_lustre_obd_connect_data_ocd_nllg = -1;
796 static int hf_lustre_obd_connect_data_ocd_nllu = -1;
797 static int hf_lustre_ll_fid_generation = -1;
798 static int hf_lustre_ost_lvb_lvb_mtime = -1;
799 static int hf_lustre_obd_connect_data_ocd_ibits_known = -1;
800 static int hf_lustre_lustre_msg_v2_lm_padding_3 = -1;
801 static int hf_lustre_ptlrpc_body_pb_flags = -1;
802 static int hf_lustre_obd_statfs_os_spare4 = -1;
803 static int hf_lustre_obd_connect_data_ocd_group = -1;
804 static int hf_lustre_lov_ost_data_v1_l_object_seq = -1;
805 static int hf_lustre_lov_mds_md_v1_lmm_object_seq = -1;
806 static int hf_lustre_obd_connect_data_ocd_brw_size = -1;
807 static int hf_lustre_ptlrpc_body_pb_limit = -1;
808 static int hf_lustre_obd_statfs_os_maxbytes = -1;
809 static int hf_lustre_obd_statfs_os_spare5 = -1;
810 static int hf_lustre_lustre_msg_v2_lm_flags = -1;
811 static int hf_lustre_obd_statfs_os_ffree = -1;
812 static int hf_lustre_obd_statfs_os_files = -1;
813 static int hf_lustre_lov_mds_md_v1_lmm_stripe_count = -1;
814 static int hf_lustre_lustre_msg_v1_lm_flags = -1;
815 static int hf_lustre_lustre_msg_v1_lm_last_committed = -1;
816 static int hf_lustre_obd_statfs_os_spare9 = -1;
817 static int hf_lustre_obd_connect_data_ocd_index = -1;
818 static int hf_lustre_opnum = -1;
819 static int hf_lustre_lustre_msg_v1_lm_buflens = -1;
820 static int hf_lustre_obd_statfs_os_spare1 = -1;
821 static int hf_lustre_obd_statfs_os_spare8 = -1;
822 static int hf_lustre_lustre_msg_v1_lm_conn_cnt = -1;
823 static int hf_lustre_ptlrpc_body_pb_transno = -1;
824 static int hf_lustre_ptlrpc_body_pb_service_time = -1;
825 static int hf_lustre_ptlrpc_body_pb_conn_cnt = -1;
826 static int hf_lustre_ptlrpc_body_pb_opc = -1;
827 static int hf_lustre_obd_connect_data_ocd_connect_flags = -1;
828 static int hf_lustre_lov_ost_data_v1_l_object_id = -1;
829 static int hf_lustre_lov_ost_data_v1_l_ost_gen = -1;
830 static int hf_lustre_obd_statfs_os_bfree = -1;
831 static int hf_lustre_obd_connect_data_ocd_version = -1;
832 static int hf_lustre_lov_mds_md_v1_lmm_objects = -1;
833 static int hf_lustre_obd_statfs_os_namelen = -1;
834 static int hf_lustre_obd_statfs_os_blocks = -1;
835 static int hf_lustre_lustre_msg_v2_lm_secflvr = -1;
836 static int hf_lustre_lustre_msg_v1_lm_transno = -1;
837 static int hf_lustre_lov_mds_md_v1_lmm_pattern = -1;
838 static int hf_lustre_lustre_msg_v1_lm_opc = -1;
839 static int hf_lustre_obd_connect_data_ocd_grant = -1;
840 static int hf_lustre_obd_ioobj_ioo_bufcnt = -1;
841 static int hf_lustre_lustre_msg_v1_lm_version = -1;
842 static int hf_lustre_obd_statfs_os_spare7 = -1;
843 static int hf_lustre_obd_statfs_os_fsid = -1;
844 static int hf_lustre_obd_connect_data_ocd_cksum_types = -1;
845 static int hf_lustre_ost_lvb_lvb_size = -1;
846 static int hf_lustre_obd_statfs_os_type = -1;
847 static int hf_lustre_obd_statfs_os_spare6 = -1;
848 static int hf_lustre_obd_statfs_os_state = -1;
849 static int hf_lustre_obd_statfs_os_spare3 = -1;
850 static int hf_lustre_lustre_msg_v2_lm_magic = -1;
851 static int hf_lustre_lov_mds_md_v1_lmm_object_id = -1;
852 static int hf_lustre_ptlrpc_body_pb_last_seen = -1;
853 static int hf_lustre_obd_ioobj_ioo_max_brw = -1;
854 static int hf_lustre_ptlrpc_body_pb_last_xid = -1;
855 static int hf_lustre_ptlrpc_body_pb_status = -1;
856 static int hf_lustre_niobuf_remote_flags = -1;
857 static int hf_lustre_ll_fid_id = -1;
858 static int hf_lustre_ost_lvb_lvb_blocks = -1;
859 static int hf_lustre_lustre_msg_v2_lm_padding_2 = -1;
860 static int hf_lustre_obd_connect_data_padding1 = -1;
861 static int hf_lustre_lov_ost_data_v1_l_ost_idx = -1;
862 static int hf_lustre_obd_connect_data_padding2 = -1;
863 static int hf_lustre_obd_ioobj_ioo_seq = -1;
864 static int hf_lustre_niobuf_remote_offset=-1;
865 static int hf_lustre_obd_statfs_os_spare2 = -1;
866 static int hf_lustre_lustre_msg_v2_lm_bufcount = -1;
867 static int hf_lustre_ptlrpc_body_pb_handle = -1;
868 static int hf_lustre_obd_connect_data_ocd_transno = -1;
869 static int hf_lustre_lustre_msg_v1_lm_magic = -1;
870 static int hf_lustre_llog_unlink_rec_lur_tail = -1;
871 static int hf_lustre_llog_size_change_rec_lsc_io_epoch = -1;
872 static int hf_lustre_mgs_target_info_mti_flags = -1;
873 static int hf_lustre_ldlm_reply_lock_policy_res1 = -1;
874 static int hf_lustre_llogd_body_lgd_len = -1;
875 static int hf_lustre_qunit_data_old_qd_id = -1;
876 static int hf_lustre_llog_logid_rec_padding1 = -1;
877 static int hf_lustre_quota_adjust_qunit_padding1 = -1;
878 static int hf_lustre_llog_size_change_rec_lsc_fid = -1;
879 static int hf_lustre_llog_rec_hdr_padding = -1;
880 static int hf_lustre_obdo_o_nlink = -1;
881 static int hf_lustre_ldlm_extent_gid = -1;
882 static int hf_lustre_obdo_o_uid = -1;
883 static int hf_lustre_obdo_o_valid = -1;
884 static int hf_lustre_ldlm_reply_lock_flags = -1;
885 static int hf_lustre_obdo_o_misc = -1;
887 static int hf_lustre_ldlm_request_lock_handle = -1;
888 static int hf_lustre_llog_logid_lgl_oid = -1;
889 static int hf_lustre_ldlm_inodebits_bits = -1;
890 static int hf_lustre_llog_log_hdr_llh_count = -1;
891 static int hf_lustre_llog_gen_rec_lgr_tail = -1;
892 static int hf_lustre_llog_catid_lci_padding3 = -1;
893 static int hf_lustre_qunit_data_qd_qunit = -1;
894 static int hf_lustre_llog_setattr_rec_padding = -1;
895 static int hf_lustre_llog_cookie_lgc_lgl = -1;
896 static int hf_lustre_obd_quotactl_qc_dqinfo = -1;
897 static int hf_lustre_llog_log_hdr_llh_bitmap = -1;
898 static int hf_lustre_obd_quotactl_qc_stat = -1;
899 static int hf_lustre_qunit_data_old2_qd_id = -1;
900 static int hf_lustre_llog_logid_rec_padding2 = -1;
901 static int hf_lustre_llog_logid_rec_padding5 = -1;
902 static int hf_lustre_ldlm_intent_opc = -1;
903 static int hf_lustre_llog_rec_hdr_lrh_type = -1;
904 static int hf_lustre_llog_rec_hdr_lrh_len = -1;
905 static int hf_lustre_llog_setattr_rec_lsr_uid = -1;
906 static int hf_lustre_lov_desc_ld_padding_1 = -1;
907 static int hf_lustre_obdo_o_padding_4 = -1;
908 static int hf_lustre_mgs_target_info_padding = -1;
909 static int hf_lustre_obd_quotactl_qc_dqblk = -1;
910 static int hf_lustre_llogd_conn_body_lgdc_gen = -1;
911 static int hf_lustre_llog_log_hdr_llh_tail = -1;
912 static int hf_lustre_obdo_o_size = -1;
913 static int hf_lustre_ldlm_extent_start = -1;
914 static int hf_lustre_llog_size_change_rec_lsc_hdr = -1;
915 static int hf_lustre_llog_logid_lgl_oseq = -1;
916 static int hf_lustre_llog_cookie_lgc_padding = -1;
917 static int hf_lustre_qunit_data_old_qd_type = -1;
918 static int hf_lustre_ldlm_flock_blocking_export = -1;
919 static int hf_lustre_lov_desc_ld_pattern = -1;
920 static int hf_lustre_qunit_data_qd_id = -1;
921 static int hf_lustre_mgs_target_info_mti_fsname = -1;
922 static int hf_lustre_ldlm_request_lock_flags = -1;
923 static int hf_lustre_obdo_o_mode = -1;
924 static int hf_lustre_mgs_target_info_mti_svname = -1;
925 static int hf_lustre_llogd_body_lgd_logid = -1;
926 static int hf_lustre_llog_log_hdr_llh_size = -1;
927 static int hf_lustre_obdo_o_handle = -1;
928 static int hf_lustre_obdo_o_atime = -1;
929 static int hf_lustre_quota_adjust_qunit_qaq_id = -1;
930 static int hf_lustre_ldlm_lock_desc_l_policy_data = -1;
931 static int hf_lustre_obd_quotactl_qc_cmd = -1;
932 static int hf_lustre_qunit_data_padding = -1;
933 static int hf_lustre_quota_adjust_qunit_qaq_flags = -1;
934 static int hf_lustre_ldlm_lock_desc_l_granted_mode = -1;
935 static int hf_lustre_obdo_o_seq = -1;
936 static int hf_lustre_obdo_o_gid = -1;
937 static int hf_lustre_llog_catid_lci_logid = -1;
938 static int hf_lustre_llog_rec_tail_lrt_index = -1;
939 static int hf_lustre_lov_desc_ld_default_stripe_count = -1;
940 static int hf_lustre_ldlm_resource_desc_lr_padding = -1;
941 static int hf_lustre_cfg_marker_cm_vers = -1;
942 static int hf_lustre_llog_unlink_rec_lur_hdr = -1;
943 static int hf_lustre_llogd_body_lgd_index = -1;
944 static int hf_lustre_cfg_marker_cm_tgtname = -1;
945 static int hf_lustre_llog_setattr_rec_lsr_ogen = -1;
946 static int hf_lustre_llog_logid_rec_lid_hdr = -1;
947 static int hf_lustre_obdo_o_ioepoch = -1;
948 static int hf_lustre_ost_body_oa = -1;
949 static int hf_lustre_llog_logid_rec_padding3 = -1;
950 static int hf_lustre_llog_log_hdr_llh_flags = -1;
951 static int hf_lustre_llog_setattr_rec_lsr_oid = -1;
952 static int hf_lustre_llog_size_change_rec_padding = -1;
953 static int hf_lustre_mgs_target_info_mti_config_ver = -1;
954 static int hf_lustre_cfg_marker_cm_createtime = -1;
955 static int hf_lustre_qunit_data_old_qd_count = -1;
956 static int hf_lustre_llog_catid_lci_padding1 = -1;
957 static int hf_lustre_lov_desc_ld_active_tgt_count = -1;
958 static int hf_lustre_obdo_o_lcookie = -1;
959 static int hf_lustre_llog_gen_rec_lgr_gen = -1;
960 static int hf_lustre_obdo_o_id = -1;
961 static int hf_lustre_mgs_target_info_mti_uuid = -1;
962 static int hf_lustre_llog_rec_hdr_lrh_index = -1;
963 static int hf_lustre_llog_setattr_rec_lsr_hdr = -1;
964 static int hf_lustre_mgs_target_info_mti_stripe_index = -1;
965 static int hf_lustre_llog_gen_conn_cnt = -1;
966 static int hf_lustre_obdo_o_padding_6 = -1;
967 static int hf_lustre_llog_cookie_lgc_index = -1;
968 static int hf_lustre_lov_desc_ld_uuid = -1;
969 static int hf_lustre_ldlm_reply_lock_desc = -1;
970 static int hf_lustre_lov_desc_ld_padding_0 = -1;
971 static int hf_lustre_llog_unlink_rec_lur_ogen = -1;
972 static int hf_lustre_cfg_marker_cm_flags = -1;
973 static int hf_lustre_obdo_o_padding_3 = -1;
974 static int hf_lustre_ldlm_request_lock_desc = -1;
975 static int hf_lustre_obdo_o_flags = -1;
976 static int hf_lustre_mgs_target_info_mti_params = -1;
977 static int hf_lustre_llog_logid_lgl_ogen = -1;
978 static int hf_lustre_cfg_marker_cm_comment = -1;
979 static int hf_lustre_llog_unlink_rec_lur_oid = -1;
980 static int hf_lustre_qunit_data_qd_count = -1;
981 static int hf_lustre_obdo_o_mtime = -1;
982 static int hf_lustre_obdo_o_blksize = -1;
983 static int hf_lustre_ldlm_res_id_name = -1;
984 static int hf_lustre_ldlm_reply_lock_handle = -1;
985 static int hf_lustre_llogd_body_lgd_saved_index = -1;
986 static int hf_lustre_qunit_data_old_qd_isblk = -1;
987 static int hf_lustre_obdo_o_blocks = -1;
988 static int hf_lustre_lov_desc_ld_padding_2 = -1;
989 static int hf_lustre_llog_logid_rec_lid_tail = -1;
990 static int hf_lustre_obdo_o_grant = -1;
991 static int hf_lustre_obdo_o_uid_h = -1;
992 static int hf_lustre_obdo_o_gid_h = -1;
993 static int hf_lustre_quota_adjust_qunit_qaq_iunit_sz = -1;
994 static int hf_lustre_llog_unlink_rec_padding = -1;
995 static int hf_lustre_ldlm_lock_desc_l_req_mode = -1;
996 static int hf_lustre_ldlm_extent_end = -1;
997 static int hf_lustre_llog_gen_rec_lgr_hdr = -1;
998 static int hf_lustre_llogd_body_lgd_llh_flags = -1;
999 static int hf_lustre_llog_log_hdr_llh_cat_idx = -1;
1000 static int hf_lustre_llog_log_hdr_llh_bitmap_offset=-1;
1001 static int hf_lustre_ldlm_reply_lock_padding = -1;
1002 static int hf_lustre_obd_quotactl_qc_id = -1;
1003 static int hf_lustre_llog_logid_rec_padding4 = -1;
1004 static int hf_lustre_llog_setattr_rec_lsr_gid = -1;
1005 static int hf_lustre_obd_quotactl_qc_type = -1;
1006 static int hf_lustre_cfg_marker_padding = -1;
1007 static int hf_lustre_mgs_target_info_mti_nids = -1;
1008 static int hf_lustre_obdo_o_stripe_idx = -1;
1009 static int hf_lustre_llogd_conn_body_lgdc_logid = -1;
1010 static int hf_lustre_ldlm_flock_blocking_pid = -1;
1011 static int hf_lustre_lov_desc_ld_tgt_count = -1;
1012 static int hf_lustre_llogd_body_lgd_cur_offset=-1;
1013 static int hf_lustre_qunit_data_old2_qd_count = -1;
1014 static int hf_lustre_qunit_data_old2_qd_flags = -1;
1015 static int hf_lustre_ldlm_flock_start = -1;
1016 static int hf_lustre_quota_adjust_qunit_qaq_bunit_sz = -1;
1017 static int hf_lustre_ldlm_flock_pid = -1;
1018 static int hf_lustre_lov_desc_ld_default_stripe_size = -1;
1019 static int hf_lustre_llog_log_hdr_llh_tgtuuid = -1;
1020 static int hf_lustre_cfg_marker_cm_step = -1;
1021 static int hf_lustre_mgs_send_param_mgs_param = -1;
1022 static int hf_lustre_lov_desc_ld_default_stripe_offset=-1;
1023 static int hf_lustre_ldlm_resource_desc_lr_name = -1;
1024 static int hf_lustre_llog_rec_tail_lrt_len = -1;
1025 static int hf_lustre_llog_log_hdr_llh_timestamp = -1;
1026 static int hf_lustre_llog_catid_lci_padding2 = -1;
1027 static int hf_lustre_llogd_conn_body_lgdc_ctxt_idx = -1;
1028 static int hf_lustre_cfg_marker_cm_canceltime = -1;
1029 static int hf_lustre_mgs_target_info_mti_lustre_ver = -1;
1030 static int hf_lustre_obdo_o_parent_ver = -1;
1031 static int hf_lustre_qunit_data_qd_flags = -1;
1032 static int hf_lustre_llog_logid_rec_lid_id = -1;
1033 static int hf_lustre_obdo_o_parent_oid = -1;
1034 static int hf_lustre_llog_gen_mnt_cnt = -1;
1035 static int hf_lustre_llog_size_change_rec_lsc_tail = -1;
1036 static int hf_lustre_obdo_o_padding_5 = -1;
1037 static int hf_lustre_ldlm_lock_desc_l_resource = -1;
1038 static int hf_lustre_obdo_o_parent_seq = -1;
1039 static int hf_lustre_ldlm_request_lock_count = -1;
1040 static int hf_lustre_ldlm_flock_end = -1;
1041 static int hf_lustre_mgs_target_info_mti_nid_count = -1;
1042 static int hf_lustre_obdo_o_ctime = -1;
1043 static int hf_lustre_ldlm_reply_lock_policy_res2 = -1;
1044 static int hf_lustre_llogd_body_lgd_ctxt_idx = -1;
1045 static int hf_lustre_lov_desc_ld_qos_maxage = -1;
1046 static int hf_lustre_ldlm_resource_desc_lr_type = -1;
1047 static int hf_lustre_llog_setattr_rec_lsr_tail = -1;
1048 static int hf_lustre_llog_cookie_lgc_subsys = -1;
1049 static int hf_lustre_llog_log_hdr_llh_hdr = -1;
1050 static int hf_lustre_llog_log_hdr_llh_reserved = -1;
1052 /* Header field declarations for field from lustre_user.h*/
1053 static int hf_lustre_obd_dqinfo_dqi_valid = -1;
1054 static int hf_lustre_obd_dqblk_dqb_isoftlimit = -1;
1055 static int hf_lustre_obd_dqblk_dqb_bhardlimit = -1;
1056 static int hf_lustre_obd_dqblk_dqb_curspace = -1;
1057 static int hf_lustre_obd_dqblk_dqb_itime = -1;
1058 static int hf_lustre_obd_dqblk_dqb_valid = -1;
1059 static int hf_lustre_obd_dqinfo_dqi_igrace = -1;
1060 static int hf_lustre_obd_dqinfo_dqi_bgrace = -1;
1061 static int hf_lustre_obd_dqblk_padding = -1;
1062 static int hf_lustre_obd_dqblk_dqb_curinodes = -1;
1063 static int hf_lustre_obd_dqblk_dqb_bsoftlimit = -1;
1064 static int hf_lustre_obd_dqinfo_dqi_flags = -1;
1065 static int hf_lustre_obd_dqblk_dqb_btime = -1;
1066 static int hf_lustre_obd_dqblk_dqb_ihardlimit = -1;
1067 static int hf_lustre_ldlm_intent_opc_open = -1 ;
1068 static int hf_lustre_ldlm_intent_opc_creat = -1;
1069 static int hf_lustre_ldlm_intent_opc_readdir = -1;
1070 static int hf_lustre_ldlm_intent_opc_getattr = -1;
1071 static int hf_lustre_ldlm_intent_opc_lookup = -1;
1072 static int hf_lustre_ldlm_intent_opc_unlink = -1;
1073 static int hf_lustre_ldlm_intent_opc_getxattr = -1;
1074 static int hf_lustre_ldlm_intent_opc_exec = -1;
1075 static int hf_lustre_ldlm_intent_opc_pin = -1;
1076 static int hf_lustre_llog_hdr_llh_flag_zap_when_empty = -1;
1077 static int hf_lustre_llog_hdr_llh_flag_is_cat = -1;
1078 static int hf_lustre_llog_hdr_llh_flag_is_play = -1;
1079 /* --------------------------------------------------------------------*/
1082 /* proto declaration */
1083 static gint proto_lustre = -1;
1088 static int ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_) ;
1089 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_);
1090 static int add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_) ;
1093 /* ======================================================================== */
1094 /*the value_string*/
1095 const value_string lustre_ldlm_opcode[] = {
1096 { IT_OPEN , "IT_OPEN "},
1097 { IT_CREAT , "IT_CREAT "},
1098 { IT_READDIR , "IT_READDIR "},
1099 { IT_GETATTR , "IT_GETATTR "},
1100 { IT_LOOKUP , "IT_LOOKUP "},
1101 { IT_UNLINK , "IT_UNLINK "},
1102 { IT_GETXATTR, "IT_GETXATTR"},
1103 { IT_EXEC , "IT_EXEC "},
1104 { IT_PIN , "IT_PIN "},
1108 const value_string lustre_lov_magic[] = {
1109 { LOV_MAGIC_V1, "LOV_MAGIC_V1" },
1113 const value_string lustre_ldlm_flags_vals[] = {
1114 {0x000001 , "LDLM_FL_LOCK_CHANGED"},
1115 {0x000002 , "LDLM_FL_BLOCK_GRANTED"},
1116 {0x000004 , "LDLM_FL_BLOCK_CONV"},
1117 {0x000008 , "LDLM_FL_BLOCK_WAIT"},
1118 {0x000010 , "LDLM_FL_CBPENDING"},
1119 {0x000020 , "LDLM_FL_AST_SENT"},
1120 {0x000040 , "LDLM_FL_WAIT_NOREPROC"},
1121 {0x000080 , "LDLM_FL_CANCEL"},
1122 {0x000100 , "LDLM_FL_REPLAY"},
1123 {0x000200 , "LDLM_FL_INTENT_ONLY"},
1124 {0x000400 , "LDLM_FL_LOCAL_ONLY"},
1125 {0x000800 , "LDLM_FL_FAILED"},
1126 {0x001000 , "LDLM_FL_HAS_INTENT"},
1127 {0x002000 , "LDLM_FL_CANCELING"},
1128 {0x004000 , "LDLM_FL_LOCAL"},
1129 {0x008000 , "LDLM_FL_WARN"},
1130 {0x010000 , "LDLM_FL_DISCARD_DATA"},
1131 {0x020000 , "LDLM_FL_NO_TIMEOUT"},
1132 {0x040000 , "LDLM_FL_BLOCK_NOWAIT"},
1133 {0x080000 , "LDLM_FL_TEST_LOCK"},
1134 {0x100000 , "LDLM_FL_LVB_READY"},
1135 {0x200000 , "LDLM_FL_KMS_IGNORE"},
1136 {0x400000 , "LDLM_FL_NO_LRU"},
1137 {0x800000 , "LDLM_FL_CANCEL_ON_BLOCK"},
1138 {0x1000000 , "LDLM_FL_CP_REQD"},
1139 {0x2000000 , "LDLM_FL_CLEANED"},
1140 {0x4000000 , "LDLM_FL_ATOMIC_CB"},
1141 {0x10000000 , "LDLM_FL_BL_AST"},
1142 {0x20000000 , "LDLM_FL_BL_DONE"},
1143 {0x40000000 , "LDLM_FL_DENY_ON_CONTENTION"},
1144 {0x80000000 , "LDLM_AST_DISCARD_DATA"},
1148 const value_string lustre_llog_op_type[] = {
1149 {LLOG_PAD_MAGIC ,"LLOG_PAD_MAGIC "},
1150 {OST_SZ_REC ,"OST_SZ_REC "},
1151 {OST_RAID1_REC ,"OST_RAID1_REC "},
1152 {MDS_UNLINK_REC ,"MDS_UNLINK_REC "},
1153 {MDS_SETATTR_REC ,"MDS_SETATTR_REC "},
1154 {OBD_CFG_REC ,"OBD_CFG_REC "},
1155 {PTL_CFG_REC ,"PTL_CFG_REC "},
1156 {LLOG_GEN_REC ,"LLOG_GEN_REC "},
1157 {LLOG_JOIN_REC ,"LLOG_JOIN_REC "},
1158 {LLOG_HDR_MAGIC ,"LLOG_HDR_MAGIC "},
1159 {LLOG_LOGID_MAGIC ,"LLOG_LOGID_MAGIC"},
1163 const value_string lustre_llog_hdr_llh_flags[]= {
1164 {LLOG_F_ZAP_WHEN_EMPTY , "LLOhdr_llh_G_F_ZAP_WHEN_EMPTY"},
1165 {LLOG_F_IS_CAT , "LLOhdr_llh_G_F_IS_CAT"},
1166 {LLOG_F_IS_PLAIN , "LLOG_F_IS_PLAIN"},
1170 const value_string lustre_mds_flags_vals[] = {
1171 {0x1, "LUSTRE_BFLAG_UNCOMMITTED_WRITES"},
1172 {0x80000000, "LUSTRE_BFLAG_EXT_FLAGS"}, /* == EXT3_RESERVED_FL */
1173 {0x00000008, "LUSTRE_SYNC_FL "}, /* Synchronous updates */
1174 {0x00000010, "LUSTRE_IMMUTABLE_FL "}, /* Immutable file */
1175 {0x00000020, "LUSTRE_APPEND_FL "}, /* writes to file may only append */
1176 {0x00000080, "LUSTRE_NOATIME_FL "}, /* do not update atime */
1177 {0x00010000, "LUSTRE_DIRSYNC_FL "}, /* dirsync behaviour (dir only) */
1181 const value_string lustre_mgs_config_body_types[] = {
1189 const value_string lustre_LMTypes[] = {
1190 { PTL_RPC_MSG_REQUEST, "request"},
1191 { PTL_RPC_MSG_ERR , "error"},
1192 { PTL_RPC_MSG_REPLY , "reply"},
1196 const value_string lustre_mds_reint_t_vals[] = {
1197 { REINT_SETATTR, "REINT_SETATTR" },
1198 { REINT_CREATE, "REINT_CREATE" },
1199 { REINT_LINK, "REINT_LINK" },
1200 { REINT_UNLINK, "REINT_UNLINK" },
1201 { REINT_RENAME, "REINT_RENAME" },
1202 { REINT_OPEN, "REINT_OPEN" },
1203 { REINT_SETXATTR, "REINT_SETXATTR" },
1206 const value_string lustre_op_codes[] = {
1209 {1 , "OST_GETATTR"},
1210 {2 , "OST_SETATTR"},
1214 {6 , "OST_DESTROY"},
1215 {7 , "OST_GET_INFO"},
1216 {8 , "OST_CONNECT"},
1217 {9 , "OST_DISCONNECT"},
1221 {13 , "OST_STATFS"},
1222 {14 , "OST_SAN_READ(deprecated)"},
1223 {15 , "OST_SAN_WRITE(deprecated)"},
1225 {17 , "OST_SET_INFO"},
1226 {18 , "OST_QUOTACHECK"},
1227 {19 , "OST_QUOTACTL"},
1228 {20 , "OST_LAST_OPC"},
1230 {33 , "MDS_GETATTR"},
1231 {34 , "MDS_GETATTR_NAME"},
1234 {37 , "MDS_READPAGE"},
1235 {38 , "MDS_CONNECT"},
1236 {39 , "MDS_DISCONNECT"},
1237 {40 , "MDS_GETSTATUS"},
1238 {41 , "MDS_STATFS"},
1242 {45 , "MDS_DONE_WRITING"},
1243 {46 , "MDS_SET_INFO"},
1244 {47 , "MDS_QUOTACHECK"},
1245 {48 , "MDS_QUOTACTL"},
1246 {49 , "MDS_GETXATTR"},
1247 {50 , "MDS_SETXATTR"},
1248 {51 , "MDS_LAST_OPC"},
1250 {101 , "LDLM_ENQUEUE"},
1251 {102 , "LDLM_CONVERT"},
1252 {103 , "LDLM_CANCEL"},
1253 {104 , "LDLM_BL_CALLBACK"},
1254 {105 , "LDLM_CP_CALLBACK"},
1255 {106 , "LDLM_GL_CALLBACK"},
1256 {107 , "LDLM_LAST_OPC"},
1258 {250 , "MGS_CONNECT"},
1259 {251 , "MGS_DISCONNECT"},
1260 {252 , "MGS_EXCEPTION"},
1261 {253 , "MGS_TARGET_REG"},
1262 {254 , "MGS_TARGET_DEL"},
1263 {255 , "MGS_SET_INFO"},
1264 {256 , "MGS_CONFIG_READ"},
1265 {257 , "MGS_LAST_OPC"},
1268 {401 , "OBD_LOG_CANCEL"},
1269 {402 , "OBD_QC_CALLBACK"},
1270 {403 , "OBD_LAST_OPC"},
1272 { 501, "LLOG_ORIGIN_HANDLE_CREATE"},
1273 { 502, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK"},
1274 { 503, "LLOG_ORIGIN_HANDLE_READ_HEADER"},
1275 { 504, "LLOG_ORIGIN_HANDLE_WRITE_REC"},
1276 { 505, "LLOG_ORIGIN_HANDLE_CLOSE"},
1277 { 506, "LLOG_ORIGIN_CONNECT"},
1278 { 507, "LLOG_CATINFO"},
1279 { 508, "LLOG_ORIGIN_HANDLE_PREV_BLOCK"},
1280 { 509, "LLOG_ORIGIN_HANDLE_DESTROY"},
1281 /* SEQ RPC opcodes */
1282 { 700, "SEQ_QUERY"},
1283 { 701, "SEQ_LAST_OPC"},
1284 /* FLD RPC opcodes */
1285 { 900, "FLD_QUERY"},
1286 { 901, "FLD_LAST_OPC"},
1289 /*const value_string lustre_ldlm_mode_t_vals[] = {*/
1290 /* { LCK_MINMODE, "MINMODE" },*/
1291 /* { LCK_EX, "EX" },*/
1292 /* { LCK_PW, "PW" },*/
1293 /* { LCK_PR, "PR" },*/
1294 /* { LCK_CW, "CW" },*/
1295 /* { LCK_CR, "CR" },*/
1296 /* { LCK_NL, "NL" },*/
1297 /* { LCK_GROUP, "GROUP" },*/
1301 /* detailled version the information came from : http://wiki.lustre.org/images/e/e5/LustreInternals_Architecture.pdf */
1302 const value_string lustre_ldlm_mode_t_vals[] = {
1303 { LCK_MINMODE, "MINMODE" },
1304 { LCK_EX, "Exclusive" },
1305 { LCK_PW, "Protected Write" },
1306 { LCK_PR, "Protected Read" },
1307 { LCK_CW, "Concurrent Write" },
1308 { LCK_CR, "Concurrent Read" },
1310 { LCK_GROUP, "GROUP" },
1314 const value_string lustre_ldlm_type_t_vals[] = {
1315 { LDLM_PLAIN, "LDLM_PLAIN" },
1316 { LDLM_EXTENT,"LDLM_EXTENT" },
1317 { LDLM_FLOCK, "LDLM_FLOCK" },
1318 { LDLM_IBITS, "LDLM_IBITS" },
1323 const value_string lustre_llog_cmd_t_vals[] = {
1324 { LLOG_ORIGIN_HANDLE_CREATE, "LLOG_ORIGIN_HANDLE_CREATE" },
1325 { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK" },
1326 { LLOG_ORIGIN_HANDLE_READ_HEADER, "LLOG_ORIGIN_HANDLE_READ_HEADER" },
1327 { LLOG_ORIGIN_HANDLE_WRITE_REC, "LLOG_ORIGIN_HANDLE_WRITE_REC" },
1328 { LLOG_ORIGIN_HANDLE_CLOSE, "LLOG_ORIGIN_HANDLE_CLOSE" },
1329 { LLOG_ORIGIN_CONNECT, "LLOG_ORIGIN_CONNECT" },
1330 { LLOG_CATINFO, "LLOG_CATINFO" },
1331 { LLOG_ORIGIN_HANDLE_PREV_BLOCK, "LLOG_ORIGIN_HANDLE_PREV_BLOCK" },
1332 { LLOG_ORIGIN_HANDLE_DESTROY, "LLOG_ORIGIN_HANDLE_DESTROY" },
1336 #ifndef ENABLE_STATIC
1337 const gchar version[] = VERSION;
1339 /* Start the functions we need for the plugin stuff */
1342 plugin_register(void)
1344 extern void proto_register_dcerpc_lustre(void);
1346 proto_register_dcerpc_lustre();
1350 plugin_reg_handoff(void)
1352 extern void proto_reg_handoff_lustre(void);
1354 proto_reg_handoff_lustre();
1359 /* ------------------------------------------------------------------- */
1360 /* display functions */
1361 /* ------------------------------------------------------------------- */
1362 /* display str in left corner and in COL */
1363 /* TODO : do we need to use inline here ?*/
1364 /* @gint col : the col where we add the information */
1365 inline static void display_info_str(proto_item *pi, column_info *cinfo, gint col, const gchar* str)
1368 proto_item_append_text(pi, str);
1371 if (check_col(cinfo, col))
1372 col_append_str(cinfo, col, str);
1376 * Need to be (re)written
1378 static void display_info_fstr(proto_item *pi, column_info *cinfo, gint col, const char* format, const gchar * str){
1381 //va_start(ap, format);
1382 proto_item_append_text(pi, format, str);
1387 if (check_col(cinfo, col)){
1389 // va_start(ap, format);
1390 col_append_fstr(cinfo, col, format, str);
1397 /* ------------------------------ basic dissect functions ------------------------ */
1400 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1402 proto_tree_add_item(tree, hfindex, tvb, offset, 8, TRUE);
1408 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1410 proto_tree_add_item(tree, hfindex, tvb, offset, 4, TRUE);
1416 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1418 proto_tree_add_item(tree, hfindex, tvb, offset, 2, TRUE);
1424 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1426 proto_tree_add_item(tree, hfindex, tvb, offset, 1, TRUE);
1429 /* ------------------------------------------------------------------------- */
1431 /* dissect raw data */
1433 lustre_dissect_element_data(tvbuff_t *tvb _U_, int offset _U_,
1434 packet_info *pinfo _U_, proto_tree *parent_tree _U_,
1435 int hf_index _U_, guint32 buf_num)
1437 proto_item *item = NULL;
1442 old_offset = offset;
1444 data_len = LUSTRE_BUFFER_LEN(buf_num);
1448 proto_tree_add_item(parent_tree, hf_index, tvb, offset, data_len, TRUE);
1451 proto_item_set_len(item, offset-old_offset);
1452 offset = add_extra_padding(tvb, offset, pinfo, parent_tree);
1458 lustre_dissect_struct_hmac(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1459 proto_tree *parent_tree _U_, int hf_index _U_, int max_length)
1463 proto_item *item = NULL;
1465 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 0, TRUE);
1466 for (i=0; i < max_length; ++i) {
1467 val = tvb_get_guint8(tvb, offset+i);
1468 proto_item_append_text(item, (i) ? "%02x" : ": %#02x", val);
1471 offset += max_length;
1472 proto_item_set_len(item, max_length);
1476 /* ------------------------------------------------------------------------ */
1480 /* IDL: struct lustre_handle { */
1481 /* IDL: uint64 cookie; */
1485 lustre_dissect_element_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1487 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_handle_cookie);
1493 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_)
1495 proto_item *item = NULL;
1496 proto_tree *tree = NULL;
1502 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1503 tree = proto_item_add_subtree(item, ett_lustre_lustre_handle_cookie);
1506 offset=lustre_dissect_element_handle_cookie(tvb, offset, pinfo, tree);
1509 proto_item_set_len(item, offset-old_offset);
1514 /* IDL: struct obd_connect_data { */
1515 /* IDL: uint64 ocd_connect_flags; */
1516 /* IDL: uint32 ocd_version; */
1517 /* IDL: uint32 ocd_grant; */
1518 /* IDL: uint32 ocd_index; */
1519 /* IDL: uint32 ocd_brw_size; */
1520 /* IDL: uint64 ocd_ibits_known; */
1521 /* IDL: uint32 ocd_nllu; */
1522 /* IDL: uint32 ocd_nllg; */
1523 /* IDL: uint64 ocd_transno; */
1524 /* IDL: uint32 ocd_group; */
1525 /* IDL: uint32 ocd_cksum_types; */
1526 /* IDL: uint64 padding1; */
1527 /* IDL: uint64 padding2; */
1531 lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1533 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_connect_flags);
1539 lustre_dissect_element_obd_connect_data_ocd_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1541 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_version);
1547 lustre_dissect_element_obd_connect_data_ocd_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1549 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_grant);
1555 lustre_dissect_element_obd_connect_data_ocd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1557 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_index);
1563 lustre_dissect_element_obd_connect_data_ocd_brw_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1565 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_brw_size);
1571 lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1573 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_ibits_known);
1579 lustre_dissect_element_obd_connect_data_ocd_nllu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1581 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllu);
1587 lustre_dissect_element_obd_connect_data_ocd_nllg(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1589 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllg);
1595 lustre_dissect_element_obd_connect_data_ocd_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1597 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_transno);
1603 lustre_dissect_element_obd_connect_data_ocd_group(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1605 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_group);
1611 lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1613 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_cksum_types);
1619 lustre_dissect_element_obd_connect_data_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1621 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding1);
1627 lustre_dissect_element_obd_connect_data_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1629 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding2);
1635 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_)
1637 proto_item *item = NULL;
1638 proto_tree *tree = NULL;
1646 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1647 tree = proto_item_add_subtree(item, ett_lustre_obd_connect_data);
1650 offset=lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvb, offset, pinfo, tree);
1652 offset=lustre_dissect_element_obd_connect_data_ocd_version(tvb, offset, pinfo, tree);
1654 offset=lustre_dissect_element_obd_connect_data_ocd_grant(tvb, offset, pinfo, tree);
1656 offset=lustre_dissect_element_obd_connect_data_ocd_index(tvb, offset, pinfo, tree);
1658 offset=lustre_dissect_element_obd_connect_data_ocd_brw_size(tvb, offset, pinfo, tree);
1660 offset=lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvb, offset, pinfo, tree);
1662 offset=lustre_dissect_element_obd_connect_data_ocd_nllu(tvb, offset, pinfo, tree);
1664 offset=lustre_dissect_element_obd_connect_data_ocd_nllg(tvb, offset, pinfo, tree);
1666 offset=lustre_dissect_element_obd_connect_data_ocd_transno(tvb, offset, pinfo, tree);
1668 offset=lustre_dissect_element_obd_connect_data_ocd_group(tvb, offset, pinfo, tree);
1670 offset=lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvb, offset, pinfo, tree);
1672 offset=lustre_dissect_element_obd_connect_data_padding1(tvb, offset, pinfo, tree);
1674 offset=lustre_dissect_element_obd_connect_data_padding2(tvb, offset, pinfo, tree);
1677 proto_item_set_len(item, offset-old_offset);
1683 /* IDL: struct lov_ost_data_v1 { */
1684 /* IDL: uint64 l_object_id; */
1685 /* IDL: uint64 l_object_seq; */
1686 /* IDL: uint32 l_ost_gen; */
1687 /* IDL: uint32 l_ost_idx; */
1691 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_)
1693 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_id);
1699 lustre_dissect_element_lov_ost_data_v1_l_object_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1701 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_seq);
1707 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_)
1709 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_gen);
1715 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_)
1717 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_idx);
1723 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_)
1725 proto_item *item = NULL;
1726 proto_tree *tree = NULL;
1734 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1735 tree = proto_item_add_subtree(item, ett_lustre_lov_ost_data_v1);
1738 offset=lustre_dissect_element_lov_ost_data_v1_l_object_id(tvb, offset, pinfo, tree);
1740 offset=lustre_dissect_element_lov_ost_data_v1_l_object_seq(tvb, offset, pinfo, tree);
1742 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvb, offset, pinfo, tree);
1744 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvb, offset, pinfo, tree);
1747 proto_item_set_len(item, offset-old_offset);
1752 /* IDL: struct lov_mds_md_v1 { */
1753 /* IDL: uint32 lmm_magic; */
1754 /* IDL: uint32 lmm_pattern; */
1755 /* IDL: uint64 lmm_object_id; */
1756 /* IDL: uint64 lmm_object_seq; */
1757 /* IDL: uint32 lmm_stripe_size; */
1758 /* IDL: uint32 lmm_stripe_count; */
1759 /* IDL: struct lov_ost_data_v1 { */
1760 /* IDL: } lmm_objects[0]; <-- en fait on en a lmm_stripe_count */
1764 lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1766 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_magic);
1772 lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1774 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_pattern);
1780 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_)
1782 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_id);
1788 lustre_dissect_element_lov_mds_md_v1_lmm_object_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1790 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_seq);
1796 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_)
1798 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_size);
1804 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_)
1806 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_count);
1812 lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1814 offset=lustre_dissect_struct_lov_ost_data_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1_lmm_objects);
1819 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)
1822 /*g_print("num = %d", num);*/
1823 for (i = 0; i < num; i++){
1824 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvb, offset, pinfo, tree);
1833 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_)
1835 proto_item *item = NULL;
1836 proto_tree *tree = NULL;
1839 guint32 stripe_count ;
1845 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1846 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_v1);
1849 offset=lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvb, offset, pinfo, tree);
1851 offset=lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvb, offset, pinfo, tree);
1853 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvb, offset, pinfo, tree);
1855 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_seq(tvb, offset, pinfo, tree);
1857 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvb, offset, pinfo, tree);
1859 stripe_count = tvb_get_letohl(tvb,offset);
1860 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvb, offset, pinfo, tree);
1862 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvb, offset, pinfo, tree, stripe_count);
1865 proto_item_set_len(item, offset-old_offset);
1871 lustre_dissect_struct_lov_mds_md(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1872 proto_tree *parent_tree _U_,
1873 int hf_index _U_, int buff_num _U_)
1877 if(LUSTRE_BUFFER_LEN(buff_num) == 0)
1880 magic=tvb_get_letohl(tvb, offset); /* TODO : replace this with a macro */
1883 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,parent_tree,
1887 offset=lustre_dissect_element_data(tvb, offset, pinfo, parent_tree,
1888 hf_lustre_extra_padding, buff_num);
1897 /* IDL: struct obd_statfs { */
1898 /* IDL: uint64 os_type; */
1899 /* IDL: uint64 os_blocks; */
1900 /* IDL: uint64 os_bfree; */
1901 /* IDL: uint64 os_bavail; */
1902 /* IDL: uint64 os_files; */
1903 /* IDL: uint64 os_ffree; */
1904 /* IDL: uint8 os_fsid[40]; */
1905 /* IDL: uint32 os_bsize; */
1906 /* IDL: uint32 os_namelen; */
1907 /* IDL: uint64 os_maxbytes; */
1908 /* IDL: uint32 os_state; */
1909 /* IDL: uint32 os_spare1; */
1910 /* IDL: uint32 os_spare2; */
1911 /* IDL: uint32 os_spare3; */
1912 /* IDL: uint32 os_spare4; */
1913 /* IDL: uint32 os_spare5; */
1914 /* IDL: uint32 os_spare6; */
1915 /* IDL: uint32 os_spare7; */
1916 /* IDL: uint32 os_spare8; */
1917 /* IDL: uint32 os_spare9; */
1921 lustre_dissect_element_obd_statfs_os_type(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_obd_statfs_os_type);
1929 lustre_dissect_element_obd_statfs_os_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1931 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_blocks);
1937 lustre_dissect_element_obd_statfs_os_bfree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1939 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bfree);
1945 lustre_dissect_element_obd_statfs_os_bavail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1947 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bavail);
1953 lustre_dissect_element_obd_statfs_os_files(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1955 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_files);
1961 lustre_dissect_element_obd_statfs_os_ffree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1963 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_ffree);
1969 lustre_dissect_element_obd_statfs_os_fsid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1971 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_fsid);
1977 lustre_dissect_element_obd_statfs_os_fsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1980 for (i = 0; i < 40; i++)
1981 offset=lustre_dissect_element_obd_statfs_os_fsid_(tvb, offset, pinfo, tree);
1989 lustre_dissect_element_obd_statfs_os_bsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1991 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bsize);
1997 lustre_dissect_element_obd_statfs_os_namelen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1999 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_namelen);
2005 lustre_dissect_element_obd_statfs_os_maxbytes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2007 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_maxbytes);
2013 lustre_dissect_element_obd_statfs_os_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2015 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_state);
2021 lustre_dissect_element_obd_statfs_os_spare1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2023 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare1);
2029 lustre_dissect_element_obd_statfs_os_spare2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2031 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare2);
2037 lustre_dissect_element_obd_statfs_os_spare3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2039 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare3);
2045 lustre_dissect_element_obd_statfs_os_spare4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2047 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare4);
2053 lustre_dissect_element_obd_statfs_os_spare5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2055 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare5);
2061 lustre_dissect_element_obd_statfs_os_spare6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2063 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare6);
2069 lustre_dissect_element_obd_statfs_os_spare7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2071 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare7);
2077 lustre_dissect_element_obd_statfs_os_spare8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2079 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare8);
2085 lustre_dissect_element_obd_statfs_os_spare9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2087 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare9);
2093 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_)
2095 proto_item *item = NULL;
2096 proto_tree *tree = NULL;
2104 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2105 tree = proto_item_add_subtree(item, ett_lustre_obd_statfs);
2108 offset=lustre_dissect_element_obd_statfs_os_type(tvb, offset, pinfo, tree);
2110 offset=lustre_dissect_element_obd_statfs_os_blocks(tvb, offset, pinfo, tree);
2112 offset=lustre_dissect_element_obd_statfs_os_bfree(tvb, offset, pinfo, tree);
2114 offset=lustre_dissect_element_obd_statfs_os_bavail(tvb, offset, pinfo, tree);
2116 offset=lustre_dissect_element_obd_statfs_os_files(tvb, offset, pinfo, tree);
2118 offset=lustre_dissect_element_obd_statfs_os_ffree(tvb, offset, pinfo, tree);
2120 offset=lustre_dissect_element_obd_statfs_os_fsid(tvb, offset, pinfo, tree);
2122 offset=lustre_dissect_element_obd_statfs_os_bsize(tvb, offset, pinfo, tree);
2124 offset=lustre_dissect_element_obd_statfs_os_namelen(tvb, offset, pinfo, tree);
2126 offset=lustre_dissect_element_obd_statfs_os_maxbytes(tvb, offset, pinfo, tree);
2128 offset=lustre_dissect_element_obd_statfs_os_state(tvb, offset, pinfo, tree);
2130 offset=lustre_dissect_element_obd_statfs_os_spare1(tvb, offset, pinfo, tree);
2132 offset=lustre_dissect_element_obd_statfs_os_spare2(tvb, offset, pinfo, tree);
2134 offset=lustre_dissect_element_obd_statfs_os_spare3(tvb, offset, pinfo, tree);
2136 offset=lustre_dissect_element_obd_statfs_os_spare4(tvb, offset, pinfo, tree);
2138 offset=lustre_dissect_element_obd_statfs_os_spare5(tvb, offset, pinfo, tree);
2140 offset=lustre_dissect_element_obd_statfs_os_spare6(tvb, offset, pinfo, tree);
2142 offset=lustre_dissect_element_obd_statfs_os_spare7(tvb, offset, pinfo, tree);
2144 offset=lustre_dissect_element_obd_statfs_os_spare8(tvb, offset, pinfo, tree);
2146 offset=lustre_dissect_element_obd_statfs_os_spare9(tvb, offset, pinfo, tree);
2149 proto_item_set_len(item, offset-old_offset);
2154 /* IDL: struct obd_ioobj { */
2155 /* IDL: uint64 ioo_id; */
2156 /* IDL: uint64 ioo_seq; */
2157 /* IDL: uint32 ioo_max_brw; */
2158 /* IDL: uint32 ioo_bufcnt; */
2162 lustre_dissect_element_obd_ioobj_ioo_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2164 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_id);
2170 lustre_dissect_element_obd_ioobj_ioo_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2172 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_seq);
2178 lustre_dissect_element_obd_ioobj_ioo_max_brw(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2180 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_max_brw);
2186 lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2188 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_bufcnt);
2194 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_)
2196 proto_item *item = NULL;
2197 proto_tree *tree = NULL;
2205 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2206 tree = proto_item_add_subtree(item, ett_lustre_obd_ioobj);
2209 offset=lustre_dissect_element_obd_ioobj_ioo_id(tvb, offset, pinfo, tree);
2211 offset=lustre_dissect_element_obd_ioobj_ioo_seq(tvb, offset, pinfo, tree);
2213 offset=lustre_dissect_element_obd_ioobj_ioo_max_brw(tvb, offset, pinfo, tree);
2215 offset=lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvb, offset, pinfo, tree);
2218 proto_item_set_len(item, offset-old_offset);
2223 /* IDL: struct niobuf_remote { */
2224 /* IDL: uint64 offset; */
2225 /* IDL: uint32 len; */
2226 /* IDL: uint32 flags; */
2230 lustre_dissect_element_niobuf_remote_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2232 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_offset);
2238 lustre_dissect_element_niobuf_remote_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2240 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_len);
2246 lustre_dissect_element_niobuf_remote_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2248 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_flags);
2254 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_)
2256 proto_item *item = NULL;
2257 proto_tree *tree = NULL;
2265 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2266 tree = proto_item_add_subtree(item, ett_lustre_niobuf_remote);
2269 offset=lustre_dissect_element_niobuf_remote_offset(tvb, offset, pinfo, tree);
2271 offset=lustre_dissect_element_niobuf_remote_len(tvb, offset, pinfo, tree);
2273 offset=lustre_dissect_element_niobuf_remote_flags(tvb, offset, pinfo, tree);
2276 proto_item_set_len(item, offset-old_offset);
2281 /* IDL: struct ost_lvb { */
2282 /* IDL: uint64 lvb_size; */
2283 /* IDL: uint64 lvb_mtime; */
2284 /* IDL: uint64 lvb_atime; */
2285 /* IDL: uint64 lvb_ctime; */
2286 /* IDL: uint64 lvb_blocks; */
2290 lustre_dissect_element_ost_lvb_lvb_size(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_ost_lvb_lvb_size);
2298 lustre_dissect_element_ost_lvb_lvb_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2302 ns.secs = tvb_get_letohl(tvb,offset);
2304 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_mtime, tvb, offset, 8, &ns );
2310 lustre_dissect_element_ost_lvb_lvb_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2314 ns.secs = tvb_get_letohl(tvb,offset);
2316 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_atime, tvb, offset, 8, &ns );
2323 lustre_dissect_element_ost_lvb_lvb_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2327 ns.secs = tvb_get_letohl(tvb,offset);
2329 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_ctime, tvb, offset, 8, &ns );
2336 lustre_dissect_element_ost_lvb_lvb_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2338 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_blocks);
2344 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_)
2346 proto_item *item = NULL;
2347 proto_tree *tree = NULL;
2355 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2356 tree = proto_item_add_subtree(item, ett_lustre_ost_lvb);
2359 offset=lustre_dissect_element_ost_lvb_lvb_size(tvb, offset, pinfo, tree);
2361 offset=lustre_dissect_element_ost_lvb_lvb_mtime(tvb, offset, pinfo, tree);
2363 offset=lustre_dissect_element_ost_lvb_lvb_atime(tvb, offset, pinfo, tree);
2365 offset=lustre_dissect_element_ost_lvb_lvb_ctime(tvb, offset, pinfo, tree);
2367 offset=lustre_dissect_element_ost_lvb_lvb_blocks(tvb, offset, pinfo, tree);
2370 proto_item_set_len(item, offset-old_offset);
2376 /* IDL: struct ll_fid { */
2377 /* IDL: uint64 id; */
2378 /* IDL: uint32 generation; */
2379 /* IDL: uint32 f_type; */
2383 lustre_dissect_element_ll_fid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2385 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ll_fid_id);
2391 lustre_dissect_element_ll_fid_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2393 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_generation);
2399 lustre_dissect_element_ll_fid_f_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2401 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_f_type);
2407 lustre_dissect_struct_lu_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2409 proto_item *item = NULL;
2410 proto_tree *tree = NULL;
2416 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2417 tree = proto_item_add_subtree(item, ett_lustre_ll_fid);
2420 offset=lustre_dissect_element_ll_fid_id(tvb, offset, pinfo, tree);
2422 offset=lustre_dissect_element_ll_fid_generation(tvb, offset, pinfo, tree);
2424 offset=lustre_dissect_element_ll_fid_f_type(tvb, offset, pinfo, tree);
2427 proto_item_set_len(item, offset-old_offset);
2432 /* IDL: struct obd_dqinfo { */
2433 /* IDL: uint64 dqi_bgrace; */
2434 /* IDL: uint64 dqi_igrace; */
2435 /* IDL: uint32 dqi_flags; */
2436 /* IDL: uint32 dqi_valid; */
2440 lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2442 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_bgrace);
2448 lustre_dissect_element_obd_dqinfo_dqi_igrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2450 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_igrace);
2456 lustre_dissect_element_obd_dqinfo_dqi_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2458 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_flags);
2464 lustre_dissect_element_obd_dqinfo_dqi_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2466 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_valid);
2472 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_)
2474 proto_item *item = NULL;
2475 proto_tree *tree = NULL;
2480 old_offset = offset;
2483 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2484 tree = proto_item_add_subtree(item, ett_lustre_obd_dqinfo);
2487 offset = lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvb, offset, pinfo, tree);
2489 offset = lustre_dissect_element_obd_dqinfo_dqi_igrace(tvb, offset, pinfo, tree);
2491 offset = lustre_dissect_element_obd_dqinfo_dqi_flags(tvb, offset, pinfo, tree);
2493 offset = lustre_dissect_element_obd_dqinfo_dqi_valid(tvb, offset, pinfo, tree);
2496 proto_item_set_len(item, offset-old_offset);
2501 /* IDL: struct obd_dqblk { */
2502 /* IDL: uint64 dqb_bhardlimit; */
2503 /* IDL: uint64 dqb_bsoftlimit; */
2504 /* IDL: uint64 dqb_curspace; */
2505 /* IDL: uint64 dqb_ihardlimit; */
2506 /* IDL: uint64 dqb_isoftlimit; */
2507 /* IDL: uint64 dqb_curinodes; */
2508 /* IDL: uint64 dqb_btime; */
2509 /* IDL: uint64 dqb_itime; */
2510 /* IDL: uint32 dqb_valid; */
2511 /* IDL: uint32 padding; */
2515 lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2517 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bhardlimit);
2523 lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2525 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bsoftlimit);
2531 lustre_dissect_element_obd_dqblk_dqb_curspace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2533 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curspace);
2539 lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2541 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_ihardlimit);
2547 lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2549 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_isoftlimit);
2555 lustre_dissect_element_obd_dqblk_dqb_curinodes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2557 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curinodes);
2563 lustre_dissect_element_obd_dqblk_dqb_btime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2568 ns.secs = tvb_get_letohl(tvb,offset);
2570 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_btime, tvb, offset, 8, &ns );
2576 lustre_dissect_element_obd_dqblk_dqb_itime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2580 ns.secs = tvb_get_letohl(tvb,offset);
2582 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_itime, tvb, offset, 8, &ns );
2589 lustre_dissect_element_obd_dqblk_dqb_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2591 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_valid);
2597 lustre_dissect_element_obd_dqblk_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2599 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_padding);
2605 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_)
2607 proto_item *item = NULL;
2608 proto_tree *tree = NULL;
2613 old_offset = offset;
2616 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2617 tree = proto_item_add_subtree(item, ett_lustre_obd_dqblk);
2620 offset = lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvb, offset, pinfo, tree);
2622 offset = lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvb, offset, pinfo, tree);
2624 offset = lustre_dissect_element_obd_dqblk_dqb_curspace(tvb, offset, pinfo, tree);
2626 offset = lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvb, offset, pinfo, tree);
2628 offset = lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvb, offset, pinfo, tree);
2630 offset = lustre_dissect_element_obd_dqblk_dqb_curinodes(tvb, offset, pinfo, tree);
2632 offset = lustre_dissect_element_obd_dqblk_dqb_btime(tvb, offset, pinfo, tree);
2634 offset = lustre_dissect_element_obd_dqblk_dqb_itime(tvb, offset, pinfo, tree);
2636 offset = lustre_dissect_element_obd_dqblk_dqb_valid(tvb, offset, pinfo, tree);
2638 offset = lustre_dissect_element_obd_dqblk_padding(tvb, offset, pinfo, tree);
2641 proto_item_set_len(item, offset-old_offset);
2647 /* IDL: struct obd_quotactl { */
2648 /* IDL: uint32 qc_cmd; */
2649 /* IDL: uint32 qc_type; */
2650 /* IDL: uint32 qc_id; */
2651 /* IDL: uint32 qc_stat; */
2652 /* IDL: struct obd_dqinfo { */
2653 /* IDL: } qc_dqinfo; */
2654 /* IDL: struct obd_dqblk { */
2655 /* IDL: } qc_dqblk; */
2659 lustre_dissect_element_obd_quotactl_qc_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2661 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_cmd);
2667 lustre_dissect_element_obd_quotactl_qc_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2669 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_type);
2675 lustre_dissect_element_obd_quotactl_qc_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2677 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_id);
2683 lustre_dissect_element_obd_quotactl_qc_stat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2685 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_stat);
2693 lustre_dissect_element_obd_quotactl_qc_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2695 offset=lustre_dissect_struct_obd_dqblk(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqblk);
2700 lustre_dissect_element_obd_quotactl_qc_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2702 offset=lustre_dissect_struct_obd_dqinfo(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqinfo);
2707 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_)
2709 proto_item *item = NULL;
2710 proto_tree *tree = NULL;
2716 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2717 tree = proto_item_add_subtree(item, ett_lustre_obd_quotactl);
2720 offset=lustre_dissect_element_obd_quotactl_qc_cmd(tvb, offset, pinfo, tree);
2722 offset=lustre_dissect_element_obd_quotactl_qc_type(tvb, offset, pinfo, tree);
2724 offset=lustre_dissect_element_obd_quotactl_qc_id(tvb, offset, pinfo, tree);
2726 offset=lustre_dissect_element_obd_quotactl_qc_stat(tvb, offset, pinfo, tree);
2728 offset=lustre_dissect_element_obd_quotactl_qc_dqinfo(tvb, offset, pinfo, tree);
2730 offset=lustre_dissect_element_obd_quotactl_qc_dqblk(tvb, offset, pinfo, tree);
2733 proto_item_set_len(item, offset-old_offset);
2739 /* IDL: struct quota_adjust_qunit { */
2740 /* IDL: uint32 qaq_flags; */
2741 /* IDL: uint32 qaq_id; */
2742 /* IDL: uint64 qaq_bunit_sz; */
2743 /* IDL: uint64 qaq_iunit_sz; */
2744 /* IDL: uint64 padding1; */
2748 lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2750 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_flags);
2756 lustre_dissect_element_quota_adjust_qunit_qaq_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2758 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_id);
2764 lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2766 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_bunit_sz);
2772 lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2774 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_iunit_sz);
2780 lustre_dissect_element_quota_adjust_qunit_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2782 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_padding1);
2788 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_)
2790 proto_item *item = NULL;
2791 proto_tree *tree = NULL;
2799 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2800 tree = proto_item_add_subtree(item, ett_lustre_quota_adjust_qunit);
2803 offset=lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvb, offset, pinfo, tree);
2805 offset=lustre_dissect_element_quota_adjust_qunit_qaq_id(tvb, offset, pinfo, tree);
2807 offset=lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvb, offset, pinfo, tree);
2809 offset=lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvb, offset, pinfo, tree);
2811 offset=lustre_dissect_element_quota_adjust_qunit_padding1(tvb, offset, pinfo, tree);
2814 proto_item_set_len(item, offset-old_offset);
2819 /* IDL: struct mdt_body { */
2820 /* IDL: struct lu_fid { */
2822 /* IDL: struct lu_fid { */
2824 /* IDL: struct lustre_handle { */
2825 /* IDL: } handle; */
2826 /* IDL: uint64 valid; */
2827 /* IDL: uint64 size; */
2828 /* IDL: uint64 mtime; */
2829 /* IDL: uint64 atime; */
2830 /* IDL: uint64 ctime; */
2831 /* IDL: uint64 blocks; */
2832 /* IDL: uint64 ioepoch; */
2833 /* IDL: uint64 ino; */
2834 /* IDL: uint32 fsuid; */
2835 /* IDL: uint32 fsgid; */
2836 /* IDL: uint32 capability; */
2837 /* IDL: uint32 mode; */
2838 /* IDL: uint32 uid; */
2839 /* IDL: uint32 gid; */
2840 /* IDL: uint32 flags; */
2841 /* IDL: uint32 rdev; */
2842 /* IDL: uint32 nlink; */
2843 /* IDL: uint32 generation; */
2844 /* IDL: uint32 suppgid; */
2845 /* IDL: uint32 eadatasize; */
2846 /* IDL: uint32 aclsize; */
2847 /* IDL: uint32 max_mdsize; */
2848 /* IDL: uint32 max_cookiesize; */
2849 /* IDL: uint32 uid_h; */
2850 /* IDL: uint32 gid_h; */
2851 /* IDL: uint32 padding_5; */
2852 /* IDL: uint64 padding_6; */
2853 /* IDL: uint64 padding_7; */
2854 /* IDL: uint64 padding_8; */
2855 /* IDL: uint64 padding_9; */
2856 /* IDL: uint64 padding_10; */
2860 lustre_dissect_element_mdt_body_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2862 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid1);
2867 lustre_dissect_element_mdt_body_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2869 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid2);
2874 lustre_dissect_element_mdt_body_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2876 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
2882 lustre_dissect_element_mdt_body_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2884 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_valid);
2890 lustre_dissect_element_mdt_body_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2892 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_size);
2898 lustre_dissect_element_mdt_body_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2902 ns.secs = tvb_get_letohl(tvb,offset);
2904 proto_tree_add_time(tree, hf_lustre_mdt_body_mtime, tvb, offset, 8, &ns );
2910 lustre_dissect_element_mdt_body_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2914 ns.secs = tvb_get_letohl(tvb,offset);
2916 proto_tree_add_time(tree, hf_lustre_mdt_body_atime, tvb, offset, 8, &ns );
2923 lustre_dissect_element_mdt_body_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2927 ns.secs = tvb_get_letohl(tvb,offset);
2929 proto_tree_add_time(tree, hf_lustre_mdt_body_ctime, tvb, offset, 8, &ns );
2935 lustre_dissect_element_mdt_body_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2937 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_blocks);
2943 lustre_dissect_element_mdt_body_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2945 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ioepoch);
2951 lustre_dissect_element_mdt_body_ino(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2953 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ino);
2959 lustre_dissect_element_mdt_body_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2961 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsuid);
2967 lustre_dissect_element_mdt_body_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2969 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsgid);
2975 lustre_dissect_element_mdt_body_capability(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2977 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_capability);
2983 lustre_dissect_element_mdt_body_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2985 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_mode);
2991 lustre_dissect_element_mdt_body_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2993 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid);
2999 lustre_dissect_element_mdt_body_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3001 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid);
3007 lustre_dissect_element_mdt_body_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3009 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_flags);
3015 lustre_dissect_element_mdt_body_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3017 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_rdev);
3023 lustre_dissect_element_mdt_body_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3025 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_nlink);
3031 lustre_dissect_element_mdt_body_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3033 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_generation);
3039 lustre_dissect_element_mdt_body_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3041 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_suppgid);
3047 lustre_dissect_element_mdt_body_eadatasize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3049 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_eadatasize);
3055 lustre_dissect_element_mdt_body_aclsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3057 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_aclsize);
3063 lustre_dissect_element_mdt_body_max_mdsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3065 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_mdsize);
3071 lustre_dissect_element_mdt_body_max_cookiesize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3073 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_cookiesize);
3079 lustre_dissect_element_mdt_body_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3081 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid_h);
3087 lustre_dissect_element_mdt_body_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3089 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid_h);
3095 lustre_dissect_element_mdt_body_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3097 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_5);
3103 lustre_dissect_element_mdt_body_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3105 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_6);
3111 lustre_dissect_element_mdt_body_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3113 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_7);
3119 lustre_dissect_element_mdt_body_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3121 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_8);
3127 lustre_dissect_element_mdt_body_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3129 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_9);
3135 lustre_dissect_element_mdt_body_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3137 offset= dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_10);
3143 lustre_dissect_struct_mdt_body(tvbuff_t *tvb _U_, int offset _U_,
3144 packet_info *pinfo _U_,
3145 proto_tree *parent_tree _U_,
3148 proto_item *item = NULL;
3149 proto_tree *tree = NULL;
3156 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3157 tree = proto_item_add_subtree(item, ett_lustre_mdt_body);
3160 offset=lustre_dissect_element_mdt_body_fid1(tvb, offset, pinfo, tree);
3162 offset=lustre_dissect_element_mdt_body_fid2(tvb, offset, pinfo, tree);
3164 offset=lustre_dissect_element_mdt_body_handle(tvb, offset, pinfo, tree);
3166 offset=lustre_dissect_element_mdt_body_valid(tvb, offset, pinfo, tree);
3168 offset=lustre_dissect_element_mdt_body_size(tvb, offset, pinfo, tree);
3170 offset=lustre_dissect_element_mdt_body_mtime(tvb, offset, pinfo, tree);
3172 offset=lustre_dissect_element_mdt_body_atime(tvb, offset, pinfo, tree);
3174 offset=lustre_dissect_element_mdt_body_ctime(tvb, offset, pinfo, tree);
3176 offset=lustre_dissect_element_mdt_body_blocks(tvb, offset, pinfo, tree);
3178 offset=lustre_dissect_element_mdt_body_ioepoch(tvb, offset, pinfo, tree);
3180 offset=lustre_dissect_element_mdt_body_ino(tvb, offset, pinfo, tree);
3182 offset=lustre_dissect_element_mdt_body_fsuid(tvb, offset, pinfo, tree);
3184 offset=lustre_dissect_element_mdt_body_fsgid(tvb, offset, pinfo, tree);
3186 offset=lustre_dissect_element_mdt_body_capability(tvb, offset, pinfo, tree);
3188 offset=lustre_dissect_element_mdt_body_mode(tvb, offset, pinfo, tree);
3190 offset=lustre_dissect_element_mdt_body_uid(tvb, offset, pinfo, tree);
3192 offset=lustre_dissect_element_mdt_body_gid(tvb, offset, pinfo, tree);
3194 offset=lustre_dissect_element_mdt_body_flags(tvb, offset, pinfo, tree);
3196 offset=lustre_dissect_element_mdt_body_rdev(tvb, offset, pinfo, tree);
3198 offset=lustre_dissect_element_mdt_body_nlink(tvb, offset, pinfo, tree);
3200 offset=lustre_dissect_element_mdt_body_generation(tvb, offset, pinfo, tree);
3202 offset=lustre_dissect_element_mdt_body_suppgid(tvb, offset, pinfo, tree);
3204 offset=lustre_dissect_element_mdt_body_eadatasize(tvb, offset, pinfo, tree);
3206 offset=lustre_dissect_element_mdt_body_aclsize(tvb, offset, pinfo, tree);
3208 offset=lustre_dissect_element_mdt_body_max_mdsize(tvb, offset, pinfo, tree);
3210 offset=lustre_dissect_element_mdt_body_max_cookiesize(tvb, offset, pinfo, tree);
3212 offset=lustre_dissect_element_mdt_body_uid_h(tvb, offset, pinfo, tree);
3214 offset=lustre_dissect_element_mdt_body_gid_h(tvb, offset, pinfo, tree);
3216 offset=lustre_dissect_element_mdt_body_padding_5(tvb, offset, pinfo, tree);
3218 offset=lustre_dissect_element_mdt_body_padding_6(tvb, offset, pinfo, tree);
3220 offset=lustre_dissect_element_mdt_body_padding_7(tvb, offset, pinfo, tree);
3222 offset=lustre_dissect_element_mdt_body_padding_8(tvb, offset, pinfo, tree);
3224 offset=lustre_dissect_element_mdt_body_padding_9(tvb, offset, pinfo, tree);
3226 offset=lustre_dissect_element_mdt_body_padding_10(tvb, offset, pinfo, tree);
3229 proto_item_set_len(item, offset-old_offset);
3234 /* I don't find where this struct appear on wire.. need to search mdc_setattr_pack() */
3235 /* IDL: struct mdt_rec_setattr { */
3236 /* IDL: uint32 sa_opcode; */
3237 /* IDL: uint32 sa_cap; */
3238 /* IDL: uint32 sa_fsuid; */
3239 /* IDL: uint32 sa_fsuid_h; */
3240 /* IDL: uint32 sa_fsgid; */
3241 /* IDL: uint32 sa_fsgid_h; */
3242 /* IDL: uint32 sa_suppgid; */
3243 /* IDL: uint32 sa_suppgid_h; */
3244 /* IDL: uint32 sa_padding_1; */
3245 /* IDL: uint32 sa_padding_1_h; */
3246 /* IDL: struct lu_fid { */
3247 /* IDL: } sa_fid; */
3248 /* IDL: uint64 sa_valid; */
3249 /* IDL: uint32 sa_uid; */
3250 /* IDL: uint32 sa_gid; */
3251 /* IDL: uint64 sa_size; */
3252 /* IDL: uint64 sa_blocks; */
3253 /* IDL: uint64 sa_mtime; */
3254 /* IDL: uint64 sa_atime; */
3255 /* IDL: uint64 sa_ctime; */
3256 /* IDL: uint32 sa_attr_flags; */
3257 /* IDL: uint32 sa_mode; */
3258 /* IDL: uint32 sa_padding_2; */
3259 /* IDL: uint32 sa_padding_3; */
3260 /* IDL: uint32 sa_padding_4; */
3261 /* IDL: uint32 sa_padding_5; */
3265 lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3267 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_opcode);
3273 lustre_dissect_element_mdt_rec_setattr_sa_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3275 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_cap);
3281 lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3283 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid);
3289 lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3291 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid_h);
3297 lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3299 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid);
3305 lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3307 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid_h);
3313 lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3315 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid);
3321 lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3323 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid_h);
3329 lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3331 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1);
3337 lustre_dissect_element_mdt_rec_setattr_sa_padding_1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3339 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1_h);
3345 lustre_dissect_element_mdt_rec_setattr_sa_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3347 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setattr_sa_fid);
3353 lustre_dissect_element_mdt_rec_setattr_sa_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3355 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_valid);
3361 lustre_dissect_element_mdt_rec_setattr_sa_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3363 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_uid);
3369 lustre_dissect_element_mdt_rec_setattr_sa_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3371 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_gid);
3377 lustre_dissect_element_mdt_rec_setattr_sa_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3379 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_size);
3385 lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3387 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_blocks);
3393 lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3398 ns.secs = tvb_get_letohl(tvb,offset);
3400 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_mtime, tvb, offset, 8, &ns );
3406 lustre_dissect_element_mdt_rec_setattr_sa_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3410 ns.secs = tvb_get_letohl(tvb,offset);
3412 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_atime, tvb, offset, 8, &ns );
3418 lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3422 ns.secs = tvb_get_letohl(tvb,offset);
3424 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_ctime, tvb, offset, 8, &ns );
3430 lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3432 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_attr_flags);
3438 lustre_dissect_element_mdt_rec_setattr_sa_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3440 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_mode);
3446 lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3448 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_2);
3454 lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3456 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_3);
3462 lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3464 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_4);
3470 lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3472 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_5);
3478 lustre_dissect_struct_mdt_rec_setattr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3480 proto_item *item = NULL;
3481 proto_tree *tree = NULL;
3490 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3491 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setattr);
3493 sa_opcode=tvb_get_letohl(tvb,offset);
3494 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sa_opcode, lustre_mds_reint_t_vals, "Unknown sa_opc"));
3496 offset=lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvb, offset, pinfo, tree);
3498 offset=lustre_dissect_element_mdt_rec_setattr_sa_cap(tvb, offset, pinfo, tree);
3500 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvb, offset, pinfo, tree);
3502 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvb, offset, pinfo, tree);
3504 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvb, offset, pinfo, tree);
3506 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvb, offset, pinfo, tree);
3508 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvb, offset, pinfo, tree);
3510 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvb, offset, pinfo, tree);
3512 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvb, offset, pinfo, tree);
3514 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1_h(tvb, offset, pinfo, tree);
3516 offset=lustre_dissect_element_mdt_rec_setattr_sa_fid(tvb, offset, pinfo, tree);
3518 offset=lustre_dissect_element_mdt_rec_setattr_sa_valid(tvb, offset, pinfo, tree);
3520 offset=lustre_dissect_element_mdt_rec_setattr_sa_uid(tvb, offset, pinfo, tree);
3522 offset=lustre_dissect_element_mdt_rec_setattr_sa_gid(tvb, offset, pinfo, tree);
3524 offset=lustre_dissect_element_mdt_rec_setattr_sa_size(tvb, offset, pinfo, tree);
3526 offset=lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvb, offset, pinfo, tree);
3528 offset=lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvb, offset, pinfo, tree);
3530 offset=lustre_dissect_element_mdt_rec_setattr_sa_atime(tvb, offset, pinfo, tree);
3532 offset=lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvb, offset, pinfo, tree);
3534 offset=lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvb, offset, pinfo, tree);
3536 offset=lustre_dissect_element_mdt_rec_setattr_sa_mode(tvb, offset, pinfo, tree);
3538 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvb, offset, pinfo, tree);
3540 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvb, offset, pinfo, tree);
3542 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvb, offset, pinfo, tree);
3544 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvb, offset, pinfo, tree);
3547 proto_item_set_len(item, offset-old_offset);
3552 /* IDL: struct mdt_rec_create { */
3553 /* IDL: uint32 cr_opcode; */
3554 /* IDL: uint32 cr_cap; */
3555 /* IDL: uint32 cr_fsuid; */
3556 /* IDL: uint32 cr_fsuid_h; */
3557 /* IDL: uint32 cr_fsgid; */
3558 /* IDL: uint32 cr_fsgid_h; */
3559 /* IDL: uint32 cr_suppgid1; */
3560 /* IDL: uint32 cr_suppgid1_h; */
3561 /* IDL: uint32 cr_suppgid2; */
3562 /* IDL: uint32 cr_suppgid2_h; */
3563 /* IDL: struct lu_fid { */
3564 /* IDL: } cr_fid1; */
3565 /* IDL: struct lu_fid { */
3566 /* IDL: } cr_fid2; */
3567 /* IDL: struct lustre_handle { */
3568 /* IDL: } cr_old_handle; */
3569 /* IDL: uint64 cr_time; */
3570 /* IDL: uint64 cr_rdev; */
3571 /* IDL: uint64 cr_ioepoch; */
3572 /* IDL: uint64 cr_padding_1; */
3573 /* IDL: uint32 cr_mode; */
3574 /* IDL: uint32 cr_bias; */
3575 /* IDL: uint32 cr_flags_l; */
3576 /* IDL: uint32 cr_flags_h; */
3577 /* IDL: uint32 cr_umask; */
3578 /* IDL: uint32 cr_padding_4; */
3582 lustre_dissect_element_mdt_rec_create_cr_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3584 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_opcode);
3590 lustre_dissect_element_mdt_rec_create_cr_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3592 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_cap);
3598 lustre_dissect_element_mdt_rec_create_cr_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3600 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid);
3606 lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3608 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid_h);
3614 lustre_dissect_element_mdt_rec_create_cr_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3616 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid);
3622 lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3624 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid_h);
3630 lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3632 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1);
3638 lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3640 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1_h);
3646 lustre_dissect_element_mdt_rec_create_cr_suppgid2(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_mdt_rec_create_cr_suppgid2);
3654 lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(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_mdt_rec_create_cr_suppgid2_h);
3662 lustre_dissect_element_mdt_rec_create_cr_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3664 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid1);
3669 lustre_dissect_element_mdt_rec_create_cr_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3671 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid2);
3676 lustre_dissect_element_mdt_rec_create_cr_old_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3678 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_old_handle);
3683 lustre_dissect_element_mdt_rec_create_cr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3687 ns.secs = tvb_get_letohl(tvb,offset);
3689 proto_tree_add_time(tree, hf_lustre_mdt_rec_create_cr_time, tvb, offset, 8, &ns );
3696 lustre_dissect_element_mdt_rec_create_cr_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3698 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_rdev);
3704 lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3706 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_ioepoch);
3712 lustre_dissect_element_mdt_rec_create_cr_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3714 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_1);
3720 lustre_dissect_element_mdt_rec_create_cr_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3722 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_mode);
3728 lustre_dissect_element_mdt_rec_create_cr_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3730 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_bias);
3736 lustre_dissect_element_mdt_rec_create_cr_flags_l(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3738 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_l);
3744 lustre_dissect_element_mdt_rec_create_cr_flags_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3746 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_h);
3752 lustre_dissect_element_mdt_rec_create_cr_umask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3754 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_umask);
3760 lustre_dissect_element_mdt_rec_create_cr_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3762 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_4);
3768 lustre_dissect_struct_mdt_rec_create(tvbuff_t *tvb _U_, int offset _U_,
3769 packet_info *pinfo _U_,
3770 proto_tree *parent_tree _U_,
3773 proto_item *item = NULL;
3774 proto_tree *tree = NULL;
3781 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3782 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_create);
3784 cr_opcode=tvb_get_letohl(tvb,offset);
3785 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(cr_opcode, lustre_mds_reint_t_vals, "Unknown cr_opc"));
3787 offset=lustre_dissect_element_mdt_rec_create_cr_opcode(tvb, offset, pinfo, tree);
3789 offset=lustre_dissect_element_mdt_rec_create_cr_cap(tvb, offset, pinfo, tree);
3791 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid(tvb, offset, pinfo, tree);
3793 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvb, offset, pinfo, tree);
3795 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid(tvb, offset, pinfo, tree);
3797 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvb, offset, pinfo, tree);
3799 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvb, offset, pinfo, tree);
3801 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvb, offset, pinfo, tree);
3803 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvb, offset, pinfo, tree);
3805 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvb, offset, pinfo, tree);
3807 offset=lustre_dissect_element_mdt_rec_create_cr_fid1(tvb, offset, pinfo, tree);
3809 offset=lustre_dissect_element_mdt_rec_create_cr_fid2(tvb, offset, pinfo, tree);
3811 offset=lustre_dissect_element_mdt_rec_create_cr_old_handle(tvb, offset, pinfo, tree);
3813 offset=lustre_dissect_element_mdt_rec_create_cr_time(tvb, offset, pinfo, tree);
3815 offset=lustre_dissect_element_mdt_rec_create_cr_rdev(tvb, offset, pinfo, tree);
3817 offset=lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvb, offset, pinfo, tree);
3819 offset=lustre_dissect_element_mdt_rec_create_cr_padding_1(tvb, offset, pinfo, tree);
3821 offset=lustre_dissect_element_mdt_rec_create_cr_mode(tvb, offset, pinfo, tree);
3823 offset=lustre_dissect_element_mdt_rec_create_cr_bias(tvb, offset, pinfo, tree);
3825 offset=lustre_dissect_element_mdt_rec_create_cr_flags_l(tvb, offset, pinfo, tree);
3827 offset=lustre_dissect_element_mdt_rec_create_cr_flags_h(tvb, offset, pinfo, tree);
3829 offset=lustre_dissect_element_mdt_rec_create_cr_umask(tvb, offset, pinfo, tree);
3831 offset=lustre_dissect_element_mdt_rec_create_cr_padding_4(tvb, offset, pinfo, tree);
3833 proto_item_set_len(item, offset-old_offset);
3838 /* TODO : find where this structure appear ! */
3839 /* IDL: struct mdt_rec_link { */
3840 /* IDL: uint32 lk_opcode; */
3841 /* IDL: uint32 lk_cap; */
3842 /* IDL: uint32 lk_fsuid; */
3843 /* IDL: uint32 lk_fsuid_h; */
3844 /* IDL: uint32 lk_fsgid; */
3845 /* IDL: uint32 lk_fsgid_h; */
3846 /* IDL: uint32 lk_suppgid1; */
3847 /* IDL: uint32 lk_suppgid1_h; */
3848 /* IDL: uint32 lk_suppgid2; */
3849 /* IDL: uint32 lk_suppgid2_h; */
3850 /* IDL: struct lu_fid { */
3851 /* IDL: } lk_fid1; */
3852 /* IDL: struct lu_fid { */
3853 /* IDL: } lk_fid2; */
3854 /* IDL: uint64 lk_time; */
3855 /* IDL: uint64 lk_padding_1; */
3856 /* IDL: uint64 lk_padding_2; */
3857 /* IDL: uint64 lk_padding_3; */
3858 /* IDL: uint64 lk_padding_4; */
3859 /* IDL: uint32 lk_bias; */
3860 /* IDL: uint32 lk_padding_5; */
3861 /* IDL: uint32 lk_padding_6; */
3862 /* IDL: uint32 lk_padding_7; */
3863 /* IDL: uint32 lk_padding_8; */
3864 /* IDL: uint32 lk_padding_9; */
3868 lustre_dissect_element_mdt_rec_link_lk_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3870 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_opcode);
3876 lustre_dissect_element_mdt_rec_link_lk_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3878 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_cap);
3884 lustre_dissect_element_mdt_rec_link_lk_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3886 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid);
3892 lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3894 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid_h);
3900 lustre_dissect_element_mdt_rec_link_lk_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3902 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid);
3908 lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3910 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid_h);
3916 lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3918 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1);
3924 lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3926 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1_h);
3932 lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3934 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2);
3940 lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3942 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2_h);
3948 lustre_dissect_element_mdt_rec_link_lk_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3950 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid1);
3955 lustre_dissect_element_mdt_rec_link_lk_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3957 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid2);
3962 lustre_dissect_element_mdt_rec_link_lk_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3966 ns.secs = tvb_get_letohl(tvb,offset);
3968 proto_tree_add_time(tree, hf_lustre_mdt_rec_link_lk_time, tvb, offset, 8, &ns );
3974 lustre_dissect_element_mdt_rec_link_lk_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3976 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_1);
3982 lustre_dissect_element_mdt_rec_link_lk_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3984 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_2);
3990 lustre_dissect_element_mdt_rec_link_lk_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3992 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_3);
3998 lustre_dissect_element_mdt_rec_link_lk_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4000 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_4);
4006 lustre_dissect_element_mdt_rec_link_lk_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4008 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_bias);
4014 lustre_dissect_element_mdt_rec_link_lk_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4016 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_5);
4022 lustre_dissect_element_mdt_rec_link_lk_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4024 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_6);
4030 lustre_dissect_element_mdt_rec_link_lk_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4032 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_7);
4038 lustre_dissect_element_mdt_rec_link_lk_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4040 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_8);
4046 lustre_dissect_element_mdt_rec_link_lk_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4048 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_9);
4054 lustre_dissect_struct_mdt_rec_link(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4056 proto_item *item = NULL;
4057 proto_tree *tree = NULL;
4066 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4067 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_link);
4069 lk_opcode=tvb_get_letohl(tvb,offset);
4070 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lk_opcode, lustre_mds_reint_t_vals, "Unknown lk_opc"));
4072 offset=lustre_dissect_element_mdt_rec_link_lk_opcode(tvb, offset, pinfo, tree);
4074 offset=lustre_dissect_element_mdt_rec_link_lk_cap(tvb, offset, pinfo, tree);
4076 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid(tvb, offset, pinfo, tree);
4078 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvb, offset, pinfo, tree);
4080 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid(tvb, offset, pinfo, tree);
4082 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvb, offset, pinfo, tree);
4084 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvb, offset, pinfo, tree);
4086 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvb, offset, pinfo, tree);
4088 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvb, offset, pinfo, tree);
4090 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvb, offset, pinfo, tree);
4092 offset=lustre_dissect_element_mdt_rec_link_lk_fid1(tvb, offset, pinfo, tree);
4094 offset=lustre_dissect_element_mdt_rec_link_lk_fid2(tvb, offset, pinfo, tree);
4096 offset=lustre_dissect_element_mdt_rec_link_lk_time(tvb, offset, pinfo, tree);
4098 offset=lustre_dissect_element_mdt_rec_link_lk_padding_1(tvb, offset, pinfo, tree);
4100 offset=lustre_dissect_element_mdt_rec_link_lk_padding_2(tvb, offset, pinfo, tree);
4102 offset=lustre_dissect_element_mdt_rec_link_lk_padding_3(tvb, offset, pinfo, tree);
4104 offset=lustre_dissect_element_mdt_rec_link_lk_padding_4(tvb, offset, pinfo, tree);
4106 offset=lustre_dissect_element_mdt_rec_link_lk_bias(tvb, offset, pinfo, tree);
4108 offset=lustre_dissect_element_mdt_rec_link_lk_padding_5(tvb, offset, pinfo, tree);
4110 offset=lustre_dissect_element_mdt_rec_link_lk_padding_6(tvb, offset, pinfo, tree);
4112 offset=lustre_dissect_element_mdt_rec_link_lk_padding_7(tvb, offset, pinfo, tree);
4114 offset=lustre_dissect_element_mdt_rec_link_lk_padding_8(tvb, offset, pinfo, tree);
4116 offset=lustre_dissect_element_mdt_rec_link_lk_padding_9(tvb, offset, pinfo, tree);
4119 proto_item_set_len(item, offset-old_offset);
4124 /* IDL: struct mdt_rec_unlink { */
4125 /* IDL: uint32 ul_opcode; */
4126 /* IDL: uint32 ul_cap; */
4127 /* IDL: uint32 ul_fsuid; */
4128 /* IDL: uint32 ul_fsuid_h; */
4129 /* IDL: uint32 ul_fsgid; */
4130 /* IDL: uint32 ul_fsgid_h; */
4131 /* IDL: uint32 ul_suppgid1; */
4132 /* IDL: uint32 ul_suppgid1_h; */
4133 /* IDL: uint32 ul_suppgid2; */
4134 /* IDL: uint32 ul_suppgid2_h; */
4135 /* IDL: struct lu_fid { */
4136 /* IDL: } ul_fid1; */
4137 /* IDL: struct lu_fid { */
4138 /* IDL: } ul_fid2; */
4139 /* IDL: uint64 ul_time; */
4140 /* IDL: uint64 ul_padding_2; */
4141 /* IDL: uint64 ul_padding_3; */
4142 /* IDL: uint64 ul_padding_4; */
4143 /* IDL: uint64 ul_padding_5; */
4144 /* IDL: uint32 ul_bias; */
4145 /* IDL: uint32 ul_mode; */
4146 /* IDL: uint32 ul_padding_6; */
4147 /* IDL: uint32 ul_padding_7; */
4148 /* IDL: uint32 ul_padding_8; */
4149 /* IDL: uint32 ul_padding_9; */
4153 lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4155 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_opcode);
4161 lustre_dissect_element_mdt_rec_unlink_ul_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4163 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_cap);
4169 lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4171 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid);
4177 lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4179 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid_h);
4185 lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4187 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid);
4193 lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4195 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid_h);
4201 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4203 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1);
4209 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4211 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1_h);
4217 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4219 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2);
4225 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4227 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2_h);
4233 lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4235 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid1);
4240 lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4242 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid2);
4247 lustre_dissect_element_mdt_rec_unlink_ul_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4251 ns.secs = tvb_get_letohl(tvb,offset);
4253 proto_tree_add_time(tree,hf_lustre_mdt_rec_unlink_ul_time , tvb, offset, 8, &ns );
4259 lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4261 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_2);
4267 lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4269 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_3);
4275 lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4277 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_4);
4283 lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4285 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_5);
4291 lustre_dissect_element_mdt_rec_unlink_ul_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4293 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_bias);
4299 lustre_dissect_element_mdt_rec_unlink_ul_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4301 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_mode);
4307 lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4309 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_6);
4315 lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4317 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_7);
4323 lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4325 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_8);
4331 lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4333 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_9);
4339 lustre_dissect_struct_mdt_rec_unlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4341 proto_item *item = NULL;
4342 proto_tree *tree = NULL;
4351 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4352 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_unlink);
4355 ul_opcode=tvb_get_letohl(tvb,offset);
4356 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(ul_opcode, lustre_mds_reint_t_vals, "Unknown ul_opc"));
4358 offset=lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvb, offset, pinfo, tree);
4360 offset=lustre_dissect_element_mdt_rec_unlink_ul_cap(tvb, offset, pinfo, tree);
4362 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvb, offset, pinfo, tree);
4364 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvb, offset, pinfo, tree);
4366 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvb, offset, pinfo, tree);
4368 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvb, offset, pinfo, tree);
4370 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvb, offset, pinfo, tree);
4372 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvb, offset, pinfo, tree);
4374 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvb, offset, pinfo, tree);
4376 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvb, offset, pinfo, tree);
4378 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvb, offset, pinfo, tree);
4380 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvb, offset, pinfo, tree);
4382 offset=lustre_dissect_element_mdt_rec_unlink_ul_time(tvb, offset, pinfo, tree);
4384 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvb, offset, pinfo, tree);
4386 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvb, offset, pinfo, tree);
4388 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvb, offset, pinfo, tree);
4390 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvb, offset, pinfo, tree);
4392 offset=lustre_dissect_element_mdt_rec_unlink_ul_bias(tvb, offset, pinfo, tree);
4394 offset=lustre_dissect_element_mdt_rec_unlink_ul_mode(tvb, offset, pinfo, tree);
4396 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvb, offset, pinfo, tree);
4398 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvb, offset, pinfo, tree);
4400 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvb, offset, pinfo, tree);
4402 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvb, offset, pinfo, tree);
4405 proto_item_set_len(item, offset-old_offset);
4410 /* IDL: struct mdt_rec_rename { */
4411 /* IDL: uint32 rn_opcode; */
4412 /* IDL: uint32 rn_fsuid; */
4413 /* IDL: uint32 rn_fsgid; */
4414 /* IDL: uint32 rn_cap; */
4415 /* IDL: uint32 rn_suppgid1; */
4416 /* IDL: uint32 rn_suppgid2; */
4417 /* IDL: struct ll_fid { */
4418 /* IDL: } rn_fid1; */
4419 /* IDL: struct ll_fid { */
4420 /* IDL: } rn_fid2; */
4421 /* IDL: uint64 rn_time; */
4422 /* IDL: uint32 rn_padding_1; */
4423 /* IDL: uint32 rn_padding_2; */
4424 /* IDL: uint32 rn_padding_3; */
4425 /* IDL: uint32 rn_padding_4; */
4429 lustre_dissect_element_mdt_rec_rename_rn_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4431 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_opcode);
4437 lustre_dissect_element_mdt_rec_rename_rn_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4439 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_cap);
4445 lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4447 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid);
4453 lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4455 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid_h);
4461 lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4463 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid);
4469 lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4471 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid_h);
4477 lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4479 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1);
4485 lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4487 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1_h);
4493 lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4495 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2);
4501 lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4503 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2_h);
4509 lustre_dissect_element_mdt_rec_rename_rn_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4511 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid1);
4516 lustre_dissect_element_mdt_rec_rename_rn_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4518 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid2);
4523 lustre_dissect_element_mdt_rec_rename_rn_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4527 ns.secs = tvb_get_letohl(tvb,offset);
4529 proto_tree_add_time(tree, hf_lustre_mdt_rec_rename_rn_time, tvb, offset, 8, &ns );
4535 lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4537 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_1);
4543 lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4545 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_2);
4551 lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4553 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_3);
4559 lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4561 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_4);
4567 lustre_dissect_element_mdt_rec_rename_rn_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4569 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_bias);
4575 lustre_dissect_element_mdt_rec_rename_rn_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4577 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_mode);
4583 lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4585 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_5);
4591 lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4593 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_6);
4599 lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4601 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_7);
4607 lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4609 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_8);
4615 lustre_dissect_struct_mdt_rec_rename(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4617 proto_item *item = NULL;
4618 proto_tree *tree = NULL;
4627 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4628 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_rename);
4631 rn_opcode=tvb_get_letohl(tvb,offset);
4632 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(rn_opcode, lustre_mds_reint_t_vals, "Unknown rn_opc"));
4634 offset=lustre_dissect_element_mdt_rec_rename_rn_opcode(tvb, offset, pinfo, tree);
4636 offset=lustre_dissect_element_mdt_rec_rename_rn_cap(tvb, offset, pinfo, tree);
4638 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvb, offset, pinfo, tree);
4640 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvb, offset, pinfo, tree);
4642 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvb, offset, pinfo, tree);
4644 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvb, offset, pinfo, tree);
4646 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvb, offset, pinfo, tree);
4648 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvb, offset, pinfo, tree);
4650 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvb, offset, pinfo, tree);
4652 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvb, offset, pinfo, tree);
4654 offset=lustre_dissect_element_mdt_rec_rename_rn_fid1(tvb, offset, pinfo, tree);
4656 offset=lustre_dissect_element_mdt_rec_rename_rn_fid2(tvb, offset, pinfo, tree);
4658 offset=lustre_dissect_element_mdt_rec_rename_rn_time(tvb, offset, pinfo, tree);
4660 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvb, offset, pinfo, tree);
4662 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvb, offset, pinfo, tree);
4664 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvb, offset, pinfo, tree);
4666 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvb, offset, pinfo, tree);
4668 offset=lustre_dissect_element_mdt_rec_rename_rn_bias(tvb, offset, pinfo, tree);
4670 offset=lustre_dissect_element_mdt_rec_rename_rn_mode(tvb, offset, pinfo, tree);
4672 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvb, offset, pinfo, tree);
4674 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvb, offset, pinfo, tree);
4676 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvb, offset, pinfo, tree);
4678 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvb, offset, pinfo, tree);
4681 proto_item_set_len(item, offset-old_offset);
4686 /* I don't find where this struct appear on wire.. need to search mdc_setxattr_pack() */
4687 /* IDL: struct mdt_rec_setxattr { */
4688 /* IDL: uint32 sx_opcode; */
4689 /* IDL: uint32 sx_cap; */
4690 /* IDL: uint32 sx_fsuid; */
4691 /* IDL: uint32 sx_fsuid_h; */
4692 /* IDL: uint32 sx_fsgid; */
4693 /* IDL: uint32 sx_fsgid_h; */
4694 /* IDL: uint32 sx_suppgid1; */
4695 /* IDL: uint32 sx_suppgid1_h; */
4696 /* IDL: uint32 sx_suppgid2; */
4697 /* IDL: uint32 sx_suppgid2_h; */
4698 /* IDL: struct lu_fid { */
4699 /* IDL: } sx_fid; */
4700 /* IDL: uint64 sx_padding_1; */
4701 /* IDL: uint32 sx_padding_2; */
4702 /* IDL: uint32 sx_padding_3; */
4703 /* IDL: uint64 sx_valid; */
4704 /* IDL: uint64 sx_time; */
4705 /* IDL: uint64 sx_padding_5; */
4706 /* IDL: uint64 sx_padding_6; */
4707 /* IDL: uint64 sx_padding_7; */
4708 /* IDL: uint32 sx_size; */
4709 /* IDL: uint32 sx_flags; */
4710 /* IDL: uint32 sx_padding_8; */
4711 /* IDL: uint32 sx_padding_9; */
4712 /* IDL: uint32 sx_padding_10; */
4713 /* IDL: uint32 sx_padding_11; */
4717 lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4719 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_opcode);
4725 lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4727 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_cap);
4733 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4735 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid);
4741 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4743 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid_h);
4749 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4751 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid);
4757 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4759 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid_h);
4765 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4767 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1);
4773 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4775 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1_h);
4781 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4783 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2);
4789 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4791 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2_h);
4797 lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4799 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setxattr_sx_fid);
4805 lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4807 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_1);
4813 lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4815 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_2);
4821 lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4823 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_3);
4829 lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4831 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_valid);
4837 lustre_dissect_element_mdt_rec_setxattr_sx_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4842 ns.secs = tvb_get_letohl(tvb,offset);
4844 proto_tree_add_time(tree, hf_lustre_mdt_rec_setxattr_sx_time, tvb, offset, 8, &ns );
4850 lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4852 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_5);
4858 lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4860 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_6);
4866 lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4868 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_7);
4874 lustre_dissect_element_mdt_rec_setxattr_sx_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4876 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_size);
4882 lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4884 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_flags);
4890 lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4892 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_8);
4898 lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4900 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_9);
4906 lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4908 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_10);
4914 lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4916 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_11);
4922 lustre_dissect_struct_mdt_rec_setxattr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4924 proto_item *item = NULL;
4925 proto_tree *tree = NULL;
4934 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4935 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setxattr);
4937 sx_opcode=tvb_get_letohl(tvb,offset);
4938 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sx_opcode, lustre_mds_reint_t_vals, "Unknown sx_opc"));
4940 offset=lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvb, offset, pinfo, tree);
4942 offset=lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvb, offset, pinfo, tree);
4944 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvb, offset, pinfo, tree);
4946 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvb, offset, pinfo, tree);
4948 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvb, offset, pinfo, tree);
4950 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvb, offset, pinfo, tree);
4952 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvb, offset, pinfo, tree);
4954 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvb, offset, pinfo, tree);
4956 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvb, offset, pinfo, tree);
4958 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvb, offset, pinfo, tree);
4960 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvb, offset, pinfo, tree);
4962 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvb, offset, pinfo, tree);
4964 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvb, offset, pinfo, tree);
4966 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvb, offset, pinfo, tree);
4968 offset=lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvb, offset, pinfo, tree);
4970 offset=lustre_dissect_element_mdt_rec_setxattr_sx_time(tvb, offset, pinfo, tree);
4972 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvb, offset, pinfo, tree);
4974 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvb, offset, pinfo, tree);
4976 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvb, offset, pinfo, tree);
4978 offset=lustre_dissect_element_mdt_rec_setxattr_sx_size(tvb, offset, pinfo, tree);
4980 offset=lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvb, offset, pinfo, tree);
4982 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvb, offset, pinfo, tree);
4984 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvb, offset, pinfo, tree);
4986 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvb, offset, pinfo, tree);
4988 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvb, offset, pinfo, tree);
4991 proto_item_set_len(item, offset-old_offset);
4997 /* TODO : find where this structure appear */
4999 /* IDL: struct lov_desc { */
5000 /* IDL: uint32 ld_tgt_count; */
5001 /* IDL: uint32 ld_active_tgt_count; */
5002 /* IDL: uint32 ld_default_stripe_count; */
5003 /* IDL: uint32 ld_pattern; */
5004 /* IDL: uint64 ld_default_stripe_size; */
5005 /* IDL: uint64 ld_default_stripe_offset; */
5006 /* IDL: uint32 ld_padding_0; */
5007 /* IDL: uint32 ld_qos_maxage; */
5008 /* IDL: uint32 ld_padding_1; */
5009 /* IDL: uint32 ld_padding_2; */
5010 /* IDL: struct obd_uuid { */
5011 /* IDL: } ld_uuid; */
5015 lustre_dissect_element_lov_desc_ld_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5017 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_tgt_count);
5023 lustre_dissect_element_lov_desc_ld_active_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5025 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_active_tgt_count);
5031 lustre_dissect_element_lov_desc_ld_default_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5033 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_count);
5039 lustre_dissect_element_lov_desc_ld_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5041 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_pattern);
5047 lustre_dissect_element_lov_desc_ld_default_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5049 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_size);
5055 lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5057 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_offset);
5063 lustre_dissect_element_lov_desc_ld_padding_0(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5065 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_0);
5071 lustre_dissect_element_lov_desc_ld_qos_maxage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5073 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_qos_maxage);
5079 lustre_dissect_element_lov_desc_ld_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5081 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_1);
5087 lustre_dissect_element_lov_desc_ld_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5089 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_2);
5095 lustre_dissect_element_lov_desc_ld_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5097 //offset=lustre_dissect_struct_HASH(0x85bade8)(tvb,offset,pinfo,tree,hf_lustre_lov_desc_ld_uuid);
5102 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_)
5104 proto_item *item = NULL;
5105 proto_tree *tree = NULL;
5113 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5114 tree = proto_item_add_subtree(item, ett_lustre_lov_desc);
5117 offset=lustre_dissect_element_lov_desc_ld_tgt_count(tvb, offset, pinfo, tree);
5119 offset=lustre_dissect_element_lov_desc_ld_active_tgt_count(tvb, offset, pinfo, tree);
5121 offset=lustre_dissect_element_lov_desc_ld_default_stripe_count(tvb, offset, pinfo, tree);
5123 offset=lustre_dissect_element_lov_desc_ld_pattern(tvb, offset, pinfo, tree);
5125 offset=lustre_dissect_element_lov_desc_ld_default_stripe_size(tvb, offset, pinfo, tree);
5127 offset=lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvb, offset, pinfo, tree);
5129 offset=lustre_dissect_element_lov_desc_ld_padding_0(tvb, offset, pinfo, tree);
5131 offset=lustre_dissect_element_lov_desc_ld_qos_maxage(tvb, offset, pinfo, tree);
5133 offset=lustre_dissect_element_lov_desc_ld_padding_1(tvb, offset, pinfo, tree);
5135 offset=lustre_dissect_element_lov_desc_ld_padding_2(tvb, offset, pinfo, tree);
5137 offset=lustre_dissect_element_lov_desc_ld_uuid(tvb, offset, pinfo, tree);
5140 proto_item_set_len(item, offset-old_offset);
5145 /* IDL: struct obd_uuid { */
5146 /* char uuid[40]; */
5150 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_)
5152 /* the lenght of the string is 40 bytes max, with \0 inside */
5153 proto_tree_add_item(parent_tree, hf_index, tvb, offset, 40, TRUE);
5161 /* IDL: struct ldlm_res_id { */
5162 /* IDL: uint64 name[4]; */
5166 lustre_dissect_element_ldlm_res_id_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5168 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_res_id_name);
5174 lustre_dissect_element_ldlm_res_id_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5177 for (i = 0; i < 4; i++)
5178 offset=lustre_dissect_element_ldlm_res_id_name_(tvb, offset, pinfo, tree);
5186 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_)
5188 proto_item *item = NULL;
5189 proto_tree *tree = NULL;
5197 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5198 tree = proto_item_add_subtree(item, ett_lustre_ldlm_res_id);
5201 offset=lustre_dissect_element_ldlm_res_id_name(tvb, offset, pinfo, tree);
5204 proto_item_set_len(item, offset-old_offset);
5211 /* IDL: LCK_MINMODE=0, */
5212 /* IDL: LCK_EX=1, */
5213 /* IDL: LCK_PW=2, */
5214 /* IDL: LCK_PR=4, */
5215 /* IDL: LCK_CW=8, */
5216 /* IDL: LCK_CR=16, */
5217 /* IDL: LCK_NL=32, */
5218 /* IDL: LCK_GROUP=64, */
5219 /* IDL: LCK_MAXMODE, */
5223 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_)
5225 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_index);
5231 /* IDL: LDLM_PLAIN=10, */
5232 /* IDL: LDLM_EXTENT=11, */
5233 /* IDL: LDLM_FLOCK=12, */
5234 /* IDL: LDLM_IBITS=13, */
5235 /* IDL: LDLM_MAX_TYPE, */
5239 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_)
5241 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type );
5245 /* IDL: struct ldlm_extent { */
5246 /* IDL: uint64 start; */
5247 /* IDL: uint64 end; */
5248 /* IDL: uint64 gid; */
5252 lustre_dissect_element_ldlm_extent_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5254 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_start);
5260 lustre_dissect_element_ldlm_extent_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5262 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_end);
5268 lustre_dissect_element_ldlm_extent_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5270 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_gid);
5276 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_)
5278 proto_item *item = NULL;
5279 proto_tree *tree = NULL;
5287 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5288 tree = proto_item_add_subtree(item, ett_lustre_ldlm_extent);
5291 offset=lustre_dissect_element_ldlm_extent_start(tvb, offset, pinfo, tree);
5293 offset=lustre_dissect_element_ldlm_extent_end(tvb, offset, pinfo, tree);
5295 offset=lustre_dissect_element_ldlm_extent_gid(tvb, offset, pinfo, tree);
5298 proto_item_set_len(item, offset-old_offset);
5303 /* IDL: struct ldlm_inodebits { */
5304 /* IDL: uint64 bits; */
5308 lustre_dissect_element_ldlm_inodebits_bits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5310 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_inodebits_bits);
5316 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_)
5318 proto_item *item = NULL;
5319 proto_tree *tree = NULL;
5327 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5328 tree = proto_item_add_subtree(item, ett_lustre_ldlm_inodebits);
5331 offset=lustre_dissect_element_ldlm_inodebits_bits(tvb, offset, pinfo, tree);
5334 proto_item_set_len(item, offset-old_offset);
5339 /* IDL: struct ldlm_flock { */
5340 /* IDL: uint64 start; */
5341 /* IDL: uint64 end; */
5342 /* IDL: uint64 blocking_export; */
5343 /* IDL: uint32 blocking_pid; */
5344 /* IDL: uint32 pid; */
5348 lustre_dissect_element_ldlm_flock_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5350 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_start);
5356 lustre_dissect_element_ldlm_flock_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5358 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_end);
5364 lustre_dissect_element_ldlm_flock_blocking_export(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5366 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_export);
5372 lustre_dissect_element_ldlm_flock_blocking_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5374 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_pid);
5380 lustre_dissect_element_ldlm_flock_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5382 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_pid);
5388 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_)
5390 proto_item *item = NULL;
5391 proto_tree *tree = NULL;
5399 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5400 tree = proto_item_add_subtree(item, ett_lustre_ldlm_flock);
5403 offset=lustre_dissect_element_ldlm_flock_start(tvb, offset, pinfo, tree);
5405 offset=lustre_dissect_element_ldlm_flock_end(tvb, offset, pinfo, tree);
5407 offset=lustre_dissect_element_ldlm_flock_blocking_export(tvb, offset, pinfo, tree);
5409 offset=lustre_dissect_element_ldlm_flock_blocking_pid(tvb, offset, pinfo, tree);
5411 offset=lustre_dissect_element_ldlm_flock_pid(tvb, offset, pinfo, tree);
5414 proto_item_set_len(item, offset-old_offset);
5419 /* IDL: struct ldlm_intent { */
5420 /* IDL: uint64 opc; */
5424 lustre_dissect_element_ldlm_intent_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5427 /* this opcode is like a flag*/
5428 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_open );
5429 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_creat );
5430 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_readdir );
5431 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getattr );
5432 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_lookup );
5433 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_unlink );
5434 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getxattr);
5435 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_exec );
5436 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_pin );
5437 opcode = tvb_get_letohl(tvb,offset);
5439 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, "[ intent :");
5440 if(opcode & IT_OPEN ){
5441 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " open");
5442 proto_item_append_text(tree, " open" );
5444 if(opcode & IT_CREAT ){
5445 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " create");
5446 proto_item_append_text(tree, " create" );
5448 if(opcode & IT_READDIR ){
5449 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " readdir");
5450 proto_item_append_text(tree, " readdir" );
5452 if(opcode & IT_GETATTR ){
5453 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getattr");
5454 proto_item_append_text(tree, " getattr" );
5456 if(opcode & IT_LOOKUP ){
5457 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " lookup");
5458 proto_item_append_text(tree, " lookup" );
5460 if(opcode & IT_UNLINK ){
5461 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " unlink");
5462 proto_item_append_text(tree, " unlink" );
5464 if(opcode & IT_GETXATTR){
5465 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getxattr");
5466 proto_item_append_text(tree, " getxattr" );
5468 if(opcode & IT_EXEC ){
5469 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " exec");
5470 proto_item_append_text(tree, " exec" );
5472 if(opcode & IT_PIN ){
5473 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " pin");
5474 proto_item_append_text(tree, " pin" );
5477 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " ]");
5483 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_)
5486 proto_item * opcode_item = NULL;
5487 proto_tree * opcode_tree = NULL;
5489 intent_opc = tvb_get_letoh64(tvb,offset);
5491 opcode_item = proto_tree_add_item(parent_tree, hf_lustre_ldlm_intent_opc, tvb, offset, 8, TRUE);
5492 opcode_tree = proto_item_add_subtree(opcode_item, ett_lustre_ldlm_intent_opc);
5495 offset=lustre_dissect_element_ldlm_intent_opc(tvb, offset, pinfo, opcode_tree);
5497 offset=ldlm_opcode_process(tvb, offset, pinfo, parent_tree, intent_opc);
5502 /* IDL: struct ldlm_resource_desc { */
5503 /* IDL: ldlm_type_t lr_type; */
5504 /* IDL: uint32 lr_padding; */
5505 /* IDL: struct ldlm_res_id { */
5506 /* IDL: } lr_name; */
5510 lustre_dissect_element_ldlm_resource_desc_lr_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5512 /* offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);*/
5513 offset=lustre_dissect_enum_ldlm_type_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);
5518 lustre_dissect_element_ldlm_resource_desc_lr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5520 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_padding);
5526 lustre_dissect_element_ldlm_resource_desc_lr_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5528 offset=lustre_dissect_struct_ldlm_res_id(tvb,offset,pinfo,tree,hf_lustre_ldlm_resource_desc_lr_name);
5533 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_)
5535 proto_item *item = NULL;
5536 proto_tree *tree = NULL;
5544 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5545 tree = proto_item_add_subtree(item, ett_lustre_ldlm_resource_desc);
5548 offset=lustre_dissect_element_ldlm_resource_desc_lr_type(tvb, offset, pinfo, tree);
5550 offset=lustre_dissect_element_ldlm_resource_desc_lr_padding(tvb, offset, pinfo, tree);
5552 offset=lustre_dissect_element_ldlm_resource_desc_lr_name(tvb, offset, pinfo, tree);
5555 proto_item_set_len(item, offset-old_offset);
5561 /* IDL: struct ldlm_lock_desc { */
5562 /* IDL: struct ldlm_resource_desc { */
5563 /* IDL: } l_resource; */
5564 /* IDL: ldlm_mode_t l_req_mode; */
5565 /* IDL: ldlm_mode_t l_granted_mode; */
5566 /* IDL: ldlm_policy_data_t l_policy_data; */
5570 lustre_dissect_element_ldlm_lock_desc_l_resource(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5572 offset=lustre_dissect_struct_ldlm_resource_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_resource);
5577 lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5579 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_req_mode);
5585 lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5587 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_granted_mode);
5593 lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5596 guint32 lr_type; /* type of the lock */
5598 lr_type = tvb_get_letohl(tvb,offset - 48 ); /* TODO : find another way that using -48 */
5600 /* this section must be check with lustre code, possible mistake here */
5604 offset=lustre_dissect_struct_ldlm_flock(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5607 offset= lustre_dissect_struct_ldlm_extent(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5608 /* add an extra padding 8 bytes */
5609 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5612 offset=lustre_dissect_struct_ldlm_inodebits(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5613 /* add an extra padding 24 bytes */
5614 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5615 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5616 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5619 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5620 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5621 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5622 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5629 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_)
5631 proto_item *item = NULL;
5632 proto_tree *tree = NULL;
5635 guint32 lock_req_mode;
5641 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5642 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_desc);
5645 offset=lustre_dissect_element_ldlm_lock_desc_l_resource(tvb, offset, pinfo, tree);
5647 lock_req_mode = tvb_get_letohl(tvb,offset);
5649 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lock_req_mode, lustre_ldlm_mode_t_vals, "Unknown lock"));
5651 offset=lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvb, offset, pinfo, tree);
5653 offset=lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvb, offset, pinfo, tree);
5655 offset=lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvb, offset, pinfo, tree);
5658 proto_item_set_len(item, offset-old_offset);
5664 /* IDL: struct ldlm_request { */
5665 /* IDL: uint32 lock_flags; */
5666 /* IDL: uint32 lock_count; */
5667 /* IDL: struct ldlm_lock_desc { */
5668 /* IDL: } lock_desc; */
5669 /* IDL: struct lustre_handle { */
5670 /* IDL: } lock_handle[2]; */
5676 lustre_dissect_element_ldlm_request_lock_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5678 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_count);
5684 lustre_dissect_element_ldlm_request_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5686 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_desc);
5693 lustre_dissect_element_ldlm_request_lock_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5695 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5696 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5698 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_handle);
5703 lustre_dissect_element_ldlm_request_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int num_locks _U_)
5708 for (i = 0; i < num_locks; i++)
5709 offset=lustre_dissect_element_ldlm_request_lock_handle_(tvb, offset, pinfo, tree);
5715 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_)
5717 proto_item *item = NULL;
5718 proto_tree *tree = NULL;
5720 /* guint32 lock_flag; */
5721 /* guint32 ldlm_type; */
5722 guint32 num_locks = 2;
5727 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5728 tree = proto_item_add_subtree(item, ett_lustre_ldlm_request);
5731 /* lock_flag = tvb_get_letohl(tvb,offset); */
5732 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree,
5733 hf_lustre_ldlm_request_lock_flags);
5735 num_locks = tvb_get_letohl(tvb,offset);
5736 offset=lustre_dissect_element_ldlm_request_lock_count(tvb, offset, pinfo, tree);
5738 /* ldlm_type = (EXTENT, PLAIN, ou IBITS) */
5739 /* ldlm_type = tvb_get_letohl(tvb,offset); */
5740 offset=lustre_dissect_element_ldlm_request_lock_desc(tvb, offset, pinfo, tree);
5741 offset=lustre_dissect_element_ldlm_request_lock_handle(tvb, offset, pinfo, tree, num_locks);
5743 proto_item_set_len(item, offset-old_offset);
5749 /* IDL: struct ldlm_reply { */
5750 /* IDL: uint32 lock_flags; */
5751 /* IDL: uint32 lock_padding; */
5752 /* IDL: struct ldlm_lock_desc { */
5753 /* IDL: } lock_desc; */
5754 /* IDL: struct lustre_handle { */
5755 /* IDL: } lock_handle; */
5756 /* IDL: uint64 lock_policy_res1; */
5757 /* IDL: uint64 lock_policy_res2; */
5761 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_)
5763 proto_item *item = NULL;
5764 proto_tree *tree = NULL;
5767 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
5768 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_flags);
5770 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_ast_discard_data);
5771 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_deny_on_contention);
5772 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_done );
5773 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_ast );
5774 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_atomic_cb );
5775 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cleaned );
5776 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cp_reqd );
5777 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel_on_block );
5778 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_lru );
5779 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_kms_ignore );
5780 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lvb_ready );
5781 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_test_lock );
5782 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_nowait );
5783 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_timeout );
5784 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_discard_data );
5785 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_warn );
5786 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local );
5787 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_canceling );
5788 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_has_intent );
5789 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_failed );
5790 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local_only );
5791 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_intent_only );
5792 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_replay );
5793 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel );
5794 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_wait_noreproc );
5795 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_ast_sent );
5796 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cbpending );
5797 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_wait );
5798 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_conv );
5799 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_granted );
5800 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lock_changed );
5805 lustre_dissect_element_ldlm_reply_lock_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5807 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_padding);
5813 lustre_dissect_element_ldlm_reply_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5815 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_desc);
5820 lustre_dissect_element_ldlm_reply_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5822 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5823 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5825 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_handle);
5830 lustre_dissect_element_ldlm_reply_lock_policy_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5832 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res1);
5838 lustre_dissect_element_ldlm_reply_lock_policy_res2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5840 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res2);
5846 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_ )
5848 proto_item *item = NULL;
5849 proto_tree *tree = NULL;
5851 /* guint32 lock_flag; */
5856 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5857 tree = proto_item_add_subtree(item, ett_lustre_ldlm_reply);
5860 /* lock_flag = tvb_get_letohl(tvb,offset); */
5861 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_flags);
5863 offset=lustre_dissect_element_ldlm_reply_lock_padding(tvb, offset, pinfo, tree);
5865 if (ldlm_type != NULL)
5866 *ldlm_type = tvb_get_letohl(tvb,offset);
5867 offset=lustre_dissect_element_ldlm_reply_lock_desc(tvb, offset, pinfo, tree);
5869 offset=lustre_dissect_element_ldlm_reply_lock_handle(tvb, offset, pinfo, tree);
5871 offset=lustre_dissect_element_ldlm_reply_lock_policy_res1(tvb, offset, pinfo, tree);
5873 offset=lustre_dissect_element_ldlm_reply_lock_policy_res2(tvb, offset, pinfo, tree);
5875 proto_item_set_len(item, offset-old_offset);
5883 /* IDL: struct mgs_send_param { */
5884 /* IDL: uint8 mgs_param[1024]; */
5890 lustre_dissect_element_mgs_send_param_mgs_param_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5892 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_send_param_mgs_param);
5898 lustre_dissect_element_mgs_send_param_mgs_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5901 for (i = 0; i < 1024; i++)
5902 offset=lustre_dissect_element_mgs_send_param_mgs_param_(tvb, offset, pinfo, tree);
5908 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_)
5910 proto_item *item = NULL;
5911 proto_tree *tree = NULL;
5918 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5919 tree = proto_item_add_subtree(item, ett_lustre_mgs_send_param);
5922 offset=lustre_dissect_element_mgs_send_param_mgs_param(tvb, offset, pinfo, tree);
5925 proto_item_set_len(item, offset-old_offset);
5930 /* IDL: struct mgs_config_body {
5931 * IDL: char mcb_name[64];
5932 * IDL: __u64 mcb_offset;
5933 * IDL: __u16 mcb_type;
5934 * IDL: __u8 mcb_reserved;
5935 * IDL: __u8 mcb_bits;
5936 * IDL: __u32 mcb_units;
5940 lustre_dissect_element_mgs_config_body_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5942 int string_len = 64;
5943 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
5944 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " name : %s",
5945 (const gchar *) tvb_get_string(tvb,offset,string_len) );
5952 lustre_dissect_struct_mgs_config_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5954 proto_item *item = NULL;
5955 proto_tree *tree = NULL;
5962 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5963 tree = proto_item_add_subtree(item, ett_lustre_mgs_config_body);
5966 offset=lustre_dissect_element_mgs_config_body_name(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_name);
5968 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_offset);
5969 offset=dissect_uint16(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_type);
5970 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_reserved);
5971 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_bits);
5972 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_units);
5974 proto_item_set_len(item, offset-old_offset);
5979 /* IDL: struct mgs_config_res {
5980 * IDL: __u64 mcr_offset;
5981 * IDL: __u64 mcr_size;
5985 lustre_dissect_struct_mgs_config_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5987 proto_item *item = NULL;
5988 proto_tree *tree = NULL;
5994 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5995 tree = proto_item_add_subtree(item, ett_lustre_mgs_config_res);
5998 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_res_offset);
5999 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_res_size);
6001 proto_item_set_len(item, offset-old_offset);
6007 /* IDL: struct mgs_target_info { */
6008 /* IDL: uint32 mti_lustre_ver; */
6009 /* IDL: uint32 mti_stripe_index; */
6010 /* IDL: uint32 mti_config_ver; */
6011 /* IDL: uint32 mti_flags; */
6012 /* IDL: uint32 mti_nid_count; */
6013 /* IDL: uint32 padding; */
6014 /* IDL: uint8 mti_fsname[64]; */
6015 /* IDL: uint8 mti_svname[64]; */
6016 /* IDL: uint8 mti_uuid[40]; */
6017 /* IDL: uint64 mti_nids[32]; */
6018 /* IDL: uint8 mti_params[4096]; */
6022 lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6024 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_lustre_ver);
6030 lustre_dissect_element_mgs_target_info_mti_stripe_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6032 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_stripe_index);
6038 lustre_dissect_element_mgs_target_info_mti_config_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6040 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_config_ver);
6046 lustre_dissect_element_mgs_target_info_mti_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6048 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_flags);
6054 lustre_dissect_element_mgs_target_info_mti_nid_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6056 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nid_count);
6062 lustre_dissect_element_mgs_target_info_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6064 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_padding);
6070 lustre_dissect_element_mgs_target_info_mti_fsname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6072 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_fsname);
6078 lustre_dissect_element_mgs_target_info_mti_fsname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6081 for (i = 0; i < 64; i++)
6082 offset=lustre_dissect_element_mgs_target_info_mti_fsname_(tvb, offset, pinfo, tree);
6092 lustre_dissect_element_mgs_target_info_mti_svname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6094 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_svname);
6100 lustre_dissect_element_mgs_target_info_mti_svname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6103 for (i = 0; i < 64; i++)
6104 offset=lustre_dissect_element_mgs_target_info_mti_svname_(tvb, offset, pinfo, tree);
6110 lustre_dissect_element_mgs_target_info_mti_uuid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6112 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_uuid);
6118 lustre_dissect_element_mgs_target_info_mti_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6121 for (i = 0; i < 40; i++)
6122 offset=lustre_dissect_element_mgs_target_info_mti_uuid_(tvb, offset, pinfo, tree);
6132 lustre_dissect_element_mgs_target_info_mti_nids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6134 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nids);
6140 lustre_dissect_element_mgs_target_info_mti_nids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6143 for (i = 0; i < 32; i++)
6144 offset=lustre_dissect_element_mgs_target_info_mti_nids_(tvb, offset, pinfo, tree);
6152 lustre_dissect_element_mgs_target_info_mti_params_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6154 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_params);
6160 lustre_dissect_element_mgs_target_info_mti_params(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6163 for (i = 0; i < 4096; i++)
6164 offset=lustre_dissect_element_mgs_target_info_mti_params_(tvb, offset, pinfo, tree);
6170 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_)
6172 proto_item *item = NULL;
6173 proto_tree *tree = NULL;
6181 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6182 tree = proto_item_add_subtree(item, ett_lustre_mgs_target_info);
6185 offset=lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvb, offset, pinfo, tree);
6187 offset=lustre_dissect_element_mgs_target_info_mti_stripe_index(tvb, offset, pinfo, tree);
6189 offset=lustre_dissect_element_mgs_target_info_mti_config_ver(tvb, offset, pinfo, tree);
6191 offset=lustre_dissect_element_mgs_target_info_mti_flags(tvb, offset, pinfo, tree);
6193 offset=lustre_dissect_element_mgs_target_info_mti_nid_count(tvb, offset, pinfo, tree);
6195 offset=lustre_dissect_element_mgs_target_info_padding(tvb, offset, pinfo, tree);
6197 offset=lustre_dissect_element_mgs_target_info_mti_fsname(tvb, offset, pinfo, tree);
6199 offset=lustre_dissect_element_mgs_target_info_mti_svname(tvb, offset, pinfo, tree);
6201 offset=lustre_dissect_element_mgs_target_info_mti_uuid(tvb, offset, pinfo, tree);
6203 offset=lustre_dissect_element_mgs_target_info_mti_nids(tvb, offset, pinfo, tree);
6205 offset=lustre_dissect_element_mgs_target_info_mti_params(tvb, offset, pinfo, tree);
6208 proto_item_set_len(item, offset-old_offset);
6213 /* IDL: struct cfg_marker { */
6214 /* IDL: uint32 cm_step; */
6215 /* IDL: uint32 cm_flags; */
6216 /* IDL: uint32 cm_vers; */
6217 /* IDL: uint32 padding; */
6218 /* IDL: time_t cm_createtime; */
6219 /* IDL: time_t cm_canceltime; */
6220 /* IDL: uint8 cm_tgtname[64]; */
6221 /* IDL: uint8 cm_comment[64]; */
6225 lustre_dissect_element_cfg_marker_cm_step(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6227 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_step);
6233 lustre_dissect_element_cfg_marker_cm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6235 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_flags);
6241 lustre_dissect_element_cfg_marker_cm_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6243 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_vers);
6249 lustre_dissect_element_cfg_marker_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6251 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_padding);
6257 lustre_dissect_element_cfg_marker_cm_createtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6259 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_createtime );
6260 /*g_print("function lustre_dissect_element_cfg_marker_cm_createtime don't work\n");*/
6265 lustre_dissect_element_cfg_marker_cm_canceltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6267 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_canceltime);
6269 /*g_print("element_cfg_marker_cm_canceltime\n");*/
6276 lustre_dissect_element_cfg_marker_cm_tgtname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6278 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_tgtname);
6284 lustre_dissect_element_cfg_marker_cm_tgtname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6287 for (i = 0; i < 64; i++)
6288 offset=lustre_dissect_element_cfg_marker_cm_tgtname_(tvb, offset, pinfo, tree);
6296 lustre_dissect_element_cfg_marker_cm_comment_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6298 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_comment);
6304 lustre_dissect_element_cfg_marker_cm_comment(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6307 for (i = 0; i < 64; i++)
6308 offset=lustre_dissect_element_cfg_marker_cm_comment_(tvb, offset, pinfo, tree);
6314 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_)
6316 proto_item *item = NULL;
6317 proto_tree *tree = NULL;
6325 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6326 tree = proto_item_add_subtree(item, ett_lustre_cfg_marker);
6329 offset=lustre_dissect_element_cfg_marker_cm_step(tvb, offset, pinfo, tree);
6331 offset=lustre_dissect_element_cfg_marker_cm_flags(tvb, offset, pinfo, tree);
6333 offset=lustre_dissect_element_cfg_marker_cm_vers(tvb, offset, pinfo, tree);
6335 offset=lustre_dissect_element_cfg_marker_padding(tvb, offset, pinfo, tree);
6337 offset=lustre_dissect_element_cfg_marker_cm_createtime(tvb, offset, pinfo, tree);
6339 offset=lustre_dissect_element_cfg_marker_cm_canceltime(tvb, offset, pinfo, tree);
6341 offset=lustre_dissect_element_cfg_marker_cm_tgtname(tvb, offset, pinfo, tree);
6343 offset=lustre_dissect_element_cfg_marker_cm_comment(tvb, offset, pinfo, tree);
6346 proto_item_set_len(item, offset-old_offset);
6353 /* IDL: struct llog_logid { */
6354 /* IDL: uint64 lgl_oid; */
6355 /* IDL: uint64 lgl_oseq; */
6356 /* IDL: uint32 lgl_ogen; */
6360 lustre_dissect_element_llog_logid_lgl_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6362 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oid);
6368 lustre_dissect_element_llog_logid_lgl_oseq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6370 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oseq);
6376 lustre_dissect_element_llog_logid_lgl_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6378 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_ogen);
6384 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_)
6386 proto_item *item = NULL;
6387 proto_tree *tree = NULL;
6395 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6396 tree = proto_item_add_subtree(item, ett_lustre_llog_logid);
6399 offset=lustre_dissect_element_llog_logid_lgl_oid(tvb, offset, pinfo, tree);
6401 offset=lustre_dissect_element_llog_logid_lgl_oseq(tvb, offset, pinfo, tree);
6403 offset=lustre_dissect_element_llog_logid_lgl_ogen(tvb, offset, pinfo, tree);
6406 proto_item_set_len(item, offset-old_offset);
6411 /* I don't know when this structure is used on network */
6412 /* IDL: struct llog_catid { */
6413 /* IDL: struct llog_logid { */
6414 /* IDL: } lci_logid; */
6415 /* IDL: uint32 lci_padding1; */
6416 /* IDL: uint32 lci_padding2; */
6417 /* IDL: uint32 lci_padding3; */
6421 lustre_dissect_element_llog_catid_lci_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6423 //offset=lustre_dissect_struct_HASH(0x85cc76c)(tvb,offset,pinfo,tree,hf_lustre_llog_catid_lci_logid);
6425 /*g_print("llog_catid_lci_logid bug\n");*/
6430 lustre_dissect_element_llog_catid_lci_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6432 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding1);
6438 lustre_dissect_element_llog_catid_lci_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6440 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding2);
6446 lustre_dissect_element_llog_catid_lci_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6448 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding3);
6454 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_)
6456 proto_item *item = NULL;
6457 proto_tree *tree = NULL;
6465 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6466 tree = proto_item_add_subtree(item, ett_lustre_llog_catid);
6469 offset=lustre_dissect_element_llog_catid_lci_logid(tvb, offset, pinfo, tree);
6471 offset=lustre_dissect_element_llog_catid_lci_padding1(tvb, offset, pinfo, tree);
6473 offset=lustre_dissect_element_llog_catid_lci_padding2(tvb, offset, pinfo, tree);
6475 offset=lustre_dissect_element_llog_catid_lci_padding3(tvb, offset, pinfo, tree);
6478 proto_item_set_len(item, offset-old_offset);
6483 /* IDL: struct llog_rec_hdr { */
6484 /* IDL: uint32 lrh_len; */
6485 /* IDL: uint32 lrh_index; */
6486 /* IDL: uint32 lrh_type; */
6487 /* IDL: uint32 padding; */
6491 lustre_dissect_element_llog_rec_hdr_lrh_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6493 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_len);
6499 lustre_dissect_element_llog_rec_hdr_lrh_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6501 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_index);
6507 lustre_dissect_element_llog_rec_hdr_lrh_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6509 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_type);
6515 lustre_dissect_element_llog_rec_hdr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6517 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_padding);
6523 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_)
6525 proto_item *item = NULL;
6526 proto_tree *tree = NULL;
6534 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6535 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_hdr);
6538 offset=lustre_dissect_element_llog_rec_hdr_lrh_len(tvb, offset, pinfo, tree);
6540 offset=lustre_dissect_element_llog_rec_hdr_lrh_index(tvb, offset, pinfo, tree);
6542 offset=lustre_dissect_element_llog_rec_hdr_lrh_type(tvb, offset, pinfo, tree);
6544 offset=lustre_dissect_element_llog_rec_hdr_padding(tvb, offset, pinfo, tree);
6547 proto_item_set_len(item, offset-old_offset);
6552 /* IDL: struct llog_rec_tail { */
6553 /* IDL: uint32 lrt_len; */
6554 /* IDL: uint32 lrt_index; */
6558 lustre_dissect_element_llog_rec_tail_lrt_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6560 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_len);
6566 lustre_dissect_element_llog_rec_tail_lrt_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6568 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_index);
6574 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_)
6576 proto_item *item = NULL;
6577 proto_tree *tree = NULL;
6585 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6586 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_tail);
6589 offset=lustre_dissect_element_llog_rec_tail_lrt_len(tvb, offset, pinfo, tree);
6591 offset=lustre_dissect_element_llog_rec_tail_lrt_index(tvb, offset, pinfo, tree);
6594 proto_item_set_len(item, offset-old_offset);
6599 /* IDL: struct llog_logid_rec { */
6600 /* IDL: struct llog_rec_hdr { */
6601 /* IDL: } lid_hdr; */
6602 /* IDL: struct llog_logid { */
6603 /* IDL: } lid_id; */
6604 /* IDL: uint32 padding1; */
6605 /* IDL: uint32 padding2; */
6606 /* IDL: uint32 padding3; */
6607 /* IDL: uint32 padding4; */
6608 /* IDL: uint32 padding5; */
6609 /* IDL: struct llog_rec_tail { */
6610 /* IDL: } lid_tail; */
6614 lustre_dissect_element_llog_logid_rec_lid_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6616 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_hdr);
6621 lustre_dissect_element_llog_logid_rec_lid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6623 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_id);
6628 lustre_dissect_element_llog_logid_rec_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6630 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding1);
6636 lustre_dissect_element_llog_logid_rec_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6638 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding2);
6644 lustre_dissect_element_llog_logid_rec_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6646 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding3);
6652 lustre_dissect_element_llog_logid_rec_padding4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6654 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding4);
6660 lustre_dissect_element_llog_logid_rec_padding5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6662 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding5);
6668 lustre_dissect_element_llog_logid_rec_lid_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6670 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_tail);
6675 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_)
6677 proto_item *item = NULL;
6678 proto_tree *tree = NULL;
6686 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6687 tree = proto_item_add_subtree(item, ett_lustre_llog_logid_rec);
6690 offset=lustre_dissect_element_llog_logid_rec_lid_hdr(tvb, offset, pinfo, tree);
6692 offset=lustre_dissect_element_llog_logid_rec_lid_id(tvb, offset, pinfo, tree);
6694 offset=lustre_dissect_element_llog_logid_rec_padding1(tvb, offset, pinfo, tree);
6696 offset=lustre_dissect_element_llog_logid_rec_padding2(tvb, offset, pinfo, tree);
6698 offset=lustre_dissect_element_llog_logid_rec_padding3(tvb, offset, pinfo, tree);
6700 offset=lustre_dissect_element_llog_logid_rec_padding4(tvb, offset, pinfo, tree);
6702 offset=lustre_dissect_element_llog_logid_rec_padding5(tvb, offset, pinfo, tree);
6704 offset=lustre_dissect_element_llog_logid_rec_lid_tail(tvb, offset, pinfo, tree);
6707 proto_item_set_len(item, offset-old_offset);
6715 /* IDL: struct llog_unlink_rec { */
6716 /* IDL: struct llog_rec_hdr { */
6717 /* IDL: } lur_hdr; */
6718 /* IDL: uint64 lur_oid; */
6719 /* IDL: uint32 lur_ogen; */
6720 /* IDL: uint32 padding; */
6721 /* IDL: struct llog_rec_tail { */
6722 /* IDL: } lur_tail; */
6726 lustre_dissect_element_llog_unlink_rec_lur_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6728 //offset=lustre_dissect_struct_HASH(0x85d8730)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_hdr);
6733 lustre_dissect_element_llog_unlink_rec_lur_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6735 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_oid);
6741 lustre_dissect_element_llog_unlink_rec_lur_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6743 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_ogen);
6749 lustre_dissect_element_llog_unlink_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6751 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_padding);
6757 lustre_dissect_element_llog_unlink_rec_lur_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6759 //offset=lustre_dissect_struct_HASH(0x85d9664)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_tail);
6764 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_)
6766 proto_item *item = NULL;
6767 proto_tree *tree = NULL;
6775 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6776 tree = proto_item_add_subtree(item, ett_lustre_llog_unlink_rec);
6779 offset=lustre_dissect_element_llog_unlink_rec_lur_hdr(tvb, offset, pinfo, tree);
6781 offset=lustre_dissect_element_llog_unlink_rec_lur_oid(tvb, offset, pinfo, tree);
6783 offset=lustre_dissect_element_llog_unlink_rec_lur_ogen(tvb, offset, pinfo, tree);
6785 offset=lustre_dissect_element_llog_unlink_rec_padding(tvb, offset, pinfo, tree);
6787 offset=lustre_dissect_element_llog_unlink_rec_lur_tail(tvb, offset, pinfo, tree);
6790 proto_item_set_len(item, offset-old_offset);
6797 /* IDL: struct llog_setattr_rec { */
6798 /* IDL: struct llog_rec_hdr { */
6799 /* IDL: } lsr_hdr; */
6800 /* IDL: uint64 lsr_oid; */
6801 /* IDL: uint32 lsr_ogen; */
6802 /* IDL: uint32 lsr_uid; */
6803 /* IDL: uint32 lsr_gid; */
6804 /* IDL: uint32 padding; */
6805 /* IDL: struct llog_rec_tail { */
6806 /* IDL: } lsr_tail; */
6810 lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6812 //offset=lustre_dissect_struct_HASH(0x85da2f0)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_hdr);
6817 lustre_dissect_element_llog_setattr_rec_lsr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6819 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_oid);
6825 lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6827 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_ogen);
6833 lustre_dissect_element_llog_setattr_rec_lsr_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6835 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_uid);
6841 lustre_dissect_element_llog_setattr_rec_lsr_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6843 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_gid);
6849 lustre_dissect_element_llog_setattr_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6851 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_padding);
6857 lustre_dissect_element_llog_setattr_rec_lsr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6859 //offset=lustre_dissect_struct_HASH(0x85db3d4)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_tail);
6864 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_)
6866 proto_item *item = NULL;
6867 proto_tree *tree = NULL;
6875 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6876 tree = proto_item_add_subtree(item, ett_lustre_llog_setattr_rec);
6879 offset=lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvb, offset, pinfo, tree);
6881 offset=lustre_dissect_element_llog_setattr_rec_lsr_oid(tvb, offset, pinfo, tree);
6883 offset=lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvb, offset, pinfo, tree);
6885 offset=lustre_dissect_element_llog_setattr_rec_lsr_uid(tvb, offset, pinfo, tree);
6887 offset=lustre_dissect_element_llog_setattr_rec_lsr_gid(tvb, offset, pinfo, tree);
6889 offset=lustre_dissect_element_llog_setattr_rec_padding(tvb, offset, pinfo, tree);
6891 offset=lustre_dissect_element_llog_setattr_rec_lsr_tail(tvb, offset, pinfo, tree);
6894 proto_item_set_len(item, offset-old_offset);
6902 /* IDL: struct llog_size_change_rec { */
6903 /* IDL: struct llog_rec_hdr { */
6904 /* IDL: } lsc_hdr; */
6905 /* IDL: struct ll_fid { */
6906 /* IDL: } lsc_fid; */
6907 /* IDL: uint32 lsc_io_epoch; */
6908 /* IDL: uint32 padding; */
6909 /* IDL: struct llog_rec_tail { */
6910 /* IDL: } lsc_tail; */
6914 lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6916 //offset=lustre_dissect_struct_HASH(0x85dc458)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_hdr);
6921 lustre_dissect_element_llog_size_change_rec_lsc_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6923 //offset=lustre_dissect_struct_HASH(0x85dc5a8)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_fid);
6928 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_)
6930 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_lsc_io_epoch);
6936 lustre_dissect_element_llog_size_change_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6938 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_padding);
6944 lustre_dissect_element_llog_size_change_rec_lsc_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6946 //offset=lustre_dissect_struct_HASH(0x85dd384)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_tail);
6947 // TODO: to be corrected !
6952 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_)
6954 proto_item *item = NULL;
6955 proto_tree *tree = NULL;
6963 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6964 tree = proto_item_add_subtree(item, ett_lustre_llog_size_change_rec);
6967 offset=lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvb, offset, pinfo, tree);
6969 offset=lustre_dissect_element_llog_size_change_rec_lsc_fid(tvb, offset, pinfo, tree);
6971 offset=lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvb, offset, pinfo, tree);
6973 offset=lustre_dissect_element_llog_size_change_rec_padding(tvb, offset, pinfo, tree);
6975 offset=lustre_dissect_element_llog_size_change_rec_lsc_tail(tvb, offset, pinfo, tree);
6978 proto_item_set_len(item, offset-old_offset);
6986 /* IDL: struct llog_gen { */
6987 /* IDL: uint64 mnt_cnt; */
6988 /* IDL: uint64 conn_cnt; */
6992 lustre_dissect_element_llog_gen_mnt_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6994 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_mnt_cnt);
7000 lustre_dissect_element_llog_gen_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7002 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_conn_cnt);
7008 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_)
7010 proto_item *item = NULL;
7011 proto_tree *tree = NULL;
7019 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7020 tree = proto_item_add_subtree(item, ett_lustre_llog_gen);
7023 offset=lustre_dissect_element_llog_gen_mnt_cnt(tvb, offset, pinfo, tree);
7025 offset=lustre_dissect_element_llog_gen_conn_cnt(tvb, offset, pinfo, tree);
7028 proto_item_set_len(item, offset-old_offset);
7033 /* IDL: struct llog_gen_rec { */
7034 /* IDL: struct llog_rec_hdr { */
7035 /* IDL: } lgr_hdr; */
7036 /* IDL: struct llog_gen { */
7037 /* IDL: } lgr_gen; */
7038 /* IDL: struct llog_rec_tail { */
7039 /* IDL: } lgr_tail; */
7043 lustre_dissect_element_llog_gen_rec_lgr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7045 //offset=lustre_dissect_struct_HASH(0x85de2e4)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_hdr);
7046 // TODO: to be corrected !
7051 lustre_dissect_element_llog_gen_rec_lgr_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7053 //offset=lustre_dissect_struct_HASH(0x85de434)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_gen);
7054 // TODO: to be corrected !
7059 lustre_dissect_element_llog_gen_rec_lgr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7061 //offset=lustre_dissect_struct_HASH(0x85df3f8)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_tail);
7062 // TODO: to be corrected !
7067 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_)
7069 proto_item *item = NULL;
7070 proto_tree *tree = NULL;
7078 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7079 tree = proto_item_add_subtree(item, ett_lustre_llog_gen_rec);
7082 offset=lustre_dissect_element_llog_gen_rec_lgr_hdr(tvb, offset, pinfo, tree);
7084 offset=lustre_dissect_element_llog_gen_rec_lgr_gen(tvb, offset, pinfo, tree);
7086 offset=lustre_dissect_element_llog_gen_rec_lgr_tail(tvb, offset, pinfo, tree);
7089 proto_item_set_len(item, offset-old_offset);
7097 /* IDL: struct llog_log_hdr { */
7098 /* IDL: struct llog_rec_hdr { */
7099 /* IDL: } llh_hdr; */
7100 /* IDL: uint64 llh_timestamp; */
7101 /* IDL: uint32 llh_count; */
7102 /* IDL: uint32 llh_bitmap_offset; */
7103 /* IDL: uint32 llh_size; */
7104 /* IDL: uint32 llh_flags; */
7105 /* IDL: uint32 llh_cat_idx; */
7106 /* IDL: struct obd_uuid { */
7107 /* IDL: } llh_tgtuuid; */
7108 /* IDL: uint32 llh_reserved[1]; */
7109 /* IDL: uint32 llh_bitmap[2024]; */
7110 /* IDL: struct llog_rec_tail { */
7111 /* IDL: } llh_tail; */
7115 lustre_dissect_element_llog_log_hdr_llh_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7117 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_hdr);
7122 lustre_dissect_element_llog_log_hdr_llh_timestamp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7125 ns.secs = tvb_get_letohl(tvb,offset);
7127 proto_tree_add_time(tree, hf_lustre_llog_log_hdr_llh_timestamp, tvb, offset, 8, &ns );
7133 lustre_dissect_element_llog_log_hdr_llh_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7135 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_count);
7141 lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7143 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap_offset);
7149 lustre_dissect_element_llog_log_hdr_llh_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7151 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_size);
7159 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_)
7161 proto_item *item = NULL;
7162 proto_tree *tree = NULL;
7165 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
7166 tree = proto_item_add_subtree(item, ett_lustre_llog_log_llh_flags);
7168 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_zap_when_empty);
7169 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_cat);
7170 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_play);
7177 lustre_dissect_element_llog_log_hdr_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7179 // offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7180 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7185 lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7187 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_cat_idx);
7193 lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7195 offset=lustre_dissect_struct_obd_uuid(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tgtuuid);
7200 lustre_dissect_element_llog_log_hdr_llh_reserved_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7202 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_reserved);
7208 lustre_dissect_element_llog_log_hdr_llh_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7211 for (i = 0; i < 1; i++)
7212 offset=lustre_dissect_element_llog_log_hdr_llh_reserved_(tvb, offset, pinfo, tree);
7218 lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7220 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap);
7227 lustre_dissect_element_llog_log_hdr_llh_bitmap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7230 for (i = 0; i < 2024; i++)
7231 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvb, offset, pinfo, tree);
7239 lustre_dissect_element_llog_log_hdr_llh_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7241 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tail);
7246 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_)
7248 proto_item *item = NULL;
7249 proto_tree *tree = NULL;
7257 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7258 tree = proto_item_add_subtree(item, ett_lustre_llog_log_hdr);
7261 offset=lustre_dissect_element_llog_log_hdr_llh_hdr(tvb, offset, pinfo, tree);
7263 offset=lustre_dissect_element_llog_log_hdr_llh_timestamp(tvb, offset, pinfo, tree);
7265 offset=lustre_dissect_element_llog_log_hdr_llh_count(tvb, offset, pinfo, tree);
7267 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvb, offset, pinfo, tree);
7269 offset=lustre_dissect_element_llog_log_hdr_llh_size(tvb, offset, pinfo, tree);
7271 offset=lustre_dissect_element_llog_log_hdr_llh_flags(tvb, offset, pinfo, tree);
7273 offset=lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvb, offset, pinfo, tree);
7275 offset=lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvb, offset, pinfo, tree);
7277 offset=lustre_dissect_element_llog_log_hdr_llh_reserved(tvb, offset, pinfo, tree);
7279 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap(tvb, offset, pinfo, tree);
7281 offset=lustre_dissect_element_llog_log_hdr_llh_tail(tvb, offset, pinfo, tree);
7284 proto_item_set_len(item, offset-old_offset);
7292 /* IDL: struct llog_cookie { */
7293 /* IDL: struct llog_logid { */
7294 /* IDL: } lgc_lgl; */
7295 /* IDL: uint32 lgc_subsys; */
7296 /* IDL: uint32 lgc_index; */
7297 /* IDL: uint32 lgc_padding; */
7301 lustre_dissect_element_llog_cookie_lgc_lgl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7303 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_cookie_lgc_lgl);
7308 lustre_dissect_element_llog_cookie_lgc_subsys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7310 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_subsys);
7316 lustre_dissect_element_llog_cookie_lgc_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7318 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_index);
7324 lustre_dissect_element_llog_cookie_lgc_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7326 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_padding);
7332 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_)
7334 proto_item *item = NULL;
7335 proto_tree *tree = NULL;
7343 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7344 tree = proto_item_add_subtree(item, ett_lustre_llog_cookie);
7347 offset=lustre_dissect_element_llog_cookie_lgc_lgl(tvb, offset, pinfo, tree);
7349 offset=lustre_dissect_element_llog_cookie_lgc_subsys(tvb, offset, pinfo, tree);
7351 offset=lustre_dissect_element_llog_cookie_lgc_index(tvb, offset, pinfo, tree);
7353 offset=lustre_dissect_element_llog_cookie_lgc_padding(tvb, offset, pinfo, tree);
7356 proto_item_set_len(item, offset-old_offset);
7363 /* IDL: struct llogd_body { */
7364 /* IDL: struct llog_logid { */
7365 /* IDL: } lgd_logid; */
7366 /* IDL: uint32 lgd_ctxt_idx; */
7367 /* IDL: uint32 lgd_llh_flags; */
7368 /* IDL: uint32 lgd_index; */
7369 /* IDL: uint32 lgd_saved_index; */
7370 /* IDL: uint32 lgd_len; */
7371 /* IDL: uint64 lgd_cur_offset; */
7375 lustre_dissect_element_llogd_body_lgd_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7377 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llogd_body_lgd_logid);
7382 lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7384 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_ctxt_idx);
7390 lustre_dissect_element_llogd_body_lgd_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7392 //offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7394 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7400 lustre_dissect_element_llogd_body_lgd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7402 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_index);
7408 lustre_dissect_element_llogd_body_lgd_saved_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7410 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_saved_index);
7416 lustre_dissect_element_llogd_body_lgd_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7418 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_len);
7424 lustre_dissect_element_llogd_body_lgd_cur_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7426 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_cur_offset);
7432 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_)
7434 proto_item *item = NULL;
7435 proto_tree *tree = NULL;
7443 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7444 tree = proto_item_add_subtree(item, ett_lustre_llogd_body);
7447 offset=lustre_dissect_element_llogd_body_lgd_logid(tvb, offset, pinfo, tree);
7449 offset=lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvb, offset, pinfo, tree);
7451 offset=lustre_dissect_element_llogd_body_lgd_llh_flags(tvb, offset, pinfo, tree);
7453 offset=lustre_dissect_element_llogd_body_lgd_index(tvb, offset, pinfo, tree);
7455 offset=lustre_dissect_element_llogd_body_lgd_saved_index(tvb, offset, pinfo, tree);
7457 offset=lustre_dissect_element_llogd_body_lgd_len(tvb, offset, pinfo, tree);
7459 offset=lustre_dissect_element_llogd_body_lgd_cur_offset(tvb, offset, pinfo, tree);
7462 proto_item_set_len(item, offset-old_offset);
7468 /* TODO : find when this Structure appear on the wire */
7469 /* IDL: struct llogd_conn_body { */
7470 /* IDL: struct llog_gen { */
7471 /* IDL: } lgdc_gen; */
7472 /* IDL: struct llog_logid { */
7473 /* IDL: } lgdc_logid; */
7474 /* IDL: uint32 lgdc_ctxt_idx; */
7478 lustre_dissect_element_llogd_conn_body_lgdc_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7480 //offset=lustre_dissect_struct_HASH(0x85e6038)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_gen);
7485 lustre_dissect_element_llogd_conn_body_lgdc_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7487 //offset=lustre_dissect_struct_HASH(0x85e6188)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_logid);
7492 lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(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_llogd_conn_body_lgdc_ctxt_idx);
7500 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_)
7502 proto_item *item = NULL;
7503 proto_tree *tree = NULL;
7511 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7512 tree = proto_item_add_subtree(item, ett_lustre_llogd_conn_body);
7515 offset=lustre_dissect_element_llogd_conn_body_lgdc_gen(tvb, offset, pinfo, tree);
7517 offset=lustre_dissect_element_llogd_conn_body_lgdc_logid(tvb, offset, pinfo, tree);
7519 offset=lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvb, offset, pinfo, tree);
7522 proto_item_set_len(item, offset-old_offset);
7527 /* IDL: struct obdo { */
7528 /* IDL: uint64 o_valid; */
7529 /* IDL: uint64 o_id; */
7530 /* IDL: uint64 o_seq; */
7531 /* IDL: uint64 o_parent_seq; */
7532 /* IDL: uint64 o_size; */
7533 /* IDL: uint64 o_mtime; */
7534 /* IDL: uint64 o_atime; */
7535 /* IDL: uint64 o_ctime; */
7536 /* IDL: uint64 o_blocks; */
7537 /* IDL: uint64 o_grant; */
7538 /* IDL: uint32 o_blksize; */
7539 /* IDL: uint32 o_mode; */
7540 /* IDL: uint32 o_uid; */
7541 /* IDL: uint32 o_gid; */
7542 /* IDL: uint32 o_flags; */
7543 /* IDL: uint32 o_nlink; */
7544 /* IDL: uint32 o_parent_oid; */
7545 /* IDL: uint32 o_misc; */
7546 /* IDL: uint64 o_ioepoch; */
7547 /* IDL: uint32 o_stripe_idx; */
7548 /* IDL: uint32 o_parent_ver; */
7549 /* IDL: struct lustre_handle { */
7550 /* IDL: } o_handle; */
7551 /* IDL: struct llog_cookie { */
7552 /* IDL: } o_lcookie; */
7553 /* IDL: uint32 o_uid_h; */
7554 /* IDL: uint32 o_gid_h; */
7555 /* IDL: uint64 o_padding_3; */
7556 /* IDL: uint64 o_padding_4; */
7557 /* IDL: uint64 o_padding_5; */
7558 /* IDL: uint64 o_padding_6; */
7562 lustre_dissect_element_obdo_o_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7564 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_valid);
7570 lustre_dissect_element_obdo_o_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7572 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_id);
7578 lustre_dissect_element_obdo_o_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7580 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_seq);
7586 lustre_dissect_element_obdo_o_parent_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7588 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_seq);
7594 lustre_dissect_element_obdo_o_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7596 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_size);
7602 lustre_dissect_element_obdo_o_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7606 ns.secs = tvb_get_letohl(tvb,offset);
7608 proto_tree_add_time(tree, hf_lustre_obdo_o_mtime, tvb, offset, 8, &ns );
7614 lustre_dissect_element_obdo_o_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7618 ns.secs = tvb_get_letohl(tvb,offset);
7620 proto_tree_add_time(tree, hf_lustre_obdo_o_atime, tvb, offset, 8, &ns );
7627 lustre_dissect_element_obdo_o_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7631 ns.secs = tvb_get_letohl(tvb,offset);
7633 proto_tree_add_time(tree, hf_lustre_obdo_o_ctime, tvb, offset, 8, &ns );
7639 lustre_dissect_element_obdo_o_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7641 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blocks);
7647 lustre_dissect_element_obdo_o_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7649 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_grant);
7655 lustre_dissect_element_obdo_o_blksize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7657 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blksize);
7663 lustre_dissect_element_obdo_o_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7665 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_mode);
7671 lustre_dissect_element_obdo_o_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7673 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid);
7679 lustre_dissect_element_obdo_o_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7681 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid);
7687 lustre_dissect_element_obdo_o_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7689 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_flags);
7690 /* TODO rajouter ça , faire une fonction générique qui s'occupe de tous les flags d'un tableau. */
7692 /*0x00000001 : "OBD_FL_INLINEDATA",*/
7693 /*0x00000002 : "OBD_FL_OBDMDEXISTS",*/
7694 /*0x00000004 : "OBD_FL_DELORPHAN",*/
7695 /*0x00000008 : "OBD_FL_NORPC",*/
7696 /*0x00000010 : "OBD_FL_IDONLY",*/
7697 /*0x00000020 : "OBD_FL_RECREATE_OBJS",*/
7698 /*0x00000040 : "OBD_FL_DEBUG_CHECK",*/
7699 /*0x00000100 : "OBD_FL_NO_USRQUOTA",*/
7700 /*0x00000200 : "OBD_FL_NO_GRPQUOTA",*/
7701 /*0x00000400 : "OBD_FL_CREATE_CROW",*/
7702 /*0x00000800 : "OBD_FL_SRVLOCK",*/
7708 lustre_dissect_element_obdo_o_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7710 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_nlink);
7716 lustre_dissect_element_obdo_o_parent_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7718 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_oid);
7724 lustre_dissect_element_obdo_o_misc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7726 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_misc);
7732 lustre_dissect_element_obdo_o_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7734 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_ioepoch);
7740 lustre_dissect_element_obdo_o_stripe_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7742 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_stripe_idx);
7748 lustre_dissect_element_obdo_o_parent_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7750 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_ver);
7756 lustre_dissect_element_obdo_o_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7758 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_handle);
7763 lustre_dissect_element_obdo_o_lcookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7765 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_lcookie);
7770 lustre_dissect_element_obdo_o_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7772 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid_h);
7778 lustre_dissect_element_obdo_o_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7780 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid_h);
7786 lustre_dissect_element_obdo_o_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7788 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_3);
7794 lustre_dissect_element_obdo_o_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7796 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_4);
7802 lustre_dissect_element_obdo_o_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7804 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_5);
7810 lustre_dissect_element_obdo_o_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7812 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_6);
7818 lustre_dissect_struct_obdo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7820 proto_item *item = NULL;
7821 proto_tree *tree = NULL;
7828 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7829 tree = proto_item_add_subtree(item, ett_lustre_obdo);
7832 offset=lustre_dissect_element_obdo_o_valid(tvb, offset, pinfo, tree);
7834 offset=lustre_dissect_element_obdo_o_id(tvb, offset, pinfo, tree);
7836 offset=lustre_dissect_element_obdo_o_seq(tvb, offset, pinfo, tree);
7838 offset=lustre_dissect_element_obdo_o_parent_seq(tvb, offset, pinfo, tree);
7840 offset=lustre_dissect_element_obdo_o_size(tvb, offset, pinfo, tree);
7842 offset=lustre_dissect_element_obdo_o_mtime(tvb, offset, pinfo, tree);
7844 offset=lustre_dissect_element_obdo_o_atime(tvb, offset, pinfo, tree);
7846 offset=lustre_dissect_element_obdo_o_ctime(tvb, offset, pinfo, tree);
7848 offset=lustre_dissect_element_obdo_o_blocks(tvb, offset, pinfo, tree);
7850 offset=lustre_dissect_element_obdo_o_grant(tvb, offset, pinfo, tree);
7852 offset=lustre_dissect_element_obdo_o_blksize(tvb, offset, pinfo, tree);
7854 offset=lustre_dissect_element_obdo_o_mode(tvb, offset, pinfo, tree);
7856 offset=lustre_dissect_element_obdo_o_uid(tvb, offset, pinfo, tree);
7858 offset=lustre_dissect_element_obdo_o_gid(tvb, offset, pinfo, tree);
7860 offset=lustre_dissect_element_obdo_o_flags(tvb, offset, pinfo, tree);
7862 offset=lustre_dissect_element_obdo_o_nlink(tvb, offset, pinfo, tree);
7864 offset=lustre_dissect_element_obdo_o_parent_oid(tvb, offset, pinfo, tree);
7866 offset=lustre_dissect_element_obdo_o_misc(tvb, offset, pinfo, tree);
7868 offset=lustre_dissect_element_obdo_o_ioepoch(tvb, offset, pinfo, tree);
7870 offset=lustre_dissect_element_obdo_o_stripe_idx(tvb, offset, pinfo, tree);
7872 offset=lustre_dissect_element_obdo_o_parent_ver(tvb, offset, pinfo, tree);
7874 offset=lustre_dissect_element_obdo_o_handle(tvb, offset, pinfo, tree);
7876 offset=lustre_dissect_element_obdo_o_lcookie(tvb, offset, pinfo, tree);
7878 offset=lustre_dissect_element_obdo_o_uid_h(tvb, offset, pinfo, tree);
7880 offset=lustre_dissect_element_obdo_o_gid_h(tvb, offset, pinfo, tree);
7882 offset=lustre_dissect_element_obdo_o_padding_3(tvb, offset, pinfo, tree);
7884 offset=lustre_dissect_element_obdo_o_padding_4(tvb, offset, pinfo, tree);
7886 offset=lustre_dissect_element_obdo_o_padding_5(tvb, offset, pinfo, tree);
7888 offset=lustre_dissect_element_obdo_o_padding_6(tvb, offset, pinfo, tree);
7891 proto_item_set_len(item, offset-old_offset);
7898 /* IDL: struct ost_body { */
7899 /* IDL: struct obdo { */
7904 lustre_dissect_element_ost_body_oa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7906 offset=lustre_dissect_struct_obdo(tvb,offset,pinfo,tree,hf_lustre_ost_body_oa);
7911 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_)
7913 proto_item *item = NULL;
7914 proto_tree *tree = NULL;
7920 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7921 tree = proto_item_add_subtree(item, ett_lustre_ost_body);
7924 offset=lustre_dissect_element_ost_body_oa(tvb, offset, pinfo, tree);
7926 proto_item_set_len(item, offset-old_offset);
7932 /* TODO : find when this Structure appear on the wire */
7933 /* IDL: struct qunit_data { */
7934 /* IDL: uint32 qd_id; */
7935 /* IDL: uint32 qd_flags; */
7936 /* IDL: uint64 qd_count; */
7937 /* IDL: uint64 qd_qunit; */
7938 /* IDL: uint64 padding; */
7942 lustre_dissect_element_qunit_data_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7944 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_id);
7950 lustre_dissect_element_qunit_data_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7952 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_flags);
7958 lustre_dissect_element_qunit_data_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7960 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_count);
7966 lustre_dissect_element_qunit_data_qd_qunit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7968 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_qunit);
7974 lustre_dissect_element_qunit_data_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7976 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_padding);
7982 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_)
7984 proto_item *item = NULL;
7985 proto_tree *tree = NULL;
7993 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7994 tree = proto_item_add_subtree(item, ett_lustre_qunit_data);
7997 offset=lustre_dissect_element_qunit_data_qd_id(tvb, offset, pinfo, tree);
7999 offset=lustre_dissect_element_qunit_data_qd_flags(tvb, offset, pinfo, tree);
8001 offset=lustre_dissect_element_qunit_data_qd_count(tvb, offset, pinfo, tree);
8003 offset=lustre_dissect_element_qunit_data_qd_qunit(tvb, offset, pinfo, tree);
8005 offset=lustre_dissect_element_qunit_data_padding(tvb, offset, pinfo, tree);
8008 proto_item_set_len(item, offset-old_offset);
8013 /* TODO : find when this Structure appear on the wire */
8014 /* IDL: struct qunit_data_old2 { */
8015 /* IDL: uint32 qd_id; */
8016 /* IDL: uint32 qd_flags; */
8017 /* IDL: uint64 qd_count; */
8021 lustre_dissect_element_qunit_data_old2_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8023 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_id);
8029 lustre_dissect_element_qunit_data_old2_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8031 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_flags);
8037 lustre_dissect_element_qunit_data_old2_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8039 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_count);
8045 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_)
8047 proto_item *item = NULL;
8048 proto_tree *tree = NULL;
8056 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8057 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old2);
8060 offset=lustre_dissect_element_qunit_data_old2_qd_id(tvb, offset, pinfo, tree);
8062 offset=lustre_dissect_element_qunit_data_old2_qd_flags(tvb, offset, pinfo, tree);
8064 offset=lustre_dissect_element_qunit_data_old2_qd_count(tvb, offset, pinfo, tree);
8067 proto_item_set_len(item, offset-old_offset);
8072 /* TODO : find when this Structure appear on the wire */
8073 /* IDL: struct qunit_data_old { */
8074 /* IDL: uint32 qd_id; */
8075 /* IDL: uint32 qd_type; */
8076 /* IDL: uint32 qd_count; */
8077 /* IDL: uint32 qd_isblk; */
8081 lustre_dissect_element_qunit_data_old_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8083 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_id);
8089 lustre_dissect_element_qunit_data_old_qd_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8091 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_type);
8097 lustre_dissect_element_qunit_data_old_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8099 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_count);
8105 lustre_dissect_element_qunit_data_old_qd_isblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8107 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_isblk);
8113 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_)
8115 proto_item *item = NULL;
8116 proto_tree *tree = NULL;
8124 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8125 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old);
8128 offset=lustre_dissect_element_qunit_data_old_qd_id(tvb, offset, pinfo, tree);
8130 offset=lustre_dissect_element_qunit_data_old_qd_type(tvb, offset, pinfo, tree);
8132 offset=lustre_dissect_element_qunit_data_old_qd_count(tvb, offset, pinfo, tree);
8134 offset=lustre_dissect_element_qunit_data_old_qd_isblk(tvb, offset, pinfo, tree);
8137 proto_item_set_len(item, offset-old_offset);
8143 lustre_dissect_struct_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_ )
8145 offset=dissect_uint32(tvb, offset, pinfo, parent_tree, hf_index);
8146 /* Pad out to 8 bytes */
8147 offset=add_extra_padding(tvb,offset,pinfo,parent_tree);
8153 lustre_dissect_struct_seq_range(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8155 proto_item *item = NULL;
8156 proto_tree *tree = NULL;
8162 item = proto_tree_add_item(parent_tree, hf_lustre_seq_range, tvb, offset, -1, TRUE);
8163 tree = proto_item_add_subtree(item, ett_lustre_seq_range);
8166 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_seq_range_start);
8167 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_seq_range_end);
8168 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_seq_range_index);
8169 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_seq_range_flags);
8172 proto_item_set_len(item, offset-old_offset);
8178 lustre_dissect_struct_fld_range(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8180 proto_item *item = NULL;
8181 proto_tree *tree = NULL;
8187 item = proto_tree_add_item(parent_tree, hf_lustre_fld_range, tvb, offset, -1, TRUE);
8188 tree = proto_item_add_subtree(item, ett_lustre_fld_range);
8191 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_fld_range_start);
8192 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_fld_range_end);
8193 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_fld_range_index);
8194 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_fld_range_flags);
8197 proto_item_set_len(item, offset-old_offset);
8203 lustre_dissect_struct_mdt_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
8205 proto_item *item = NULL;
8206 proto_tree *tree = NULL;
8212 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8213 tree = proto_item_add_subtree(item, ett_lustre_mdt_ioepoch);
8216 offset=lustre_dissect_struct_handle_cookie(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_handle);
8217 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_ioepoch);
8218 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_flags);
8219 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_padding);
8222 proto_item_set_len(item, offset-old_offset);
8226 /* IDL: struct lustre_capa {
8227 * IDL: struct lu_fid lc_fid;
8228 * IDL: __u64 lc_opc;
8229 * IDL: __u64 lc_uid;
8230 * IDL: __u64 lc_gid;
8231 * IDL: __u32 lc_flags;
8232 * IDL: __u32 lc_keyid;
8233 * IDL: __u32 lc_timeout;
8234 * IDL: __u32 lc_expiry;
8235 * IDL: __u8 lc_hmac[64];
8236 * IDL: } __attribute__((packed));
8239 /** lustre_capa::lc_opc */
8241 /* CAPA_OPC_BODY_WRITE = 1<<0, **< write object data */
8242 /* CAPA_OPC_BODY_READ = 1<<1, **< read object data */
8243 /* CAPA_OPC_INDEX_LOOKUP = 1<<2, **< lookup object fid */
8244 /* CAPA_OPC_INDEX_INSERT = 1<<3, **< insert object fid */
8245 /* CAPA_OPC_INDEX_DELETE = 1<<4, **< delete object fid */
8246 /* CAPA_OPC_OSS_WRITE = 1<<5, **< write oss object data */
8247 /* CAPA_OPC_OSS_READ = 1<<6, **< read oss object data */
8248 /* CAPA_OPC_OSS_TRUNC = 1<<7, **< truncate oss object */
8249 /* CAPA_OPC_OSS_DESTROY = 1<<8, **< destroy oss object */
8250 /* CAPA_OPC_META_WRITE = 1<<9, **< write object meta data */
8251 /* CAPA_OPC_META_READ = 1<<10, **< read object meta data */
8255 lustre_dissect_element_capa_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8257 /* TODO - pick apart bits */
8258 offset = dissect_uint64(tvb, offset, pinfo, parent_tree, hf_lustre_capa_opc);
8263 lustre_dissect_element_capa_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8265 /* TODO - pick apart flags */
8266 offset=dissect_uint32(tvb,offset,pinfo,parent_tree,hf_lustre_capa_flags);
8271 lustre_dissect_struct_capa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
8272 proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
8274 proto_item *item = NULL;
8275 proto_tree *tree = NULL;
8281 data_len = LUSTRE_BUFFER_LEN(buf_num);
8286 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8287 tree = proto_item_add_subtree(item, ett_lustre_capa);
8290 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_capa_fid);
8292 offset=lustre_dissect_element_capa_opc(tvb,offset,pinfo,tree);
8294 offset=dissect_uint64(tvb,offset,pinfo,tree,hf_lustre_capa_uid);
8296 offset=dissect_uint64(tvb,offset,pinfo,tree,hf_lustre_capa_gid);
8298 offset=lustre_dissect_element_capa_flags(tvb,offset,pinfo,tree);
8300 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_keyid);
8302 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_timeout);
8304 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_expiry);
8306 offset=lustre_dissect_struct_hmac(tvb,offset,pinfo,tree, hf_lustre_capa_hmac, 64);
8309 proto_item_set_len(item, offset-old_offset);
8315 lustre_dissect_struct_acl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
8317 proto_item *item = NULL;
8318 proto_tree *tree = NULL;
8324 data_len = LUSTRE_BUFFER_LEN(buf_num);
8329 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8330 tree = proto_item_add_subtree(item, ett_lustre_acl);
8333 proto_tree_add_item(tree, hf_index, tvb, offset, data_len, TRUE);
8337 offset=add_extra_padding(tvb,offset,pinfo,tree);
8340 proto_item_set_len(item, offset-old_offset);
8346 /* ------------------------------------------------------------------------- */
8348 * the length of the string is the current buflen
8349 * @tvb the packet buff
8350 * @offset the current offset
8353 * @hf_index : the corresponding header field
8354 * @buf_num : the corresponding bufnumber of the string (we use it to
8355 * determine the string length), must respect : 0<bufnum<=bufmax_in_paquet
8358 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)
8360 proto_item *item = NULL;
8366 /* if (parent_tree) {
8367 * item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8368 * tree = proto_item_add_subtree(item, ett_lustre);
8372 string_len = LUSTRE_BUFFER_LEN(buf_num);
8376 /* g_print("buf_num:%d (max:%d) BUFLEN_OFF:%#x strlen:%d\n",
8377 buf_num, LUSTRE_BUFCOUNT,
8378 LUSTRE_BUFLEN_OFF, string_len);*/
8380 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
8382 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " filename : %s",
8383 (const gchar *) tvb_get_string(tvb,offset,string_len) );
8386 proto_item_set_len(item, offset-old_offset);
8387 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* after a string we must be aligned to 8 bytes. */
8392 /* ------------------------------------------------------------------------- */
8395 /* Process REINT opcode requests */
8396 static int reint_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
8400 opcode = tvb_get_letohl(tvb,offset);
8404 /* 2.x+ [rec_setattr][capa1][mdt_epoch][eadata][cookie_data][ldlm_request] */
8405 /* old? [rec_setattr][ldlm_request] */
8406 offset=lustre_dissect_struct_mdt_rec_setattr(tvb, offset, pinfo, tree,
8407 hf_lustre_mdt_rec_setattr);
8408 if (LUSTRE_BUFCOUNT > 2) {
8409 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8410 hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8411 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+2) > 0)
8412 offset=lustre_dissect_struct_mdt_ioepoch(tvb, offset, pinfo, tree,
8413 hf_lustre_mdt_ioepoch);
8414 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8415 hf_lustre_mds_xattr_eadata,
8416 LUSTRE_REQ_REC_OFF+3);
8417 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8418 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8420 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8421 hf_lustre_ldlm_request);
8424 /* [rec_create][filename][tgt.. Ã 0 pour l'instant][ldlm_request] */
8425 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8426 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8427 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2);
8428 /* REINT_CREATE_SLAVE / SYM / RMT_ACL */
8429 if (LUSTRE_BUFCOUNT > 4) {
8430 /* for CREATE_SYM this is actually name of target - encoded in mdt_rec_create.cr_mode */
8431 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+3);
8432 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8433 hf_lustre_ldlm_request);
8437 /*[mdt_rec_link][filename][ldlm_req] */
8438 offset=lustre_dissect_struct_mdt_rec_link(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link);
8439 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8440 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8441 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+3);
8442 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8443 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8446 /* reint_unlink_client: [mdt_rec_unlink][capa1][filename][ldlm_req] */
8447 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink);
8448 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8449 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+2) == 112) {
8450 /* TODO : ugly .. but for now we have to do this */
8451 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8454 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2);
8455 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8458 case REINT_RENAME: /*mds_rename_unpack : [mdt_rec_rename][filename source][filename target_name][ldlm_request] */
8459 offset=lustre_dissect_struct_mdt_rec_rename(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename);
8460 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8461 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8462 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+3);
8463 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_new_name, LUSTRE_REQ_REC_OFF+4);
8464 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+5) > 0)
8465 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8467 case REINT_OPEN: /* [rec_create][filename][eadata] */
8468 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8469 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
8470 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2);
8472 case REINT_SETXATTR:
8473 /* 2.x+ [rec_setxattr][capa1][name][eadata] */
8474 /* old? [rec_setxattr][ldlm_request] */
8475 offset=lustre_dissect_struct_mdt_rec_setxattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr);
8476 if (LUSTRE_BUFCOUNT > 2) {
8477 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8478 hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8479 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+2);
8480 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
8481 LUSTRE_REQ_REC_OFF+3);
8482 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8483 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8484 } else if (LUSTRE_BUFCOUNT == 2)
8485 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8486 hf_lustre_ldlm_request);
8497 /* dissect a connect message */
8499 lustre_dissect_generic_connect(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8501 /*TODO : add a cuuid and target uid */
8502 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8503 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8504 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
8505 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8510 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)
8515 case OST_REPLY: /* obsolete so nothing */
8518 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8519 if (pb_type == PTL_RPC_MSG_REQUEST)
8520 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8523 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8524 if (pb_type == PTL_RPC_MSG_REQUEST)
8525 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8527 case OST_READ: /* [OST_BODY][obd_ioobj][niobuf_remote] for request, [OST_BODY] for reply */
8528 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8529 if(pb_type==PTL_RPC_MSG_REQUEST){
8530 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8531 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_niobuf_remote);
8535 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree,
8536 hf_lustre_ost_body);
8537 if(pb_type==PTL_RPC_MSG_REQUEST) {
8538 for (i = 0; i < (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+1))/24; i++)
8539 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8540 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_obd_ioobj);
8542 if(pb_type==PTL_RPC_MSG_REPLY) { /* niocount *[uint32], but niocount is in request message, so
8543 we use the bufcount */
8544 for (i = 0; i < LUSTRE_BUFCOUNT-2; i++) /* -2 because we have already dissect 2 buffers : ptl + ost */
8545 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_nio);
8546 offset=add_extra_padding(tvb, offset, pinfo, tree);
8550 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8551 if (pb_type == PTL_RPC_MSG_REQUEST)
8552 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8555 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8556 if(pb_type==PTL_RPC_MSG_REQUEST) {/* [ost_body][ldlm_req][capa] */
8557 if ( LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF +1) != 0)
8558 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request);
8559 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+2);
8563 if(pb_type==PTL_RPC_MSG_REQUEST) /* [key] */
8564 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF);
8565 if (pb_type==PTL_RPC_MSG_REPLY)
8566 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF); /* val */
8569 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8570 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8571 if (pb_type==PTL_RPC_MSG_REPLY)
8572 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8574 case OST_DISCONNECT: /* [nothing] */
8576 case OST_PUNCH: /* [ost_body] */
8577 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8578 if (pb_type == PTL_RPC_MSG_REQUEST)
8579 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8581 case OST_OPEN: /* [nothing] in the code maybee obsolete */
8583 case OST_CLOSE: /* [nothing] in the code maybee obsolete */
8585 case OST_STATFS: /* [obd_statfs] */
8586 if (pb_type==PTL_RPC_MSG_REPLY)
8587 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8590 /*[ost_body] in both case */
8591 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8592 if (pb_type == PTL_RPC_MSG_REQUEST)
8593 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8596 if(pb_type==PTL_RPC_MSG_REQUEST)
8598 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF); /* key */
8599 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8601 /* if Key = "evict_by_nid" --> need to be process.. TODO */
8603 case OST_QUOTACHECK:
8604 if(pb_type==PTL_RPC_MSG_REQUEST)
8605 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8606 /* nothing in reply */
8609 /*[obd_quotactl in both case]*/
8610 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8611 case OST_QUOTA_ADJUST_QUNIT:
8612 /* [quota_adjust_qunit] in both case ? */
8613 offset=lustre_dissect_struct_quota_adjust_qunit(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit) ;
8619 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)
8622 case MDS_DISCONNECT:
8626 /*request: [mds body]*/
8627 /*reply: [mds body][capa] */
8628 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8629 if (pb_type == PTL_RPC_MSG_REPLY)
8630 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+1);
8633 if(pb_type==PTL_RPC_MSG_REQUEST)
8635 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8636 /*if(reply) : [nothing]*/
8639 /*request: [mds body][capa][xattr name]*/
8640 /*reply: [mds body][eadata] - ommited on error */
8641 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8642 if(pb_type==PTL_RPC_MSG_REQUEST) {
8643 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+1);
8644 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+2);
8646 if (pb_type == PTL_RPC_MSG_REPLY)
8647 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+1);
8650 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body);
8651 if (pb_type == PTL_RPC_MSG_REPLY) { /* [mdt_md][acl][capa1][capa2] */
8652 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
8653 hf_lustre_mds_md_data,
8654 LUSTRE_REPLY_REC_OFF+1);
8655 offset=lustre_dissect_struct_acl(tvb, offset, pinfo, tree,
8656 hf_lustre_acl, LUSTRE_REPLY_REC_OFF+3);
8657 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8659 LUSTRE_REPLY_REC_OFF+4);
8660 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8662 LUSTRE_REPLY_REC_OFF+5);
8665 case MDS_GETATTR_NAME:
8666 if(pb_type==PTL_RPC_MSG_REQUEST)
8668 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8669 /*[nothing in reply]*/
8671 case MDS_DONE_WRITING:
8673 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8675 case MDS_PIN: /* repbody.. */
8677 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8681 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8685 if(pb_type==PTL_RPC_MSG_REQUEST)
8686 { /* [mdt_ioepoch][rec_reint][capa1] */
8687 offset=lustre_dissect_struct_mdt_ioepoch(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch);
8689 if(LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+1) > 0)
8690 offset=lustre_dissect_struct_mdt_rec_setattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr);
8692 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8694 if(pb_type==PTL_RPC_MSG_REPLY)
8695 { /* [mdt_body][md][cookie][capa1][capa2] */
8696 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8697 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_md_data, LUSTRE_REPLY_REC_OFF+1);
8698 if(LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF+2) > 0)
8699 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8700 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+3);
8701 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+4);
8706 if(pb_type==PTL_RPC_MSG_REPLY)
8708 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8709 /*in request : [nothing]*/
8713 /* [mdt_body] but with some different interpration, need to modify the hf : TODO */
8714 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8718 /* the structure depend on the intent_opcode */
8719 if(pb_type==PTL_RPC_MSG_REQUEST)
8720 offset=reint_opcode_process(tvb, offset, pinfo, tree);
8722 if(pb_type==PTL_RPC_MSG_REPLY) {
8723 /* [mdt_body][mdt_md][??][capa1][capa2] */
8724 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8726 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1, LUSTRE_REPLY_REC_OFF+1);
8728 if(LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF+2) > 0)
8729 /* open : ...[ACL]...
8730 * unlink, rename : ...[log_cookies]... */
8731 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8732 hf_lustre_mds_xattr_eadata,
8733 LUSTRE_REPLY_REC_OFF+2);
8735 lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+3);
8736 lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+4);
8740 if(pb_type==PTL_RPC_MSG_REQUEST){
8742 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
8743 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8744 //offset=add_extra_padding(tvb,offset,pinfo,tree);
8746 /*nothing en reply*/
8748 case MDS_QUOTACHECK:
8749 /* [obd_quotactl] */
8750 if(pb_type==PTL_RPC_MSG_REQUEST)
8751 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8754 /* [obd_quotactl] in both case*/
8755 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8758 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8759 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8760 if (pb_type==PTL_RPC_MSG_REPLY || pb_type == PTL_RPC_MSG_ERR) /*[obd_connect_data]*/
8761 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8773 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)
8777 /* [ldlm_request] if we have one more buffer it's
8778 * [intent_opcode] and the opcode give us the corresponding
8779 * intent structure [intent] */
8780 if (pb_type==PTL_RPC_MSG_REQUEST) {
8781 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8782 hf_lustre_ldlm_request);
8783 if (LUSTRE_BUFCOUNT>=3)
8784 offset=lustre_dissect_struct_ldlm_intent(tvb, offset, pinfo, tree,
8785 hf_lustre_ldlm_intent);
8787 if (pb_type==PTL_RPC_MSG_REPLY) {
8790 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree,
8791 hf_lustre_ldlm_reply,
8793 /* check if we're done processing */
8794 if (LUSTRE_BUFCOUNT <= 2)
8797 if (LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF) == 40)
8798 /* TODO :this code need to be check and test, the
8799 * lustre corresponding code isn't explicit, so not
8800 * sure to have this buffer, but in example it works
8803 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree,
8806 else if (ldlm_type == LDLM_EXTENT) {
8807 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1,
8808 LUSTRE_DLM_REPLY_REC_OFF);
8812 if (LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8813 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree,
8814 hf_lustre_mdt_body);
8815 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1,
8816 LUSTRE_DLM_INTENT_REC_OFF);
8818 /* ldlm_intent_server : ACL */
8819 offset=lustre_dissect_struct_acl(tvb, offset, pinfo, tree,
8820 hf_lustre_acl, LUSTRE_DLM_INTENT_REC_OFF+1);
8822 /* ldlm_intent_open_server : [capa1][capa2] */
8823 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8824 hf_lustre_capa, LUSTRE_DLM_INTENT_REC_OFF+2);
8825 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8826 hf_lustre_capa, LUSTRE_DLM_INTENT_REC_OFF+3);
8831 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8832 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8833 if(pb_type==PTL_RPC_MSG_REPLY) /*[ldlm_reply]*/
8834 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply, NULL) ;
8838 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8839 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8842 case LDLM_BL_CALLBACK:
8843 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8844 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8847 case LDLM_CP_CALLBACK:
8848 if(pb_type==PTL_RPC_MSG_REQUEST){
8849 /*[ldlm_request] if the third buffer exist we have [lvb data] so it's [ost_lvb] : TODO :
8851 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8852 if(LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8853 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8855 /*reply : [nothing] */
8858 case LDLM_GL_CALLBACK:
8859 if(pb_type==PTL_RPC_MSG_REQUEST) { /*[ldlm_request] [lvb (for gl_desc)]*/
8860 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8861 if(LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8862 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8864 if(pb_type==PTL_RPC_MSG_REPLY) /* [ost_lvb] */
8865 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8875 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)
8879 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8880 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8881 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
8882 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8884 case MGS_DISCONNECT :
8887 case MGS_EXCEPTION : /* node died, etc. */
8890 case MGS_TARGET_REG:
8891 /*[mgs_target_info], mgs_handler.c mgs_handle_target_reg() called whenever a target startup*/
8892 offset=lustre_dissect_struct_mgs_target_info(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info);
8894 case MGS_TARGET_DEL:
8898 /*[mgs_send_param], mgs_set_info_rpc()*/
8899 offset=lustre_dissect_struct_mgs_send_param(tvb,offset,pinfo,tree,hf_lustre_mgs_send_param);
8901 case MGS_CONFIG_READ:
8902 if (pb_type==PTL_RPC_MSG_REQUEST) /* [config_body] */
8903 offset=lustre_dissect_struct_mgs_config_body(tvb,offset,pinfo,tree,hf_lustre_mgs_config_body);
8904 if (pb_type==PTL_RPC_MSG_REPLY) /* [config_res] */
8905 offset=lustre_dissect_struct_mgs_config_res(tvb,offset,pinfo,tree,hf_lustre_mgs_config_res);
8914 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)
8920 case OBD_LOG_CANCEL:
8923 case OBD_QC_CALLBACK:
8924 if(pb_type==PTL_RPC_MSG_REQUEST)
8925 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8926 /*if (request) : [nothing]*/
8935 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)
8938 case LLOG_ORIGIN_HANDLE_CREATE : /* in handler.c */
8939 /*[llogd_body] (reply and request)*/
8940 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8941 if(pb_type==PTL_RPC_MSG_REQUEST) /* [filename] */
8942 if (LUSTRE_BUFCOUNT>2)
8943 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_name,
8944 LUSTRE_REQ_REC_OFF+1);
8946 case LLOG_ORIGIN_HANDLE_NEXT_BLOCK :/* in handler.c */
8947 /* [llogd_body][eadata]
8948 * the size of second buf is LLOG_CHKUNK_SIZE, so it's maybee only bulk data */
8949 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8950 if(pb_type==PTL_RPC_MSG_REPLY)
8951 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8952 LUSTRE_REPLY_REC_OFF+1);
8954 case LLOG_ORIGIN_HANDLE_READ_HEADER:/* in handler.c */
8955 if(pb_type==PTL_RPC_MSG_REQUEST){
8956 /* [llogd_body][llog_log_hdr] */
8957 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8958 if(LUSTRE_BUFCOUNT>2)
8959 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8960 hf_lustre_llogd_log_hdr);
8962 if(pb_type==PTL_RPC_MSG_REPLY) /* [llog_log_hdr] */
8963 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8964 hf_lustre_llogd_log_hdr);
8966 case LLOG_ORIGIN_HANDLE_WRITE_REC : /* I think this is obsolete */
8969 case LLOG_ORIGIN_HANDLE_CLOSE :/* handler.c */
8972 case LLOG_ORIGIN_CONNECT : /* ost_handler.c */
8974 case LLOG_CATINFO : /*in handler.c */
8975 if(pb_type==PTL_RPC_MSG_REQUEST){
8976 /* [keyword][if keyword=config [char*] else [nothing]] */
8977 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_keyword,
8978 LUSTRE_REQ_REC_OFF);
8979 if (strcmp((const char *)tvb_get_string(tvb, LUSTRE_REQ_REC_OFF,
8981 LUSTRE_BUFLEN_OFF + 4 *
8982 LUSTRE_REQ_REC_OFF)),
8984 /* if(keyword == "config") */
8985 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_client,
8986 LUSTRE_REQ_REC_OFF+1);
8988 if(pb_type==PTL_RPC_MSG_REPLY)
8989 /*[buf] sizeof = llog_chunk_size*/
8990 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8991 LUSTRE_REPLY_REC_OFF + 1 );
8992 /* TODO TODO : check if it's note a catid */
8994 case LLOG_ORIGIN_HANDLE_PREV_BLOCK : /* in handler.c */
8995 /* [llogd_body] in both case */
8996 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8997 if(pb_type==PTL_RPC_MSG_REPLY)
8998 /*[buf] size of llog_chunk_size*/
8999 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
9000 LUSTRE_REPLY_REC_OFF + 1 );
9002 case LLOG_ORIGIN_HANDLE_DESTROY : /* in handler.c */
9003 /*[llogd_body] in both case*/
9004 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
9014 lustre_seq_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
9015 proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
9019 if (pb_type == PTL_RPC_MSG_REQUEST)
9020 offset=lustre_dissect_struct_seq(tvb, offset, pinfo, tree, hf_lustre_seq_opc);
9021 offset=lustre_dissect_struct_seq_range(tvb, offset, pinfo, tree);
9025 g_print("error: SEQ Opcode: %d unknown\n", opc);
9026 if (check_col(pinfo->cinfo, COL_INFO))
9027 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9035 lustre_fld_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
9036 proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
9040 if (pb_type == PTL_RPC_MSG_REQUEST)
9041 offset=lustre_dissect_struct_seq(tvb, offset, pinfo, tree, hf_lustre_fld_opc);
9042 offset=lustre_dissect_struct_seq_range(tvb, offset, pinfo, tree);
9046 g_print("error: FLD Opcode: %d unknown\n", opc);
9047 if (check_col(pinfo->cinfo, COL_INFO))
9048 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9056 /* process lustre opcode :
9057 check if opcode is in range_opcode, and call the corresponding opcode process function */
9059 lustre_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
9061 /* No more buffers to process */
9062 if (LUSTRE_BUFCOUNT == 1)
9065 if (opc <= OST_LAST_OPC) /* OST opcodes */
9066 offset=lustre_ost_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9068 if ( (opc >= MDS_FIRST_OPC) && (opc < MDS_LAST_OPC )) /* MDS opcodes */
9069 offset=lustre_mds_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9071 if ( (opc >= LDLM_FIRST_OPC) && (opc < LDLM_LAST_OPC) ) /*LDLM Opcodes*/
9072 offset=lustre_ldlm_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9074 if( (opc>= MGS_FIRST_OPC) && (opc <= MGS_LAST_OPC)) /* MGS Opcodes */
9075 offset=lustre_mgs_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9077 if( (opc>= OBD_FIRST_OPC) && (opc<=OBD_LAST_OPC)) /* ODB Opcodes */
9078 offset=lustre_odb_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9080 if( (opc>=LLOG_FIRST_OPC) && (opc<=LLOG_LAST_OPC)) /* LLOG Opcodes */
9081 offset=lustre_llog_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
9083 if( (opc >= SEQ_FIRST_OPC) && (opc <= SEQ_LAST_OPC) ) /* SEQ Opcodes */
9084 offset=lustre_seq_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
9086 if( (opc >= FLD_FIRST_OPC) && (opc <= FLD_LAST_OPC) ) /* FLD Opcodes */
9087 offset=lustre_fld_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
9092 /* ----------------------------------------------- */
9093 /* add an extra padding to be aligned to 8bytes */
9095 add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
9097 guint32 padding_len;
9099 padding_len = (8- offset%8)%8;
9101 proto_tree_add_item(tree, hf_lustre_extra_padding , tvb, offset, padding_len, TRUE);
9102 offset+=padding_len;
9106 /* ----------------------------------------------- */
9109 ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
9110 proto_tree * tree _U_, guint64 intent_opc _U_)
9112 /* all corresponding code is in mdc_locks.c in function mdc_enqueue() */
9113 /* if 0x0003 we have CREAT + OPEN
9115 if (intent_opc & IT_OPEN) {
9116 /* mdc_intent_open_pack(), d'où [opcode][mdc_rec_create][capa1][capa2][name][eada] */
9117 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree,
9118 hf_lustre_mdt_rec_create);
9119 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
9120 hf_lustre_reint_name,
9121 LUSTRE_DLM_INTENT_REC_OFF+3);
9122 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
9123 hf_lustre_mds_xattr_eadata,
9124 LUSTRE_DLM_INTENT_REC_OFF+4);
9127 if (intent_opc & IT_UNLINK){
9128 /* mdc_intent_unlink_pack(), d'où [opcode][mdt_rec_unlink][capa][name] */
9129 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree,
9130 hf_lustre_mdt_rec_unlink);
9131 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9132 LUSTRE_DLM_INTENT_REC_OFF+1);
9133 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
9134 hf_lustre_reint_name,
9135 LUSTRE_DLM_INTENT_REC_OFF+2);
9137 if (intent_opc & IT_GETATTR){
9138 /* mdc_intent_lookup_pack, d'où [mdt_body][capa][name] */
9139 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
9140 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9141 LUSTRE_DLM_INTENT_REC_OFF+1);
9142 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name,
9143 LUSTRE_DLM_INTENT_REC_OFF+2);
9146 if (intent_opc & IT_LOOKUP){
9147 /* mdc_intent_lookup_pack, d'où [mdt_body][capa][name] */
9148 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body);
9149 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9150 LUSTRE_DLM_INTENT_REC_OFF+1);
9151 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name,
9152 LUSTRE_DLM_INTENT_REC_OFF+2);
9159 /* ----------------------------------------------- */
9160 /* function to test if the packet is entirely dissected add BUG in PROTOCOL COL when it's not*/
9162 sanity_check(tvbuff_t *tvb, packet_info *pinfo, guint32 val_offset _U_)
9164 guint32 somme_buflen = 0 ;
9167 /* magic_number = tvb_get_letohl(tvb, 8); */
9169 for (i=0;i<LUSTRE_BUFCOUNT;i++)
9170 somme_buflen += tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF +
9171 4 * i ) + (8- tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4 * i)%8)%8; /* we add the
9179 if(val_offset!=somme_buflen){
9180 /*g_print("somme_buflen=%d, val_offset = %d \n",somme_buflen,val_offset);*/
9181 if (check_col(pinfo->cinfo, COL_INFO)) {
9182 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9189 /* IDL: struct lustre_msg_v1 { */
9190 /* IDL: struct lustre_handle { */
9191 /* IDL: } lm_handle; */
9192 /* IDL: uint32 lm_magic; */
9193 /* IDL: uint32 lm_type; */
9194 /* IDL: uint32 lm_version; */
9195 /* IDL: uint32 lm_opc; */
9196 /* IDL: uint64 lm_last_xid; */
9197 /* IDL: uint64 lm_last_committed; */
9198 /* IDL: uint64 lm_transno; */
9199 /* IDL: uint32 lm_status; */
9200 /* IDL: uint32 lm_flags; */
9201 /* IDL: uint32 lm_conn_cnt; */
9202 /* IDL: uint32 lm_bufcount; */
9203 /* IDL: uint32 lm_buflens[0]; */
9208 lustre_dissect_element_msg_v1_lm_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9210 /*TODO : replace with a v1 handle*/
9211 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_lustre_msg_v1_lm_handle);
9216 lustre_dissect_element_msg_v1_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9218 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_magic);
9224 lustre_dissect_element_msg_v1_lm_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9226 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_type);
9232 lustre_dissect_element_msg_v1_lm_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9234 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_version);
9240 lustre_dissect_element_msg_v1_lm_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9242 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_opc);
9248 lustre_dissect_element_msg_v1_lm_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9250 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_xid);
9256 lustre_dissect_element_msg_v1_lm_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9258 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_committed);
9264 lustre_dissect_element_msg_v1_lm_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9266 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_transno);
9272 lustre_dissect_element_msg_v1_lm_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9274 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_status);
9280 lustre_dissect_element_msg_v1_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9282 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_flags);
9288 lustre_dissect_element_msg_v1_lm_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9290 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_conn_cnt);
9296 lustre_dissect_element_msg_v1_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9298 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_bufcount);
9304 lustre_dissect_element_msg_v1_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9306 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_buflens);
9312 lustre_dissect_element_msg_v1_lm_buflens(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9315 gboolean extra_padding ;
9318 bufcount=tvb_get_letohl(tvb, offset-4); /* TODO : replace with a macro */
9320 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
9325 for (i=0;i<bufcount;i++) {
9326 offset=lustre_dissect_element_msg_v1_lm_buflens_(tvb, offset, pinfo, tree);
9330 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
9339 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_)
9341 proto_item *item = NULL;
9342 proto_tree *tree = NULL;
9344 guint32 opc ; /* opcode */
9345 guint32 pb_type; /* type : {request, reply, error} */
9351 // if (parent_tree) {
9352 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9353 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v1);
9356 offset=lustre_dissect_element_msg_v1_lm_handle(tvb, offset, pinfo, tree);
9358 offset=lustre_dissect_element_msg_v1_lm_magic(tvb, offset, pinfo, tree);
9360 pb_type = tvb_get_letohl(tvb, offset);
9361 offset=lustre_dissect_element_msg_v1_lm_type(tvb, offset, pinfo, tree);
9363 offset=lustre_dissect_element_msg_v1_lm_version(tvb, offset, pinfo, tree);
9364 opc = tvb_get_letohl(tvb, offset);
9365 offset=lustre_dissect_element_msg_v1_lm_opc(tvb, offset, pinfo, tree);
9367 offset=lustre_dissect_element_msg_v1_lm_last_xid(tvb, offset, pinfo, tree);
9369 offset=lustre_dissect_element_msg_v1_lm_last_committed(tvb, offset, pinfo, tree);
9371 offset=lustre_dissect_element_msg_v1_lm_transno(tvb, offset, pinfo, tree);
9373 offset=lustre_dissect_element_msg_v1_lm_status(tvb, offset, pinfo, tree);
9375 offset=lustre_dissect_element_msg_v1_lm_flags(tvb, offset, pinfo, tree);
9377 offset=lustre_dissect_element_msg_v1_lm_conn_cnt(tvb, offset, pinfo, tree);
9379 offset=lustre_dissect_element_msg_v1_lm_bufcount(tvb, offset, pinfo, tree);
9381 offset=lustre_dissect_element_msg_v1_lm_buflens(tvb, offset, pinfo, tree);
9384 proto_item_set_len(item, offset-old_offset);
9386 /* display some nice infos */
9387 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
9388 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
9390 offset=lustre_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
9395 /* IDL: struct ptlrpc_body { */
9396 /* IDL: struct lustre_handle { */
9397 /* IDL: } pb_handle; */
9398 /* IDL: uint32 pb_type; */
9399 /* IDL: uint32 pb_version; */
9400 /* IDL: uint32 pb_opc; */
9401 /* IDL: uint32 pb_status; */
9402 /* IDL: uint64 pb_last_xid; */
9403 /* IDL: uint64 pb_last_seen; */
9404 /* IDL: uint64 pb_last_committed; */
9405 /* IDL: uint64 pb_transno; */
9406 /* IDL: uint32 pb_flags; */
9407 /* IDL: uint32 pb_op_flags; */
9408 /* IDL: uint32 pb_conn_cnt; */
9409 /* IDL: uint32 pb_timeout; */
9410 /* IDL: uint32 pb_service_time; */
9411 /* IDL: uint32 pb_limit; */
9412 /* IDL: uint64 pb_slv; */
9416 lustre_dissect_element_ptlrpc_body_pb_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9418 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ptlrpc_body_pb_handle);
9424 lustre_dissect_element_ptlrpc_body_pb_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9426 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_type);
9432 lustre_dissect_element_ptlrpc_body_pb_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9434 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_version);
9440 lustre_dissect_element_ptlrpc_body_pb_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9442 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_opc);
9448 lustre_dissect_element_ptlrpc_body_pb_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9450 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_status);
9456 lustre_dissect_element_ptlrpc_body_pb_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9458 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_xid);
9464 lustre_dissect_element_ptlrpc_body_pb_last_seen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9466 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_seen);
9472 lustre_dissect_element_ptlrpc_body_pb_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9474 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_committed);
9480 lustre_dissect_element_ptlrpc_body_pb_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9482 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_transno);
9488 lustre_dissect_element_ptlrpc_body_pb_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9490 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_flags);
9496 lustre_dissect_element_ptlrpc_body_pb_op_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9498 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_op_flags);
9504 lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9506 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_conn_cnt);
9512 lustre_dissect_element_ptlrpc_body_pb_timeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9514 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_timeout);
9520 lustre_dissect_element_ptlrpc_body_pb_service_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9522 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_service_time);
9528 lustre_dissect_element_ptlrpc_body_pb_limit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9530 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_limit);
9536 lustre_dissect_element_ptlrpc_body_pb_slv(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9538 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_slv);
9544 lustre_dissect_element_ptlrpc_body_pb_pre_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9546 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_pre_version);
9552 lustre_dissect_element_ptlrpc_body_pb_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9554 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_padding);
9560 lustre_dissect_element_ptlrpc_body_pb_jobid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
9563 /* the lenght of the string is 32 bytes max, with \0 inside */
9564 proto_tree_add_item(parent_tree, hf_lustre_ptlrpc_body_pb_jobid, tvb, offset, 32, TRUE);
9572 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_ )
9574 proto_item *item = NULL;
9575 proto_tree *tree = NULL;
9577 guint32 opc, pb_type, pb_version;
9582 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9583 tree = proto_item_add_subtree(item, ett_lustre_ptlrpc_body);
9586 offset=lustre_dissect_element_ptlrpc_body_pb_handle(tvb, offset, pinfo, tree);
9588 pb_type = tvb_get_letohl(tvb, offset);
9589 //g_print("msg_v2_lm_type_offset = %d \n" , offset) ;
9591 offset=lustre_dissect_element_ptlrpc_body_pb_type(tvb, offset, pinfo, tree);
9593 pb_version = tvb_get_letohl(tvb, offset) & ~LUSTRE_VERSION_MASK;
9594 //g_print("msg_v2_version_offset %d : version == %d \n", offset, pb_version);
9595 offset=lustre_dissect_element_ptlrpc_body_pb_version(tvb, offset, pinfo, tree);
9597 // g_print("msg_v2_opcode_offset %d \n", offset);
9598 opc = tvb_get_letohl(tvb, offset);
9599 offset=lustre_dissect_element_ptlrpc_body_pb_opc(tvb, offset, pinfo, tree);
9601 offset=lustre_dissect_element_ptlrpc_body_pb_status(tvb, offset, pinfo, tree);
9603 offset=lustre_dissect_element_ptlrpc_body_pb_last_xid(tvb, offset, pinfo, tree);
9605 offset=lustre_dissect_element_ptlrpc_body_pb_last_seen(tvb, offset, pinfo, tree);
9607 offset=lustre_dissect_element_ptlrpc_body_pb_last_committed(tvb, offset, pinfo, tree);
9609 offset=lustre_dissect_element_ptlrpc_body_pb_transno(tvb, offset, pinfo, tree);
9611 offset=lustre_dissect_element_ptlrpc_body_pb_flags(tvb, offset, pinfo, tree);
9613 offset=lustre_dissect_element_ptlrpc_body_pb_op_flags(tvb, offset, pinfo, tree);
9615 offset=lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvb, offset, pinfo, tree);
9617 offset=lustre_dissect_element_ptlrpc_body_pb_timeout(tvb, offset, pinfo, tree);
9619 offset=lustre_dissect_element_ptlrpc_body_pb_service_time(tvb, offset, pinfo, tree);
9621 offset=lustre_dissect_element_ptlrpc_body_pb_limit(tvb, offset, pinfo, tree);
9623 offset=lustre_dissect_element_ptlrpc_body_pb_slv(tvb, offset, pinfo, tree);
9625 /* pb_pre_versions */
9626 for(i = 0; i < 4; ++i) {
9627 offset=lustre_dissect_element_ptlrpc_body_pb_pre_version(tvb, offset, pinfo, tree);
9630 for(i = 0; i < 4; ++i) {
9631 offset=lustre_dissect_element_ptlrpc_body_pb_padding(tvb, offset, pinfo, tree);
9634 if (pb_version == LUSTRE_PTLRPC_MSG_VERSION && offset-old_offset < buf_len) {
9635 offset=lustre_dissect_element_ptlrpc_body_pb_jobid(tvb, offset, pinfo, tree);
9638 if (offset-old_offset != buf_len) {
9639 g_print("ptlbody offset-old:%d buf_len:%d\n",
9640 offset-old_offset, buf_len);
9641 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9644 proto_item_set_len(item, offset-old_offset);
9646 /* display some nice infos */
9647 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
9648 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
9650 /* on utilise parent_tree pour bien distinguer les différents buffers (relatifs à bufcount + buflen), il s'agit d'un choix de présentation */
9651 offset=lustre_opcode_process(tvb, offset, pinfo, parent_tree, opc, pb_type);
9653 sanity_check(tvb,pinfo,offset-old_offset);
9659 /* IDL: struct lustre_msg_v2 { */
9660 /* IDL: uint32 lm_bufcount; */
9661 /* IDL: uint32 lm_secflvr; */
9662 /* IDL: uint32 lm_magic; */
9663 /* IDL: uint32 lm_repsize; */
9664 /* IDL: uint32 lm_cksum; */
9665 /* IDL: uint32 lm_flags; */
9666 /* IDL: uint32 lm_padding_2; */
9667 /* IDL: uint32 lm_padding_3; */
9668 /* IDL: uint32 lm_buflens[0]; */
9672 lustre_dissect_element_msg_v2_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9674 proto_tree_add_item(tree, hf_lustre_lustre_msg_v2_lm_bufcount, tvb, offset, 4, TRUE);
9680 lustre_dissect_element_msg_v2_lm_secflvr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9682 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_secflvr);
9688 lustre_dissect_element_msg_v2_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9690 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_magic);
9696 lustre_dissect_element_msg_v2_lm_repsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9698 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_repsize);
9704 lustre_dissect_element_msg_v2_lm_cksum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9706 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_cksum);
9712 lustre_dissect_element_msg_v2_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9714 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_flags);
9720 lustre_dissect_element_msg_v2_lm_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9722 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_2);
9728 lustre_dissect_element_msg_v2_lm_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9730 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_3);
9738 lustre_dissect_element_msg_v2_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9740 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_buflens);
9746 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_)
9748 proto_item *item = NULL;
9749 proto_tree *tree = NULL;
9753 guint32 buf_len_offset;
9754 guint32 current_buf_len ;
9755 gboolean extra_padding ;
9759 /* to get a light display */
9761 // if (parent_tree) {
9762 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9763 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v2);
9766 bufcount = tvb_get_letohl(tvb,offset);
9767 offset=lustre_dissect_element_msg_v2_lm_bufcount(tvb, offset, pinfo, tree);
9769 offset=lustre_dissect_element_msg_v2_lm_secflvr(tvb, offset, pinfo, tree);
9771 offset=lustre_dissect_element_msg_v2_lm_magic(tvb, offset, pinfo, tree);
9773 offset=lustre_dissect_element_msg_v2_lm_repsize(tvb, offset, pinfo, tree);
9775 offset=lustre_dissect_element_msg_v2_lm_cksum(tvb, offset, pinfo, tree);
9777 offset=lustre_dissect_element_msg_v2_lm_flags(tvb, offset, pinfo, tree);
9779 offset=lustre_dissect_element_msg_v2_lm_padding_2(tvb, offset, pinfo, tree);
9781 offset=lustre_dissect_element_msg_v2_lm_padding_3(tvb, offset, pinfo, tree);
9785 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
9790 buf_len_offset=offset ;
9791 for (i=0;i<bufcount;i++) {
9792 offset=lustre_dissect_element_msg_v2_lm_buflens_(tvb, offset, pinfo, tree);
9797 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
9800 current_buf_len = tvb_get_letohl(tvb, buf_len_offset);
9801 offset=lustre_dissect_struct_ptlrpc_body(tvb,offset, pinfo, tree, hf_lustre_ptlrpc_body_pb, current_buf_len);
9803 proto_item_set_len(item, offset-old_offset);
9810 dissect_lustre(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
9812 if (check_col(pinfo->cinfo, COL_PROTOCOL))
9813 col_set_str(pinfo->cinfo, COL_PROTOCOL, "Lustre");
9816 if (check_col(pinfo->cinfo, COL_INFO))
9817 col_set_str(pinfo->cinfo, COL_INFO, "");
9818 /* guint32 magic_number ; */
9819 /* magic_number = tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET); */
9820 /* switch (magic_number)*/
9822 /* case LUSTRE_MSG_MAGIC_V1:*/
9823 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V1 ");*/
9825 /* case LUSTRE_MSG_MAGIC_V2:*/
9826 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V2 ");*/
9834 guint32 magic_number ;
9836 proto_item *ti = NULL ;
9837 proto_tree * lustre_tree = NULL ;
9839 ti = proto_tree_add_item(tree,proto_lustre,tvb,0,-1,FALSE);
9840 lustre_tree = proto_item_add_subtree(ti,ett_lustre);
9842 magic_number = tvb_get_letohl(tvb, 8);
9844 switch (magic_number){
9845 case LUSTRE_MSG_MAGIC_V1:
9846 /* put some nice info*/
9847 proto_item_append_text(lustre_tree, " V1 ");
9848 offset=lustre_dissect_struct_msg_v1(tvb, offset, pinfo, lustre_tree, proto_lustre ) ;
9850 case LUSTRE_MSG_MAGIC_V2:
9851 /* put some nice info*/
9852 proto_item_append_text(lustre_tree, " V2 ");
9853 offset=lustre_dissect_struct_msg_v2(tvb, offset, pinfo, lustre_tree, proto_lustre ) ;
9861 void proto_register_dcerpc_lustre(void)
9863 static hf_register_info hf[] = {
9864 { &hf_lustre_mdt_body,
9865 { "mdt body", "lustre.mdt_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9866 { &hf_lustre_mdt_body_fid1,
9867 { "Fid1", "lustre.mdt_body.fid1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9868 { &hf_lustre_mdt_body_fid2,
9869 { "Fid2", "lustre.mdt_body.fid2", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9870 { &hf_lustre_mdt_body_handle,
9871 { "Handle", "lustre.mdt_body.handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9872 { &hf_lustre_mdt_body_valid,
9873 { "Valid", "lustre.mdt_body.valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9874 { &hf_lustre_mdt_body_size,
9875 { "Size", "lustre.mdt_body.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9876 { &hf_lustre_mdt_body_mtime,
9877 { "Mtime", "lustre.mdt_body.mtime",FT_ABSOLUTE_TIME,
9878 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9879 { &hf_lustre_mdt_body_atime,
9880 { "Atime", "lustre.mdt_body.atime",FT_ABSOLUTE_TIME,
9881 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9882 { &hf_lustre_mdt_body_ctime,
9883 { "Ctime", "lustre.mdt_body.ctime",FT_ABSOLUTE_TIME,
9884 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9885 { &hf_lustre_mdt_body_blocks,
9886 { "Blocks", "lustre.mdt_body.blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9887 { &hf_lustre_mdt_body_ioepoch,
9888 { "Ioepoch", "lustre.mdt_body.ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9889 { &hf_lustre_mdt_body_ino,
9890 { "Ino", "lustre.mdt_body.ino", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9891 { &hf_lustre_mdt_body_fsuid,
9892 { "Fsuid", "lustre.mdt_body.fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9893 { &hf_lustre_mdt_body_fsgid,
9894 { "Fsgid", "lustre.mdt_body.fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9895 { &hf_lustre_mdt_body_capability,
9896 { "Capability", "lustre.mdt_body.capability", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9897 { &hf_lustre_mdt_body_mode,
9898 { "Mode", "lustre.mdt_body.mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9899 { &hf_lustre_mdt_body_uid,
9900 { "Uid", "lustre.mdt_body.uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9901 { &hf_lustre_mdt_body_gid,
9902 { "Gid", "lustre.mdt_body.gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9903 { &hf_lustre_mdt_body_flags,
9904 { "Flags", "lustre.mdt_body.flags", FT_UINT32, BASE_HEX, VALS(lustre_mds_flags_vals) , 0, "", HFILL }},
9905 { &hf_lustre_mdt_body_rdev,
9906 { "Rdev", "lustre.mdt_body.rdev", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9907 { &hf_lustre_mdt_body_nlink,
9908 { "Nlink", "lustre.mdt_body.nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9909 { &hf_lustre_mdt_body_generation,
9910 { "Generation", "lustre.mdt_body.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9911 { &hf_lustre_mdt_body_suppgid,
9912 { "Suppgid", "lustre.mdt_body.suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9913 { &hf_lustre_mdt_body_eadatasize,
9914 { "Eadatasize", "lustre.mdt_body.eadatasize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9915 { &hf_lustre_mdt_body_aclsize,
9916 { "Aclsize", "lustre.mdt_body.aclsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9917 { &hf_lustre_mdt_body_max_mdsize,
9918 { "Max Mdsize", "lustre.mdt_body.max_mdsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9919 { &hf_lustre_mdt_body_max_cookiesize,
9920 { "Max Cookiesize", "lustre.mdt_body.max_cookiesize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9921 { &hf_lustre_mdt_body_uid_h,
9922 { "Uid H", "lustre.mdt_body.uid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9923 { &hf_lustre_mdt_body_gid_h,
9924 { "Gid H", "lustre.mdt_body.gid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9925 { &hf_lustre_mdt_body_padding_5,
9926 { "Padding 5", "lustre.mdt_body.padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9927 { &hf_lustre_mdt_body_padding_6,
9928 { "Padding 6", "lustre.mdt_body.padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9929 { &hf_lustre_mdt_body_padding_7,
9930 { "Padding 7", "lustre.mdt_body.padding_7", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9931 { &hf_lustre_mdt_body_padding_8,
9932 { "Padding 8", "lustre.mdt_body.padding_8", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9933 { &hf_lustre_mdt_body_padding_9,
9934 { "Padding 9", "lustre.mdt_body.padding_9", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9935 { &hf_lustre_mdt_body_padding_10,
9936 { "Padding 10", "lustre.mdt_body.padding_10", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9938 { &hf_lustre_mdt_rec_setattr,
9939 { "mdt rec setattr", "lustre.mdt_rec_setattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9940 { &hf_lustre_mdt_rec_setattr_sa_opcode,
9941 { "Sa Opcode", "lustre.mdt_rec_setattr.sa_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9942 { &hf_lustre_mdt_rec_setattr_sa_cap,
9943 { "Sa Cap", "lustre.mdt_rec_setattr.sa_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9944 { &hf_lustre_mdt_rec_setattr_sa_fsuid,
9945 { "Sa Fsuid", "lustre.mdt_rec_setattr.sa_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9946 { &hf_lustre_mdt_rec_setattr_sa_fsuid_h,
9947 { "Sa Fsuid H", "lustre.mdt_rec_setattr.sa_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9948 { &hf_lustre_mdt_rec_setattr_sa_fsgid,
9949 { "Sa Fsgid", "lustre.mdt_rec_setattr.sa_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9950 { &hf_lustre_mdt_rec_setattr_sa_fsgid_h,
9951 { "Sa Fsgid H", "lustre.mdt_rec_setattr.sa_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9952 { &hf_lustre_mdt_rec_setattr_sa_suppgid,
9953 { "Sa Suppgid", "lustre.mdt_rec_setattr.sa_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9954 { &hf_lustre_mdt_rec_setattr_sa_suppgid_h,
9955 { "Sa Suppgid H", "lustre.mdt_rec_setattr.sa_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9956 { &hf_lustre_mdt_rec_setattr_sa_padding_1,
9957 { "Sa Padding 1", "lustre.mdt_rec_setattr.sa_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9958 { &hf_lustre_mdt_rec_setattr_sa_padding_1_h,
9959 { "Sa Padding 1 H", "lustre.mdt_rec_setattr.sa_padding_1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9960 { &hf_lustre_mdt_rec_setattr_sa_fid,
9961 { "Sa Fid", "lustre.mdt_rec_setattr.sa_fid", FT_NONE,
9962 BASE_NONE, NULL, 0, "", HFILL } },
9963 { &hf_lustre_mdt_rec_setattr_sa_valid,
9964 { "Sa Valid", "lustre.mdt_rec_setattr.sa_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9965 { &hf_lustre_mdt_rec_setattr_sa_uid,
9966 { "Sa Uid", "lustre.mdt_rec_setattr.sa_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9967 { &hf_lustre_mdt_rec_setattr_sa_gid,
9968 { "Sa Gid", "lustre.mdt_rec_setattr.sa_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9969 { &hf_lustre_mdt_rec_setattr_sa_size,
9970 { "Sa Size", "lustre.mdt_rec_setattr.sa_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9971 { &hf_lustre_mdt_rec_setattr_sa_blocks,
9972 { "Sa Blocks", "lustre.mdt_rec_setattr.sa_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9973 { &hf_lustre_mdt_rec_setattr_sa_mtime,
9974 { "Sa Mtime", "lustre.mdt_rec_setattr.sa_mtime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9975 { &hf_lustre_mdt_rec_setattr_sa_atime,
9976 { "Sa Atime", "lustre.mdt_rec_setattr.sa_atime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9977 { &hf_lustre_mdt_rec_setattr_sa_ctime,
9978 { "Sa Ctime", "lustre.mdt_rec_setattr.sa_ctime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9979 { &hf_lustre_mdt_rec_setattr_sa_attr_flags,
9980 { "Sa Attr Flags", "lustre.mdt_rec_setattr.sa_attr_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9981 { &hf_lustre_mdt_rec_setattr_sa_mode,
9982 { "Sa Mode", "lustre.mdt_rec_setattr.sa_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9983 { &hf_lustre_mdt_rec_setattr_sa_padding_2,
9984 { "Sa Padding 2", "lustre.mdt_rec_setattr.sa_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9985 { &hf_lustre_mdt_rec_setattr_sa_padding_3,
9986 { "Sa Padding 3", "lustre.mdt_rec_setattr.sa_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9987 { &hf_lustre_mdt_rec_setattr_sa_padding_4,
9988 { "Sa Padding 4", "lustre.mdt_rec_setattr.sa_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9989 { &hf_lustre_mdt_rec_setattr_sa_padding_5,
9990 { "Sa Padding 5", "lustre.mdt_rec_setattr.sa_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9992 { &hf_lustre_mdt_rec_create,
9993 { "mdt rec create", "lustre.mdt_rec_create", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9994 { &hf_lustre_mdt_rec_create_cr_opcode,
9995 { "Cr Opcode", "lustre.mdt_rec_create.cr_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9996 { &hf_lustre_mdt_rec_create_cr_cap,
9997 { "Cr Cap", "lustre.mdt_rec_create.cr_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9998 { &hf_lustre_mdt_rec_create_cr_fsuid,
9999 { "Cr Fsuid", "lustre.mdt_rec_create.cr_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10000 { &hf_lustre_mdt_rec_create_cr_fsuid_h,
10001 { "Cr Fsuid H", "lustre.mdt_rec_create.cr_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10002 { &hf_lustre_mdt_rec_create_cr_fsgid,
10003 { "Cr Fsgid", "lustre.mdt_rec_create.cr_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10004 { &hf_lustre_mdt_rec_create_cr_fsgid_h,
10005 { "Cr Fsgid H", "lustre.mdt_rec_create.cr_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10006 { &hf_lustre_mdt_rec_create_cr_suppgid1,
10007 { "Cr Suppgid1", "lustre.mdt_rec_create.cr_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10008 { &hf_lustre_mdt_rec_create_cr_suppgid1_h,
10009 { "Cr Suppgid1 H", "lustre.mdt_rec_create.cr_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10010 { &hf_lustre_mdt_rec_create_cr_suppgid2,
10011 { "Cr Suppgid2", "lustre.mdt_rec_create.cr_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10012 { &hf_lustre_mdt_rec_create_cr_suppgid2_h,
10013 { "Cr Suppgid2 H", "lustre.mdt_rec_create.cr_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10014 { &hf_lustre_mdt_rec_create_cr_fid1,
10015 { "Cr Fid1", "lustre.mdt_rec_create.cr_fid1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10016 { &hf_lustre_mdt_rec_create_cr_fid2,
10017 { "Cr Fid2", "lustre.mdt_rec_create.cr_fid2", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10018 { &hf_lustre_mdt_rec_create_cr_old_handle,
10019 { "Cr Old Handle", "lustre.mdt_rec_create.cr_old_handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10020 { &hf_lustre_mdt_rec_create_cr_time,
10021 { "Cr Time", "lustre.mdt_rec_create.cr_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10022 { &hf_lustre_mdt_rec_create_cr_rdev,
10023 { "Cr Rdev", "lustre.mdt_rec_create.cr_rdev", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10024 { &hf_lustre_mdt_rec_create_cr_ioepoch,
10025 { "Cr Ioepoch", "lustre.mdt_rec_create.cr_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10026 { &hf_lustre_mdt_rec_create_cr_padding_1,
10027 { "Cr Padding 1", "lustre.mdt_rec_create.cr_padding_1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10028 { &hf_lustre_mdt_rec_create_cr_mode,
10029 { "Cr Mode", "lustre.mdt_rec_create.cr_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10030 { &hf_lustre_mdt_rec_create_cr_bias,
10031 { "Cr Bias", "lustre.mdt_rec_create.cr_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10032 { &hf_lustre_mdt_rec_create_cr_flags_l,
10033 { "Cr Flags L", "lustre.mdt_rec_create.cr_flags_l", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10034 { &hf_lustre_mdt_rec_create_cr_flags_h,
10035 { "Cr Flags H", "lustre.mdt_rec_create.cr_flags_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10036 { &hf_lustre_mdt_rec_create_cr_umask,
10037 { "Cr Umask", "lustre.mdt_rec_create.cr_umask", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10038 { &hf_lustre_mdt_rec_create_cr_padding_4,
10039 { "Cr Padding 4", "lustre.mdt_rec_create.cr_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10041 { &hf_lustre_mdt_rec_link,
10042 { "mdt rec link", "lustre.mdt_rec_link", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10043 { &hf_lustre_mdt_rec_link_lk_opcode,
10044 { "Lk Opcode", "lustre.mdt_rec_link.lk_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
10045 { &hf_lustre_mdt_rec_link_lk_cap,
10046 { "Lk Cap", "lustre.mdt_rec_link.lk_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10047 { &hf_lustre_mdt_rec_link_lk_fsuid,
10048 { "Lk Fsuid", "lustre.mdt_rec_link.lk_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10049 { &hf_lustre_mdt_rec_link_lk_fsuid_h,
10050 { "Lk Fsuid H", "lustre.mdt_rec_link.lk_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10051 { &hf_lustre_mdt_rec_link_lk_fsgid,
10052 { "Lk Fsgid", "lustre.mdt_rec_link.lk_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10053 { &hf_lustre_mdt_rec_link_lk_fsgid_h,
10054 { "Lk Fsgid H", "lustre.mdt_rec_link.lk_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10055 { &hf_lustre_mdt_rec_link_lk_suppgid1,
10056 { "Lk Suppgid1", "lustre.mdt_rec_link.lk_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10057 { &hf_lustre_mdt_rec_link_lk_suppgid1_h,
10058 { "Lk Suppgid1 H", "lustre.mdt_rec_link.lk_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10059 { &hf_lustre_mdt_rec_link_lk_suppgid2,
10060 { "Lk Suppgid2", "lustre.mdt_rec_link.lk_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10061 { &hf_lustre_mdt_rec_link_lk_suppgid2_h,
10062 { "Lk Suppgid2 H", "lustre.mdt_rec_link.lk_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10063 { &hf_lustre_mdt_rec_link_lk_fid1,
10064 { "Lk Fid1", "lustre.mdt_rec_link.lk_fid1", FT_NONE,
10065 BASE_NONE, NULL, 0, "", HFILL } },
10066 { &hf_lustre_mdt_rec_link_lk_fid2,
10067 { "Lk Fid2", "lustre.mdt_rec_link.lk_fid2", FT_NONE,
10068 BASE_NONE, NULL, 0, "", HFILL } },
10069 { &hf_lustre_mdt_rec_link_lk_time,
10070 { "Lk Time", "lustre.mdt_rec_link.lk_time",FT_ABSOLUTE_TIME,
10071 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10072 { &hf_lustre_mdt_rec_link_lk_padding_1,
10073 { "Lk Padding 1", "lustre.mdt_rec_link.lk_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10074 { &hf_lustre_mdt_rec_link_lk_padding_2,
10075 { "Lk Padding 2", "lustre.mdt_rec_link.lk_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10076 { &hf_lustre_mdt_rec_link_lk_padding_3,
10077 { "Lk Padding 3", "lustre.mdt_rec_link.lk_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10078 { &hf_lustre_mdt_rec_link_lk_padding_4,
10079 { "Lk Padding 4", "lustre.mdt_rec_link.lk_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10080 { &hf_lustre_mdt_rec_link_lk_bias,
10081 { "Lk Bias", "lustre.mdt_rec_link.lk_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10082 { &hf_lustre_mdt_rec_link_lk_padding_5,
10083 { "Lk Padding 5", "lustre.mdt_rec_link.lk_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10084 { &hf_lustre_mdt_rec_link_lk_padding_6,
10085 { "Lk Padding 6", "lustre.mdt_rec_link.lk_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10086 { &hf_lustre_mdt_rec_link_lk_padding_7,
10087 { "Lk Padding 7", "lustre.mdt_rec_link.lk_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10088 { &hf_lustre_mdt_rec_link_lk_padding_8,
10089 { "Lk Padding 8", "lustre.mdt_rec_link.lk_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10090 { &hf_lustre_mdt_rec_link_lk_padding_9,
10091 { "Lk Padding 9", "lustre.mdt_rec_link.lk_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10093 { &hf_lustre_mdt_rec_unlink,
10094 { "mdt rec unlink", "lustre.mdt_rec_unlink", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10095 { &hf_lustre_mdt_rec_unlink_ul_opcode,
10096 { "Ul Opcode", "lustre.mdt_rec_unlink.ul_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
10097 { &hf_lustre_mdt_rec_unlink_ul_cap,
10098 { "Ul Cap", "lustre.mdt_rec_unlink.ul_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10099 { &hf_lustre_mdt_rec_unlink_ul_fsuid,
10100 { "Ul Fsuid", "lustre.mdt_rec_unlink.ul_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10101 { &hf_lustre_mdt_rec_unlink_ul_fsuid_h,
10102 { "Ul Fsuid H", "lustre.mdt_rec_unlink.ul_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10103 { &hf_lustre_mdt_rec_unlink_ul_fsgid,
10104 { "Ul Fsgid", "lustre.mdt_rec_unlink.ul_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10105 { &hf_lustre_mdt_rec_unlink_ul_fsgid_h,
10106 { "Ul Fsgid H", "lustre.mdt_rec_unlink.ul_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10107 { &hf_lustre_mdt_rec_unlink_ul_suppgid1,
10108 { "Ul Suppgid1", "lustre.mdt_rec_unlink.ul_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10109 { &hf_lustre_mdt_rec_unlink_ul_suppgid1_h,
10110 { "Ul Suppgid1 H", "lustre.mdt_rec_unlink.ul_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10111 { &hf_lustre_mdt_rec_unlink_ul_suppgid2,
10112 { "Ul Suppgid2", "lustre.mdt_rec_unlink.ul_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10113 { &hf_lustre_mdt_rec_unlink_ul_suppgid2_h,
10114 { "Ul Suppgid2 H", "lustre.mdt_rec_unlink.ul_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10115 { &hf_lustre_mdt_rec_unlink_ul_fid1,
10116 { "Ul Fid1", "lustre.mdt_rec_unlink.ul_fid1", FT_NONE,
10117 BASE_NONE, NULL, 0, "", HFILL } },
10118 { &hf_lustre_mdt_rec_unlink_ul_fid2,
10119 { "Ul Fid2", "lustre.mdt_rec_unlink.ul_fid2", FT_NONE,
10120 BASE_NONE, NULL, 0, "", HFILL } },
10121 { &hf_lustre_mdt_rec_unlink_ul_time,
10122 { "Ul Time", "lustre.mdt_rec_unlink.ul_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10123 { &hf_lustre_mdt_rec_unlink_ul_padding_2,
10124 { "Ul Padding 2", "lustre.mdt_rec_unlink.ul_padding_2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10125 { &hf_lustre_mdt_rec_unlink_ul_padding_3,
10126 { "Ul Padding 3", "lustre.mdt_rec_unlink.ul_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10127 { &hf_lustre_mdt_rec_unlink_ul_padding_4,
10128 { "Ul Padding 4", "lustre.mdt_rec_unlink.ul_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10129 { &hf_lustre_mdt_rec_unlink_ul_padding_5,
10130 { "Ul Padding 5", "lustre.mdt_rec_unlink.ul_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10131 { &hf_lustre_mdt_rec_unlink_ul_bias,
10132 { "Ul Bias", "lustre.mdt_rec_unlink.ul_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10133 { &hf_lustre_mdt_rec_unlink_ul_mode,
10134 { "Ul Mode", "lustre.mdt_rec_unlink.ul_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10135 { &hf_lustre_mdt_rec_unlink_ul_padding_6,
10136 { "Ul Padding 6", "lustre.mdt_rec_unlink.ul_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10137 { &hf_lustre_mdt_rec_unlink_ul_padding_7,
10138 { "Ul Padding 7", "lustre.mdt_rec_unlink.ul_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10139 { &hf_lustre_mdt_rec_unlink_ul_padding_8,
10140 { "Ul Padding 8", "lustre.mdt_rec_unlink.ul_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10141 { &hf_lustre_mdt_rec_unlink_ul_padding_9,
10142 { "Ul Padding 9", "lustre.mdt_rec_unlink.ul_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10144 { &hf_lustre_mdt_rec_rename,
10145 { "mdt rec rename", "lustre.mdt_rec_rename", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10146 { &hf_lustre_mdt_rec_rename_rn_opcode,
10147 { "Rn Opcode", "lustre.mdt_rec_rename.rn_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
10148 { &hf_lustre_mdt_rec_rename_rn_cap,
10149 { "Rn Cap", "lustre.mdt_rec_rename.rn_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10150 { &hf_lustre_mdt_rec_rename_rn_fsuid,
10151 { "Rn Fsuid", "lustre.mdt_rec_rename.rn_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10152 { &hf_lustre_mdt_rec_rename_rn_fsuid_h,
10153 { "Rn Fsuid H", "lustre.mdt_rec_rename.rn_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10154 { &hf_lustre_mdt_rec_rename_rn_fsgid,
10155 { "Rn Fsgid", "lustre.mdt_rec_rename.rn_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10156 { &hf_lustre_mdt_rec_rename_rn_fsgid_h,
10157 { "Rn Fsgid H", "lustre.mdt_rec_rename.rn_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10158 { &hf_lustre_mdt_rec_rename_rn_suppgid1,
10159 { "Rn Suppgid1", "lustre.mdt_rec_rename.rn_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10160 { &hf_lustre_mdt_rec_rename_rn_suppgid1_h,
10161 { "Rn Suppgid1 H", "lustre.mdt_rec_rename.rn_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10162 { &hf_lustre_mdt_rec_rename_rn_suppgid2,
10163 { "Rn Suppgid2", "lustre.mdt_rec_rename.rn_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10164 { &hf_lustre_mdt_rec_rename_rn_suppgid2_h,
10165 { "Rn Suppgid2 H", "lustre.mdt_rec_rename.rn_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10166 { &hf_lustre_mdt_rec_rename_rn_fid1,
10167 { "Rn Fid1", "lustre.mdt_rec_rename.rn_fid1", FT_NONE,
10168 BASE_NONE, NULL, 0, "", HFILL } },
10169 { &hf_lustre_mdt_rec_rename_rn_fid2,
10170 { "Rn Fid2", "lustre.mdt_rec_rename.rn_fid2", FT_NONE,
10171 BASE_NONE, NULL, 0, "", HFILL } },
10172 { &hf_lustre_mdt_rec_rename_rn_time,
10173 { "Rn Time", "lustre.mdt_rec_rename.rn_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10174 { &hf_lustre_mdt_rec_rename_rn_padding_1,
10175 { "Rn Padding 1", "lustre.mdt_rec_rename.rn_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10176 { &hf_lustre_mdt_rec_rename_rn_padding_2,
10177 { "Rn Padding 2", "lustre.mdt_rec_rename.rn_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10178 { &hf_lustre_mdt_rec_rename_rn_padding_3,
10179 { "Rn Padding 3", "lustre.mdt_rec_rename.rn_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10180 { &hf_lustre_mdt_rec_rename_rn_padding_4,
10181 { "Rn Padding 4", "lustre.mdt_rec_rename.rn_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10182 { &hf_lustre_mdt_rec_rename_rn_bias,
10183 { "Rn Bias", "lustre.mdt_rec_rename.rn_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10184 { &hf_lustre_mdt_rec_rename_rn_mode,
10185 { "Rn Mode", "lustre.mdt_rec_rename.rn_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10186 { &hf_lustre_mdt_rec_rename_rn_padding_5,
10187 { "Rn Padding 5", "lustre.mdt_rec_rename.rn_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10188 { &hf_lustre_mdt_rec_rename_rn_padding_6,
10189 { "Rn Padding 6", "lustre.mdt_rec_rename.rn_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10190 { &hf_lustre_mdt_rec_rename_rn_padding_7,
10191 { "Rn Padding 7", "lustre.mdt_rec_rename.rn_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10192 { &hf_lustre_mdt_rec_rename_rn_padding_8,
10193 { "Rn Padding 8", "lustre.mdt_rec_rename.rn_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10195 { &hf_lustre_mdt_rec_setxattr,
10196 { "mdt rec setxattr", "lustre.mdt_rec_setxattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10197 { &hf_lustre_mdt_rec_setxattr_sx_opcode,
10198 { "Sx Opcode", "lustre.mdt_rec_setxattr.sx_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
10199 { &hf_lustre_mdt_rec_setxattr_sx_cap,
10200 { "Sx Cap", "lustre.mdt_rec_setxattr.sx_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10201 { &hf_lustre_mdt_rec_setxattr_sx_fsuid,
10202 { "Sx Fsuid", "lustre.mdt_rec_setxattr.sx_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10203 { &hf_lustre_mdt_rec_setxattr_sx_fsuid_h,
10204 { "Sx Fsuid H", "lustre.mdt_rec_setxattr.sx_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10205 { &hf_lustre_mdt_rec_setxattr_sx_fsgid,
10206 { "Sx Fsgid", "lustre.mdt_rec_setxattr.sx_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10207 { &hf_lustre_mdt_rec_setxattr_sx_fsgid_h,
10208 { "Sx Fsgid H", "lustre.mdt_rec_setxattr.sx_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10209 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1,
10210 { "Sx Suppgid1", "lustre.mdt_rec_setxattr.sx_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10211 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1_h,
10212 { "Sx Suppgid1 H", "lustre.mdt_rec_setxattr.sx_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10213 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2,
10214 { "Sx Suppgid2", "lustre.mdt_rec_setxattr.sx_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10215 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2_h,
10216 { "Sx Suppgid2 H", "lustre.mdt_rec_setxattr.sx_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10217 { &hf_lustre_mdt_rec_setxattr_sx_fid,
10218 { "Sx Fid", "lustre.mdt_rec_setxattr.sx_fid", FT_NONE,
10219 BASE_NONE, NULL, 0, "", HFILL } },
10220 { &hf_lustre_mdt_rec_setxattr_sx_padding_1,
10221 { "Sx Padding 1", "lustre.mdt_rec_setxattr.sx_padding_1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10222 { &hf_lustre_mdt_rec_setxattr_sx_padding_2,
10223 { "Sx Padding 2", "lustre.mdt_rec_setxattr.sx_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10224 { &hf_lustre_mdt_rec_setxattr_sx_padding_3,
10225 { "Sx Padding 3", "lustre.mdt_rec_setxattr.sx_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10226 { &hf_lustre_mdt_rec_setxattr_sx_valid,
10227 { "Sx Valid", "lustre.mdt_rec_setxattr.sx_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10228 { &hf_lustre_mdt_rec_setxattr_sx_time,
10229 { "Sx Time", "lustre.mdt_rec_setxattr.sx_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10230 { &hf_lustre_mdt_rec_setxattr_sx_padding_5,
10231 { "Sx Padding 5", "lustre.mdt_rec_setxattr.sx_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10232 { &hf_lustre_mdt_rec_setxattr_sx_padding_6,
10233 { "Sx Padding 6", "lustre.mdt_rec_setxattr.sx_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10234 { &hf_lustre_mdt_rec_setxattr_sx_padding_7,
10235 { "Sx Padding 7", "lustre.mdt_rec_setxattr.sx_padding_7", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10236 { &hf_lustre_mdt_rec_setxattr_sx_size,
10237 { "Sx Size", "lustre.mdt_rec_setxattr.sx_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10238 { &hf_lustre_mdt_rec_setxattr_sx_flags,
10239 { "Sx Flags", "lustre.mdt_rec_setxattr.sx_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10240 { &hf_lustre_mdt_rec_setxattr_sx_padding_8,
10241 { "Sx Padding 8", "lustre.mdt_rec_setxattr.sx_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10242 { &hf_lustre_mdt_rec_setxattr_sx_padding_9,
10243 { "Sx Padding 9", "lustre.mdt_rec_setxattr.sx_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10244 { &hf_lustre_mdt_rec_setxattr_sx_padding_10,
10245 { "Sx Padding 10", "lustre.mdt_rec_setxattr.sx_padding_10", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10246 { &hf_lustre_mdt_rec_setxattr_sx_padding_11,
10247 { "Sx Padding 11", "lustre.mdt_rec_setxattr.sx_padding_11", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10249 { &hf_lustre_lustre_handle_cookie,
10250 { "Cookie", "lustre.lustre_handle.cookie", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10251 { &hf_lustre_ptlrpc_body_pb_last_committed,
10252 { "Pb Last Committed", "lustre.ptlrpc_body.pb_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10253 { &hf_lustre_ptlrpc_body_pb_version,
10254 { "Pb Version", "lustre.ptlrpc_body.pb_version", FT_UINT32, BASE_DEC, NULL, ~LUSTRE_VERSION_MASK, "", HFILL }},
10255 { &hf_lustre_lustre_msg_v1_lm_bufcount,
10256 { "Lm Bufcount", "lustre.lustre_msg_v1.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10257 { &hf_lustre_obd_ioobj_ioo_id,
10258 { "Ioo Id", "lustre.obd_ioobj.ioo_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10259 { &hf_lustre_ptlrpc_body_pb_slv,
10260 { "Pb Slv", "lustre.ptlrpc_body.pb_slv", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10262 { &hf_lustre_ptlrpc_body_pb_pre_version,
10263 { "Pb Pre-Version", "lustre.ptlrpc_body.pb_pre_version", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10264 { &hf_lustre_ptlrpc_body_pb_padding,
10265 { "Pb Padding", "lustre.ptlrpc_body.pb_padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10266 { &hf_lustre_ptlrpc_body_pb_jobid,
10267 { "Pb JobId", "lustre.ptlrpc_body.pb_jobid", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10269 { &hf_lustre_lustre_msg_v1_lm_handle,
10270 { "Lm Handle", "lustre.lustre_msg_v1.lm_handle", FT_NONE,
10271 BASE_NONE, NULL, 0, "", HFILL } },
10272 { &hf_lustre_ost_lvb_lvb_atime,
10273 { "Lvb Atime", "lustre.ost_lvb.lvb_atime",FT_ABSOLUTE_TIME,
10274 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10275 { &hf_lustre_ptlrpc_body_pb_timeout,
10276 { "Pb Timeout", "lustre.ptlrpc_body.pb_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10277 { &hf_lustre_obd_statfs_os_bavail,
10278 { "Os Bavail", "lustre.obd_statfs.os_bavail", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10279 { &hf_lustre_obd_statfs_os_bsize,
10280 { "Os Bsize", "lustre.obd_statfs.os_bsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10281 { &hf_lustre_lustre_msg_v2_lm_repsize,
10282 { "Lm Repsize", "lustre.lustre_msg_v2.lm_repsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10283 { &hf_lustre_lov_mds_md_v1_lmm_stripe_size,
10284 { "Lmm Stripe Size", "lustre.lov_mds_md_v1.lmm_stripe_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10285 { &hf_lustre_lustre_msg_v1_lm_last_xid,
10286 { "Lm Last Xid", "lustre.lustre_msg_v1.lm_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10287 { &hf_lustre_ll_fid_f_type,
10288 { "F Type", "lustre.ll_fid.f_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10289 { &hf_lustre_lustre_msg_v2_lm_cksum,
10290 { "Lm Cksum", "lustre.lustre_msg_v2.lm_cksum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10291 { &hf_lustre_lustre_msg_v2_lm_buflens,
10292 { "Lm Buflens", "lustre.lustre_msg_v2.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10293 { &hf_lustre_lustre_msg_v1_lm_status,
10294 { "Lm Status", "lustre.lustre_msg_v1.lm_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10295 { &hf_lustre_lustre_msg_v1_lm_type,
10296 { "Lm Type", "lustre.lustre_msg_v1.lm_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
10297 { &hf_lustre_niobuf_remote_len,
10298 { "Len", "lustre.niobuf_remote.len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10299 { &hf_lustre_lov_mds_md_v1_lmm_magic,
10300 { "Lmm Magic", "lustre.lov_mds_md_v1.lmm_magic", FT_UINT32, BASE_HEX, VALS(lustre_lov_magic) , 0, "", HFILL }},
10301 { &hf_lustre_ptlrpc_body_pb_op_flags,
10302 { "Pb Op Flags", "lustre.ptlrpc_body.pb_op_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10303 { &hf_lustre_ost_lvb_lvb_ctime,
10304 { "Lvb Ctime", "lustre.ost_lvb.lvb_ctime",FT_ABSOLUTE_TIME,
10305 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10306 { &hf_lustre_ptlrpc_body_pb_type,
10307 { "Pb Type", "lustre.ptlrpc_body.pb_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
10308 { &hf_lustre_obd_connect_data_ocd_nllg,
10309 { "Ocd Nllg", "lustre.obd_connect_data.ocd_nllg", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10310 { &hf_lustre_obd_connect_data_ocd_nllu,
10311 { "Ocd Nllu", "lustre.obd_connect_data.ocd_nllu", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10312 { &hf_lustre_ll_fid_generation,
10313 { "Generation", "lustre.ll_fid.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10314 { &hf_lustre_ost_lvb_lvb_mtime,
10315 { "Lvb Mtime", "lustre.ost_lvb.lvb_mtime",FT_ABSOLUTE_TIME,
10316 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10317 { &hf_lustre_obd_connect_data_ocd_ibits_known,
10318 { "Ocd Ibits Known", "lustre.obd_connect_data.ocd_ibits_known", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10319 { &hf_lustre_lustre_msg_v2_lm_padding_3,
10320 { "Lm Padding 3", "lustre.lustre_msg_v2.lm_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10321 { &hf_lustre_ptlrpc_body_pb_flags,
10322 { "Pb Flags", "lustre.ptlrpc_body.pb_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10323 { &hf_lustre_obd_statfs_os_spare4,
10324 { "Os Spare4", "lustre.obd_statfs.os_spare4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10325 { &hf_lustre_obd_connect_data_ocd_group,
10326 { "Ocd Group", "lustre.obd_connect_data.ocd_group", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10327 { &hf_lustre_lov_ost_data_v1_l_object_seq,
10328 { "L Object SEQ", "lustre.lov_ost_data_v1.l_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10329 { &hf_lustre_lov_mds_md_v1_lmm_object_seq,
10330 { "Lmm Object SEQ", "lustre.lov_mds_md_v1.lmm_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10331 { &hf_lustre_obd_connect_data_ocd_brw_size,
10332 { "Ocd Brw Size", "lustre.obd_connect_data.ocd_brw_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10333 { &hf_lustre_ptlrpc_body_pb_limit,
10334 { "Pb Limit", "lustre.ptlrpc_body.pb_limit", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10335 { &hf_lustre_obd_statfs_os_maxbytes,
10336 { "Os Maxbytes", "lustre.obd_statfs.os_maxbytes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10337 { &hf_lustre_obd_statfs_os_spare5,
10338 { "Os Spare5", "lustre.obd_statfs.os_spare5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10339 { &hf_lustre_lustre_msg_v2_lm_flags,
10340 { "Lm Flags", "lustre.lustre_msg_v2.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10341 { &hf_lustre_obd_statfs_os_ffree,
10342 { "Os Ffree", "lustre.obd_statfs.os_ffree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10343 { &hf_lustre_obd_statfs_os_files,
10344 { "Os Files", "lustre.obd_statfs.os_files", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10345 { &hf_lustre_lov_mds_md_v1_lmm_stripe_count,
10346 { "Lmm Stripe Count", "lustre.lov_mds_md_v1.lmm_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10347 { &hf_lustre_lustre_msg_v1_lm_flags,
10348 { "Lm Flags", "lustre.lustre_msg_v1.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10349 { &hf_lustre_lustre_msg_v1_lm_last_committed,
10350 { "Lm Last Committed", "lustre.lustre_msg_v1.lm_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10351 { &hf_lustre_obd_statfs_os_spare9,
10352 { "Os Spare9", "lustre.obd_statfs.os_spare9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10353 { &hf_lustre_obd_connect_data_ocd_index,
10354 { "Ocd Index", "lustre.obd_connect_data.ocd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10355 { &hf_lustre_lustre_msg_v1_lm_buflens,
10356 { "Lm Buflens", "lustre.lustre_msg_v1.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10357 { &hf_lustre_obd_statfs_os_spare1,
10358 { "Os Spare1", "lustre.obd_statfs.os_spare1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10359 { &hf_lustre_obd_statfs_os_spare8,
10360 { "Os Spare8", "lustre.obd_statfs.os_spare8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10361 { &hf_lustre_lustre_msg_v1_lm_conn_cnt,
10362 { "Lm Conn Cnt", "lustre.lustre_msg_v1.lm_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10363 { &hf_lustre_ptlrpc_body_pb_transno,
10364 { "Pb Transno", "lustre.ptlrpc_body.pb_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10365 { &hf_lustre_ptlrpc_body_pb_service_time,
10366 { "Pb Service Time", "lustre.ptlrpc_body.pb_service_time",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10367 { &hf_lustre_ptlrpc_body_pb_conn_cnt,
10368 { "Pb Conn Cnt", "lustre.ptlrpc_body.pb_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10369 { &hf_lustre_ptlrpc_body_pb_opc,
10370 { "Pb Opc", "lustre.ptlrpc_body.pb_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
10371 { &hf_lustre_obd_connect_data_ocd_connect_flags,
10372 { "Ocd Connect Flags", "lustre.obd_connect_data.ocd_connect_flags", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10373 { &hf_lustre_lov_ost_data_v1_l_object_id,
10374 { "L Object Id", "lustre.lov_ost_data_v1.l_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10375 { &hf_lustre_lov_ost_data_v1_l_ost_gen,
10376 { "L Ost Gen", "lustre.lov_ost_data_v1.l_ost_gen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10377 { &hf_lustre_obd_statfs_os_bfree,
10378 { "Os Bfree", "lustre.obd_statfs.os_bfree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10379 { &hf_lustre_obd_connect_data_ocd_version,
10380 { "Ocd Version", "lustre.obd_connect_data.ocd_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10381 { &hf_lustre_lov_mds_md_v1_lmm_objects,
10382 { "Lmm Objects", "lustre.lov_mds_md_v1.lmm_objects", FT_NONE,
10383 BASE_NONE, NULL, 0, "", HFILL } },
10384 { &hf_lustre_obd_statfs_os_namelen,
10385 { "Os Namelen", "lustre.obd_statfs.os_namelen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10386 { &hf_lustre_obd_statfs_os_blocks,
10387 { "Os Blocks", "lustre.obd_statfs.os_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10388 { &hf_lustre_lustre_msg_v2_lm_secflvr,
10389 { "Lm Secflvr", "lustre.lustre_msg_v2.lm_secflvr", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10390 { &hf_lustre_lustre_msg_v1_lm_transno,
10391 { "Lm Transno", "lustre.lustre_msg_v1.lm_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10392 { &hf_lustre_lov_mds_md_v1_lmm_pattern,
10393 { "Lmm Pattern", "lustre.lov_mds_md_v1.lmm_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10394 { &hf_lustre_lustre_msg_v1_lm_opc,
10395 { "Lm Opc", "lustre.lustre_msg_v1.lm_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
10396 { &hf_lustre_obd_connect_data_ocd_grant,
10397 { "Ocd Grant", "lustre.obd_connect_data.ocd_grant", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10398 { &hf_lustre_obd_ioobj_ioo_bufcnt,
10399 { "Ioo Bufcnt", "lustre.obd_ioobj.ioo_bufcnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10400 { &hf_lustre_lustre_msg_v1_lm_version,
10401 { "Lm Version", "lustre.lustre_msg_v1.lm_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10402 { &hf_lustre_obd_statfs_os_spare7,
10403 { "Os Spare7", "lustre.obd_statfs.os_spare7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10404 { &hf_lustre_obd_statfs_os_fsid,
10405 { "Os Fsid", "lustre.obd_statfs.os_fsid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10406 { &hf_lustre_obd_connect_data_ocd_cksum_types,
10407 { "Ocd Cksum Types", "lustre.obd_connect_data.ocd_cksum_types", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10408 { &hf_lustre_ost_lvb_lvb_size,
10409 { "Lvb Size", "lustre.ost_lvb.lvb_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10410 { &hf_lustre_obd_statfs_os_type,
10411 { "Os Type", "lustre.obd_statfs.os_type", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10412 { &hf_lustre_obd_statfs_os_spare6,
10413 { "Os Spare6", "lustre.obd_statfs.os_spare6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10414 { &hf_lustre_obd_statfs_os_state,
10415 { "Os State", "lustre.obd_statfs.os_state", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10416 { &hf_lustre_obd_statfs_os_spare3,
10417 { "Os Spare3", "lustre.obd_statfs.os_spare3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10418 { &hf_lustre_lustre_msg_v2_lm_magic,
10419 { "Lm Magic", "lustre.lustre_msg_v2.lm_magic", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10420 { &hf_lustre_lov_mds_md_v1_lmm_object_id,
10421 { "Lmm Object Id", "lustre.lov_mds_md_v1.lmm_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10422 { &hf_lustre_ptlrpc_body_pb_last_seen,
10423 { "Pb Last Seen", "lustre.ptlrpc_body.pb_last_seen", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10424 { &hf_lustre_obd_ioobj_ioo_max_brw, /* TODO : create the
10425 corresponding value_string */
10426 { "Ioo Max BRW Size", "lustre.obd_ioobj.ioo_max_brw", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
10427 { &hf_lustre_ptlrpc_body_pb_last_xid,
10428 { "Pb Last Xid", "lustre.ptlrpc_body.pb_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10429 { &hf_lustre_ptlrpc_body_pb_status,
10430 { "Pb Status", "lustre.ptlrpc_body.pb_status", FT_INT32, BASE_DEC, NULL, 0, "", HFILL }},
10431 { &hf_lustre_niobuf_remote_flags,
10432 { "Flags", "lustre.niobuf_remote.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10433 { &hf_lustre_ll_fid_id,
10434 { "Id", "lustre.ll_fid.id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10435 { &hf_lustre_ost_lvb_lvb_blocks,
10436 { "Lvb Blocks", "lustre.ost_lvb.lvb_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10437 { &hf_lustre_lustre_msg_v2_lm_padding_2,
10438 { "Lm Padding 2", "lustre.lustre_msg_v2.lm_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10439 { &hf_lustre_obd_connect_data_padding1,
10440 { "Padding1", "lustre.obd_connect_data.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10441 { &hf_lustre_lov_ost_data_v1_l_ost_idx,
10442 { "L Ost Idx", "lustre.lov_ost_data_v1.l_ost_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10443 { &hf_lustre_obd_connect_data_padding2,
10444 { "Padding2", "lustre.obd_connect_data.padding2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10445 { &hf_lustre_obd_ioobj_ioo_seq,
10446 { "Ioo Gr", "lustre.obd_ioobj.ioo_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10447 { &hf_lustre_niobuf_remote_offset,
10448 { "Offset", "lustre.niobuf_remote.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10449 { &hf_lustre_obd_statfs_os_spare2,
10450 { "Os Spare2", "lustre.obd_statfs.os_spare2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10451 { &hf_lustre_lustre_msg_v2_lm_bufcount,
10452 { "Lm Bufcount", "lustre.lustre_msg_v2.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10453 { &hf_lustre_ptlrpc_body_pb_handle,
10454 { "Pb Handle", "lustre.ptlrpc_body.pb_handle", FT_NONE,
10455 BASE_NONE, NULL, 0, "", HFILL } },
10456 { &hf_lustre_obd_connect_data_ocd_transno,
10457 { "Ocd Transno", "lustre.obd_connect_data.ocd_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10458 { &hf_lustre_lustre_msg_v1_lm_magic,
10459 { "Lm Magic", "lustre.lustre_msg_v1.lm_magic", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10460 { &hf_lustre_ptlrpc_body_pb,
10461 { "ptl rpc", "lustre.ptlrpc_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10463 { &hf_lustre_obd_uuid,
10464 { "obd uid name", "lustre.obd_uid", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10465 { &hf_lustre_obd_connect_data ,
10466 { "obd connect data", "lustre.obd_connect_data", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10468 { &hf_lustre_ldlm_intent,
10469 { "ldlm intent", "lustre.ldlm_intent", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10471 { &hf_lustre_obd_ioobj,
10472 { "lustre obd ioobj", "lustre.obd_ioobj", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10473 { &hf_lustre_niobuf_remote,
10474 { "lustre niobuf remote", "lustre.niobuf_remote", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10475 { &hf_lustre_ost_key,
10476 { "lustre ost key", "lustre.ost_key", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10477 { &hf_lustre_ost_val,
10478 { "lustre ost val", "lustre.ost_val", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10479 { &hf_lustre_llogd_chunk,
10480 { "lustre llogd chunk", "lustre.llogd_chunk", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10481 { &hf_lustre_llogd_keyword,
10482 { "lustre llogd keyword", "lustre.llogd_keyword", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10483 { &hf_lustre_llogd_client,
10484 { "lustre llogd client", "lustre.llogd_client", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10485 { &hf_lustre_llogd_name,
10486 { "lustre llogd name", "lustre.llogd_name", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10487 { &hf_lustre_llogd_log_hdr,
10488 { "lustre llogd log hdr", "lustre.llogd_log_hdr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10489 { &hf_lustre_llog_logid_rec,
10490 { "lustre llog logid rec", "lustre.llog_logid_rec", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10492 { &hf_lustre_llogd_body,
10493 { "lustre llogd body", "lustre.llogd_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10495 { "lustre nio", "lustre.nio", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10496 { &hf_lustre_ost_body,
10497 { "ost body", "lustre.ost_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10498 { &hf_lustre_obd_statfs,
10499 { "obd statfs", "lustre.obd_statfs", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10500 { &hf_lustre_obd_quotactl,
10501 { "obd quotactl", "lustre.obd_quotacl", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10502 { &hf_lustre_quota_adjust_qunit,
10503 { "obd quota adjust qunit", "lustre.quota_adjust_qunit", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10504 { &hf_lustre_llog_unlink_rec_lur_tail,
10505 { "Lur Tail", "lustre.llog_unlink_rec.lur_tail", FT_NONE,
10506 BASE_NONE, NULL, 0, "", HFILL } },
10507 { &hf_lustre_llog_size_change_rec_lsc_io_epoch,
10508 { "Lsc Io Epoch", "lustre.llog_size_change_rec.lsc_io_epoch", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10509 { &hf_lustre_mgs_target_info_mti_flags,
10510 { "Mti Flags", "lustre.mgs_target_info.mti_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10511 { &hf_lustre_ldlm_reply_lock_policy_res1,
10512 { "Lock Policy Res1", "lustre.ldlm_reply.lock_policy_res1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10513 { &hf_lustre_llogd_body_lgd_len,
10514 { "Lgd Len", "lustre.llogd_body.lgd_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10515 { &hf_lustre_qunit_data_old_qd_id,
10516 { "Qd Id", "lustre.qunit_data_old.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10517 { &hf_lustre_llog_logid_rec_padding1,
10518 { "Padding1", "lustre.llog_logid_rec.padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10519 { &hf_lustre_quota_adjust_qunit_padding1,
10520 { "Padding1", "lustre.quota_adjust_qunit.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10521 { &hf_lustre_llog_size_change_rec_lsc_fid,
10522 { "Lsc Fid", "lustre.llog_size_change_rec.lsc_fid", FT_NONE,
10523 BASE_NONE, NULL, 0, "", HFILL } },
10524 { &hf_lustre_llog_rec_hdr_padding,
10525 { "Padding", "lustre.llog_rec_hdr.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10526 { &hf_lustre_obdo_o_nlink,
10527 { "O Nlink", "lustre.obdo.o_nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10528 { &hf_lustre_ldlm_extent_gid,
10529 { "Gid", "lustre.ldlm_extent.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10530 { &hf_lustre_obdo_o_uid,
10531 { "O Uid", "lustre.obdo.o_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10532 { &hf_lustre_mds_xattr_name,
10533 { "mds xattr name", "lustre.mds_xattr_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10534 { &hf_lustre_lov_mds_md_v1,
10535 { "lov mds md v1", "lustre.lov_mds_md_v1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10536 { &hf_lustre_llog_cookie,
10537 { "llog cookie", "lustre.llog_cookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10538 { &hf_lustre_mds_md_data,
10539 { "mds md data", "lustre.mds_md_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10540 { &hf_lustre_mds_reint_opcode,
10541 { "mds reint opcode", "lustre.mds_reint_opcode", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10542 { &hf_lustre_mds_xattr_eadata,
10543 { "mds xattr eadata", "lustre.mds_xattr_eadata", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10544 { &hf_lustre_reint_name,
10545 { "mds reint name", "lustre.mds_reint_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10546 { &hf_lustre_reint_old_name,
10547 { "mds reint old name", "lustre.mds_reint_old_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10548 { &hf_lustre_reint_new_name,
10549 { "mds reint new name", "lustre.mds_reint_new_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10552 { &hf_lustre_obdo_o_valid,
10553 { "O Valid", "lustre.obdo.o_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10554 { &hf_lustre_ldlm_reply_lock_flags,
10555 { "Lock Flags", "lustre.ldlm_reply.lock_flags", FT_UINT32,BASE_HEX, NULL, 0, "", HFILL }},
10557 {&hf_lustre_ldlm_fl_lock_changed, {"LDLM_FL_LOCK_CHANGED", "lustre.ldlm_fl_lock_changed", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_LOCK_CHANGED, "", HFILL } },
10558 {&hf_lustre_ldlm_fl_block_granted, {"LDLM_FL_BLOCK_GRANTED", "lustre.ldlm_fl_block_granted", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BLOCK_GRANTED, "", HFILL } },
10559 {&hf_lustre_ldlm_fl_block_conv, {"LDLM_FL_BLOCK_CONV", "lustre.ldlm_fl_block_conv", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BLOCK_CONV, "", HFILL } },
10560 {&hf_lustre_ldlm_fl_block_wait, {"LDLM_FL_BLOCK_WAIT", "lustre.ldlm_fl_block_wait", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BLOCK_WAIT, "", HFILL } },
10561 {&hf_lustre_ldlm_fl_cbpending, {"LDLM_FL_CBPENDING", "lustre.ldlm_fl_cbpending", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CBPENDING, "", HFILL } },
10562 {&hf_lustre_ldlm_fl_ast_sent, {"LDLM_FL_AST_SENT", "lustre.ldlm_fl_ast_sent", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_AST_SENT, "", HFILL } },
10563 {&hf_lustre_ldlm_fl_wait_noreproc, {"LDLM_FL_WAIT_NOREPROC", "lustre.ldlm_fl_wait_noreproc", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_WAIT_NOREPROC, "", HFILL } },
10564 {&hf_lustre_ldlm_fl_cancel, {"LDLM_FL_CANCEL", "lustre.ldlm_fl_cancel", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CANCEL, "", HFILL } },
10565 {&hf_lustre_ldlm_fl_replay, {"LDLM_FL_REPLAY", "lustre.ldlm_fl_replay", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_REPLAY, "", HFILL } },
10566 {&hf_lustre_ldlm_fl_intent_only, {"LDLM_FL_INTENT_ONLY", "lustre.ldlm_fl_intent_only", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_INTENT_ONLY, "", HFILL } },
10567 {&hf_lustre_ldlm_fl_local_only, {"LDLM_FL_LOCAL_ONLY", "lustre.ldlm_fl_local_only", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_LOCAL_ONLY, "", HFILL } },
10568 {&hf_lustre_ldlm_fl_failed, {"LDLM_FL_FAILED", "lustre.ldlm_fl_failed", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_FAILED, "", HFILL } },
10569 {&hf_lustre_ldlm_fl_has_intent, {"LDLM_FL_HAS_INTENT", "lustre.ldlm_fl_has_intent", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_HAS_INTENT, "", HFILL } },
10570 {&hf_lustre_ldlm_fl_canceling, {"LDLM_FL_CANCELING", "lustre.ldlm_fl_canceling", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CANCELING, "", HFILL } },
10571 {&hf_lustre_ldlm_fl_local, {"LDLM_FL_LOCAL", "lustre.ldlm_fl_local", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_LOCAL, "", HFILL } },
10572 {&hf_lustre_ldlm_fl_warn, {"LDLM_FL_WARN", "lustre.ldlm_fl_warn", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_WARN, "", HFILL } },
10573 {&hf_lustre_ldlm_fl_discard_data, {"LDLM_FL_DISCARD_DATA", "lustre.ldlm_fl_discard_data", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_DISCARD_DATA, "", HFILL } },
10574 {&hf_lustre_ldlm_fl_no_timeout, {"LDLM_FL_NO_TIMEOUT", "lustre.ldlm_fl_no_timeout", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_NO_TIMEOUT, "", HFILL } },
10575 {&hf_lustre_ldlm_fl_block_nowait, {"LDLM_FL_BLOCK_NOWAIT", "lustre.ldlm_fl_block_nowait", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BLOCK_NOWAIT, "", HFILL } },
10576 {&hf_lustre_ldlm_fl_test_lock, {"LDLM_FL_TEST_LOCK", "lustre.ldlm_fl_test_lock", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_TEST_LOCK, "", HFILL } },
10577 {&hf_lustre_ldlm_fl_lvb_ready, {"LDLM_FL_LVB_READY", "lustre.ldlm_fl_lvb_ready", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_LVB_READY, "", HFILL } },
10578 {&hf_lustre_ldlm_fl_kms_ignore, {"LDLM_FL_KMS_IGNORE", "lustre.ldlm_fl_kms_ignore", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_KMS_IGNORE, "", HFILL } },
10579 {&hf_lustre_ldlm_fl_no_lru, {"LDLM_FL_NO_LRU", "lustre.ldlm_fl_no_lru", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_NO_LRU, "", HFILL } },
10580 {&hf_lustre_ldlm_fl_cancel_on_block, {"LDLM_FL_CANCEL_ON_BLOCK", "lustre.ldlm_fl_cancel_on_block", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CANCEL_ON_BLOCK, "", HFILL } },
10581 {&hf_lustre_ldlm_fl_cp_reqd, {"LDLM_FL_CP_REQD", "lustre.ldlm_fl_cp_reqd", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CP_REQD, "", HFILL } },
10582 {&hf_lustre_ldlm_fl_cleaned, {"LDLM_FL_CLEANED", "lustre.ldlm_fl_cleaned", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CLEANED, "", HFILL } },
10583 {&hf_lustre_ldlm_fl_atomic_cb, {"LDLM_FL_ATOMIC_CB", "lustre.ldlm_fl_atomic_cb", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_ATOMIC_CB, "", HFILL } },
10584 {&hf_lustre_ldlm_fl_bl_ast, {"LDLM_FL_BL_AST", "lustre.ldlm_fl_bl_ast", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BL_AST, "", HFILL } },
10585 {&hf_lustre_ldlm_fl_bl_done, {"LDLM_FL_BL_DONE", "lustre.ldlm_fl_bl_done", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_BL_DONE, "", HFILL } },
10586 {&hf_lustre_ldlm_fl_deny_on_contention, {"LDLM_FL_DENY_ON_CONTENTION", "lustre.ldlm_fl_deny_on_contention", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_DENY_ON_CONTENTION, "", HFILL } },
10587 {&hf_lustre_ldlm_ast_discard_data, {"LDLM_AST_DISCARD_DATA", "lustre.ldlm_ast_discard_data", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_AST_DISCARD_DATA, "", HFILL } },
10589 { &hf_lustre_obdo_o_misc,
10590 { "O Misc", "lustre.obdo.o_misc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10591 { &hf_lustre_ldlm_request_lock_handle,
10592 { "Lock Handle", "lustre.ldlm_request.lock_handle", FT_NONE,
10593 BASE_NONE, NULL, 0, "", HFILL } },
10594 { &hf_lustre_llog_logid_lgl_oid,
10595 { "Lgl Oid", "lustre.llog_logid.lgl_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10596 { &hf_lustre_ldlm_inodebits_bits,
10597 { "Bits", "lustre.ldlm_inodebits.bits", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10598 { &hf_lustre_llog_log_hdr_llh_count,
10599 { "Llh Count", "lustre.llog_log_hdr.llh_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10600 { &hf_lustre_llog_gen_rec_lgr_tail,
10601 { "Lgr Tail", "lustre.llog_gen_rec.lgr_tail", FT_NONE,
10602 BASE_NONE, NULL, 0, "", HFILL } },
10603 { &hf_lustre_llog_catid_lci_padding3,
10604 { "Lci Padding3", "lustre.llog_catid.lci_padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10605 { &hf_lustre_qunit_data_qd_qunit,
10606 { "Qd Qunit", "lustre.qunit_data.qd_qunit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10607 { &hf_lustre_llog_setattr_rec_padding,
10608 { "Padding", "lustre.llog_setattr_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10609 { &hf_lustre_llog_cookie_lgc_lgl,
10610 { "Lgc Lgl", "lustre.llog_cookie.lgc_lgl", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10611 { &hf_lustre_obd_quotactl_qc_dqinfo,
10612 { "Qc Dqinfo", "lustre.obd_quotactl.qc_dqinfo", FT_NONE,
10613 BASE_NONE, NULL, 0, "", HFILL } },
10614 { &hf_lustre_llog_log_hdr_llh_bitmap,
10615 { "Llh Bitmap", "lustre.llog_log_hdr.llh_bitmap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10616 { &hf_lustre_obd_quotactl_qc_stat,
10617 { "Qc Stat", "lustre.obd_quotactl.qc_stat", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10618 { &hf_lustre_qunit_data_old2_qd_id,
10619 { "Qd Id", "lustre.qunit_data_old2.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10620 { &hf_lustre_llog_logid_rec_padding2,
10621 { "Padding2", "lustre.llog_logid_rec.padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10622 { &hf_lustre_llog_orphan_rec_lor_tail,
10623 { "Lor Tail", "lustre.llog_orphan_rec.lor_tail", FT_NONE,
10624 BASE_NONE, NULL, 0, "", HFILL } },
10625 { &hf_lustre_llog_logid_rec_padding5,
10626 { "Padding5", "lustre.llog_logid_rec.padding5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10627 /*-------------------------------------------------------------------------------------------------------------*/
10628 /*all this flags are uint64, but I don't find the way to use something like TFS() with a Uint64*/
10629 /*like TFS() with a Uint64 */
10630 { &hf_lustre_ldlm_intent_opc_open,
10631 { "open", "lustre.ldlm_intent.opc_open", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_OPEN, "", HFILL } },
10632 { &hf_lustre_ldlm_intent_opc_creat,
10633 { "creat", "lustre.ldlm_intent.opc_creat", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_CREAT , "", HFILL } },
10634 { &hf_lustre_ldlm_intent_opc_readdir,
10635 { "readdir", "lustre.ldlm_intent.opc_readdir", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_READDIR , "", HFILL } },
10636 { &hf_lustre_ldlm_intent_opc_getattr,
10637 { "getattr", "lustre.ldlm_intent.opc_getattr", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_GETATTR, "", HFILL } },
10638 { &hf_lustre_ldlm_intent_opc_lookup,
10639 { "lookup", "lustre.ldlm_intent.opc_lookup", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_LOOKUP , "", HFILL } },
10640 { &hf_lustre_ldlm_intent_opc_unlink,
10641 { "unlink", "lustre.ldlm_intent.opc_unlink", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_UNLINK , "", HFILL } },
10642 { &hf_lustre_ldlm_intent_opc_getxattr,
10643 { "getxattr", "lustre.ldlm_intent.opc_getxattr", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_GETXATTR , "", HFILL } },
10644 { &hf_lustre_ldlm_intent_opc_exec,
10645 { "exec", "lustre.ldlm_intent.opc_exec", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_EXEC , "", HFILL } },
10646 { &hf_lustre_ldlm_intent_opc_pin,
10647 { "pin", "lustre.ldlm_intent.opc_pin", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_PIN , "", HFILL } },
10648 /*-------------------------------------------------------------------*/
10649 { &hf_lustre_ldlm_intent_opc,
10650 { "intent opcode", "lustre.ldlm_intent.opc", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10651 { &hf_lustre_llog_rec_hdr_lrh_type,
10652 { "Lrh Type", "lustre.llog_rec_hdr.lrh_type", FT_UINT32, BASE_HEX, VALS(lustre_llog_op_type), 0, "", HFILL }},
10653 { &hf_lustre_llog_rec_hdr_lrh_len,
10654 { "Lrh Len", "lustre.llog_rec_hdr.lrh_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10655 { &hf_lustre_llog_setattr_rec_lsr_uid,
10656 { "Lsr Uid", "lustre.llog_setattr_rec.lsr_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10657 { &hf_lustre_lov_desc_ld_padding_1,
10658 { "Ld Padding 1", "lustre.lov_desc.ld_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10659 { &hf_lustre_obdo_o_padding_4,
10660 { "O Padding 4", "lustre.obdo.o_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10661 { &hf_lustre_mgs_target_info_padding,
10662 { "Padding", "lustre.mgs_target_info.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10663 { &hf_lustre_obd_quotactl_qc_dqblk,
10664 { "Qc Dqblk", "lustre.obd_quotactl.qc_dqblk", FT_NONE,
10665 BASE_NONE, NULL, 0, "", HFILL } },
10666 { &hf_lustre_llogd_conn_body_lgdc_gen,
10667 { "Lgdc Gen", "lustre.llogd_conn_body.lgdc_gen", FT_NONE,
10668 BASE_NONE, NULL, 0, "", HFILL } },
10669 { &hf_lustre_llog_log_hdr_llh_tail,
10670 { "Llh Tail", "lustre.llog_log_hdr.llh_tail", FT_NONE,
10671 BASE_NONE, NULL, 0, "", HFILL } },
10672 { &hf_lustre_obdo_o_size,
10673 { "O Size", "lustre.obdo.o_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10674 { &hf_lustre_ldlm_extent_start,
10675 { "Start", "lustre.ldlm_extent.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10676 { &hf_lustre_llog_size_change_rec_lsc_hdr,
10677 { "Lsc Hdr", "lustre.llog_size_change_rec.lsc_hdr", FT_NONE,
10678 BASE_NONE, NULL, 0, "", HFILL } },
10679 { &hf_lustre_llog_logid_lgl_oseq,
10680 { "Lgl SEQ", "lustre.llog_logid.lgl_oseq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10681 { &hf_lustre_llog_cookie_lgc_padding,
10682 { "Lgc Padding", "lustre.llog_cookie.lgc_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10683 { &hf_lustre_qunit_data_old_qd_type,
10684 { "Qd Type", "lustre.qunit_data_old.qd_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10685 { &hf_lustre_ldlm_flock_blocking_export,
10686 { "Blocking Export", "lustre.ldlm_flock.blocking_export", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10687 { &hf_lustre_lov_desc_ld_pattern,
10688 { "Ld Pattern", "lustre.lov_desc.ld_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10689 { &hf_lustre_qunit_data_qd_id,
10690 { "Qd Id", "lustre.qunit_data.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10691 { &hf_lustre_mgs_target_info_mti_fsname,
10692 { "Mti Fsname", "lustre.mgs_target_info.mti_fsname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10693 { &hf_lustre_ldlm_request_lock_flags,
10694 { "Lock Flags", "lustre.ldlm_request.lock_flags", FT_UINT32, BASE_HEX, NULL, 0 , "", HFILL }},
10695 { &hf_lustre_obdo_o_mode,
10696 { "O Mode", "lustre.obdo.o_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10697 { &hf_lustre_mgs_target_info_mti_svname,
10698 { "Mti Svname", "lustre.mgs_target_info.mti_svname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10699 { &hf_lustre_llogd_body_lgd_logid,
10700 { "Lgd Logid", "lustre.llogd_body.lgd_logid", FT_NONE,
10701 BASE_NONE, NULL, 0, "", HFILL } },
10702 { &hf_lustre_llog_log_hdr_llh_size,
10703 { "Llh Size", "lustre.llog_log_hdr.llh_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10704 { &hf_lustre_obdo_o_handle,
10705 { "O Handle", "lustre.obdo.o_handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10706 { &hf_lustre_obdo_o_atime,
10707 { "O Atime", "lustre.obdo.o_atime",FT_ABSOLUTE_TIME,
10708 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10709 { &hf_lustre_quota_adjust_qunit_qaq_id,
10710 { "Qaq Id", "lustre.quota_adjust_qunit.qaq_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10711 { &hf_lustre_ldlm_lock_desc_l_policy_data,
10712 { "L Policy Data", "lustre.ldlm_lock_desc.l_policy_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10713 { &hf_lustre_obd_quotactl_qc_cmd,
10714 { "Qc Cmd", "lustre.obd_quotactl.qc_cmd", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10715 { &hf_lustre_qunit_data_padding,
10716 { "Padding", "lustre.qunit_data.padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10717 { &hf_lustre_quota_adjust_qunit_qaq_flags,
10718 { "Qaq Flags", "lustre.quota_adjust_qunit.qaq_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10719 { &hf_lustre_ldlm_lock_desc_l_granted_mode,
10720 { "L Granted Mode", "lustre.ldlm_lock_desc.l_granted_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10721 { &hf_lustre_obdo_o_seq,
10722 { "O SEQ", "lustre.obdo.o_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10723 { &hf_lustre_obdo_o_gid,
10724 { "O Gid", "lustre.obdo.o_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10725 { &hf_lustre_llog_catid_lci_logid,
10726 { "Lci Logid", "lustre.llog_catid.lci_logid", FT_NONE,
10727 BASE_NONE, NULL, 0, "", HFILL } },
10728 { &hf_lustre_llog_rec_tail_lrt_index,
10729 { "Lrt Index", "lustre.llog_rec_tail.lrt_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10730 { &hf_lustre_lov_desc_ld_default_stripe_count,
10731 { "Ld Default Stripe Count", "lustre.lov_desc.ld_default_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10732 { &hf_lustre_ldlm_resource_desc_lr_padding,
10733 { "Lr Padding", "lustre.ldlm_resource_desc.lr_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10734 { &hf_lustre_cfg_marker_cm_vers,
10735 { "Cm Vers", "lustre.cfg_marker.cm_vers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10736 { &hf_lustre_llog_unlink_rec_lur_hdr,
10737 { "Lur Hdr", "lustre.llog_unlink_rec.lur_hdr", FT_NONE,
10738 BASE_NONE, NULL, 0, "", HFILL } },
10739 { &hf_lustre_llogd_body_lgd_index,
10740 { "Lgd Index", "lustre.llogd_body.lgd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10741 { &hf_lustre_cfg_marker_cm_tgtname,
10742 { "Cm Tgtname", "lustre.cfg_marker.cm_tgtname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10743 { &hf_lustre_llog_setattr_rec_lsr_ogen,
10744 { "Lsr Ogen", "lustre.llog_setattr_rec.lsr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10745 { &hf_lustre_llog_logid_rec_lid_hdr,
10746 { "Lid Hdr", "lustre.llog_logid_rec.lid_hdr", FT_NONE,
10747 BASE_NONE, NULL, 0, "", HFILL } },
10748 { &hf_lustre_obdo_o_ioepoch,
10749 { "O IOEpoch", "lustre.obdo.o_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10750 { &hf_lustre_ost_body_oa,
10751 { "Oa", "lustre.ost_body.oa", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10752 { &hf_lustre_llog_logid_rec_padding3,
10753 { "Padding3", "lustre.llog_logid_rec.padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10754 { &hf_lustre_llog_log_hdr_llh_flags,
10755 { "Llh Flags", "lustre.llog_log_hdr.llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10756 {&hf_lustre_llog_hdr_llh_flag_zap_when_empty,
10757 {"LLOG_F_ZAP_WHEN_EMPTY","lustre.lustre.llog_log_hdr.llh_flag_zap",FT_BOOLEAN,32,TFS(&lnet_flags_set_truth),LLOG_F_ZAP_WHEN_EMPTY,"",HFILL } },
10758 {&hf_lustre_llog_hdr_llh_flag_is_cat,
10759 {"LLOG_F_IS_CAT","lustre.lustre.llog_log_hdr.llh_flag_cat",FT_BOOLEAN,32,TFS(&lnet_flags_set_truth),LLOG_F_IS_CAT,"",HFILL } },
10760 {&hf_lustre_llog_hdr_llh_flag_is_play,
10761 {"LOG_F_IS_PLAIN","lustre.lustre.llog_log_hdr.llh_flag_play",FT_BOOLEAN,32,TFS(&lnet_flags_set_truth),LLOG_F_IS_PLAIN,"",HFILL } },
10763 { &hf_lustre_llog_setattr_rec_lsr_oid,
10764 { "Lsr Oid", "lustre.llog_setattr_rec.lsr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10765 { &hf_lustre_llog_size_change_rec_padding,
10766 { "Padding", "lustre.llog_size_change_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10767 { &hf_lustre_mgs_target_info_mti_config_ver,
10768 { "Mti Config Ver", "lustre.mgs_target_info.mti_config_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10769 { &hf_lustre_cfg_marker_cm_createtime,
10770 { "Cm Createtime", "lustre.cfg_marker.cm_createtime",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10771 { &hf_lustre_qunit_data_old_qd_count,
10772 { "Qd Count", "lustre.qunit_data_old.qd_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10773 { &hf_lustre_llog_catid_lci_padding1,
10774 { "Lci Padding1", "lustre.llog_catid.lci_padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10775 { &hf_lustre_lov_desc_ld_active_tgt_count,
10776 { "Ld Active Tgt Count", "lustre.lov_desc.ld_active_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10777 { &hf_lustre_obdo_o_lcookie,
10778 { "O Lcookie", "lustre.obdo.o_lcookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10779 { &hf_lustre_llog_gen_rec_lgr_gen,
10780 { "Lgr Gen", "lustre.llog_gen_rec.lgr_gen", FT_NONE,
10781 BASE_NONE, NULL, 0, "", HFILL } },
10782 { &hf_lustre_obdo_o_id,
10783 { "O Id", "lustre.obdo.o_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10784 { &hf_lustre_mgs_target_info_mti_uuid,
10785 { "Mti Uuid", "lustre.mgs_target_info.mti_uuid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10786 { &hf_lustre_llog_rec_hdr_lrh_index,
10787 { "Lrh Index", "lustre.llog_rec_hdr.lrh_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10788 { &hf_lustre_llog_setattr_rec_lsr_hdr,
10789 { "Lsr Hdr", "lustre.llog_setattr_rec.lsr_hdr", FT_NONE,
10790 BASE_NONE, NULL, 0, "", HFILL } },
10791 { &hf_lustre_mgs_target_info_mti_stripe_index,
10792 { "Mti Stripe Index", "lustre.mgs_target_info.mti_stripe_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10793 { &hf_lustre_llog_gen_conn_cnt,
10794 { "Conn Cnt", "lustre.llog_gen.conn_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10795 { &hf_lustre_obdo_o_padding_6,
10796 { "O Padding 6", "lustre.obdo.o_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10797 { &hf_lustre_llog_cookie_lgc_index,
10798 { "Lgc Index", "lustre.llog_cookie.lgc_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10799 { &hf_lustre_lov_desc_ld_uuid,
10800 { "Ld Uuid", "lustre.lov_desc.ld_uuid", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10801 { &hf_lustre_ldlm_reply_lock_desc,
10802 { "Lock Desc", "lustre.ldlm_reply.lock_desc", FT_NONE,
10803 BASE_NONE, NULL, 0, "", HFILL } },
10804 { &hf_lustre_lov_desc_ld_padding_0,
10805 { "Ld Padding 0", "lustre.lov_desc.ld_padding_0", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10806 { &hf_lustre_llog_unlink_rec_lur_ogen,
10807 { "Lur Ogen", "lustre.llog_unlink_rec.lur_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10808 { &hf_lustre_llog_orphan_rec_lor_hdr,
10809 { "Lor Hdr", "lustre.llog_orphan_rec.lor_hdr", FT_NONE,
10810 BASE_NONE, NULL, 0, "", HFILL } },
10811 { &hf_lustre_cfg_marker_cm_flags,
10812 { "Cm Flags", "lustre.cfg_marker.cm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10813 { &hf_lustre_obdo_o_padding_3,
10814 { "O Padding 3", "lustre.obdo.o_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10815 { &hf_lustre_ldlm_request_lock_desc,
10816 { "Lock Desc", "lustre.ldlm_request.lock_desc", FT_NONE,
10817 BASE_NONE, NULL, 0, "", HFILL } },
10818 { &hf_lustre_llog_orphan_rec_padding,
10819 { "Padding", "lustre.llog_orphan_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10820 { &hf_lustre_obdo_o_flags,
10821 { "O Flags", "lustre.obdo.o_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10822 { &hf_lustre_mgs_target_info_mti_params,
10823 { "Mti Params", "lustre.mgs_target_info.mti_params", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10824 { &hf_lustre_llog_logid_lgl_ogen,
10825 { "Lgl Ogen", "lustre.llog_logid.lgl_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10826 { &hf_lustre_cfg_marker_cm_comment,
10827 { "Cm Comment", "lustre.cfg_marker.cm_comment", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10828 { &hf_lustre_llog_unlink_rec_lur_oid,
10829 { "Lur Oid", "lustre.llog_unlink_rec.lur_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10830 { &hf_lustre_qunit_data_qd_count,
10831 { "Qd Count", "lustre.qunit_data.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10832 { &hf_lustre_obdo_o_mtime,
10833 { "O Mtime", "lustre.obdo.o_mtime",FT_ABSOLUTE_TIME,
10834 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10835 { &hf_lustre_obdo_o_blksize,
10836 { "O Blksize", "lustre.obdo.o_blksize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10837 { &hf_lustre_ldlm_res_id_name,
10838 { "Name", "lustre.ldlm_res_id.name", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10839 { &hf_lustre_ldlm_reply_lock_handle,
10840 { "Lock Handle", "lustre.ldlm_reply.lock_handle", FT_NONE,
10841 BASE_NONE, NULL, 0, "", HFILL } },
10842 { &hf_lustre_llogd_body_lgd_saved_index,
10843 { "Lgd Saved Index", "lustre.llogd_body.lgd_saved_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10844 { &hf_lustre_qunit_data_old_qd_isblk,
10845 { "Qd Isblk", "lustre.qunit_data_old.qd_isblk", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10846 { &hf_lustre_obdo_o_blocks,
10847 { "O Blocks", "lustre.obdo.o_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10848 { &hf_lustre_lov_desc_ld_padding_2,
10849 { "Ld Padding 2", "lustre.lov_desc.ld_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10850 { &hf_lustre_llog_logid_rec_lid_tail,
10851 { "Lid Tail", "lustre.llog_logid_rec.lid_tail", FT_NONE,
10852 BASE_NONE, NULL, 0, "", HFILL } },
10853 { &hf_lustre_obdo_o_grant,
10854 { "O Grant", "lustre.obdo.o_grant", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10855 { &hf_lustre_obdo_o_uid_h,
10856 { "O Uid H", "lustre.obdo.o_uid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10857 { &hf_lustre_obdo_o_gid_h,
10858 { "O Gid H", "lustre.obdo.o_gid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10859 { &hf_lustre_quota_adjust_qunit_qaq_iunit_sz,
10860 { "Qaq Iunit Sz", "lustre.quota_adjust_qunit.qaq_iunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10861 { &hf_lustre_llog_unlink_rec_padding,
10862 { "Padding", "lustre.llog_unlink_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10863 { &hf_lustre_ldlm_lock_desc_l_req_mode,
10864 { "L Req Mode", "lustre.ldlm_lock_desc.l_req_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10865 { &hf_lustre_ldlm_extent_end,
10866 { "End", "lustre.ldlm_extent.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10867 { &hf_lustre_llog_gen_rec_lgr_hdr,
10868 { "Lgr Hdr", "lustre.llog_gen_rec.lgr_hdr", FT_NONE,
10869 BASE_NONE, NULL, 0, "", HFILL } },
10870 { &hf_lustre_llog_orphan_rec_lor_ogen,
10871 { "Lor Ogen", "lustre.llog_orphan_rec.lor_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10872 { &hf_lustre_llogd_body_lgd_llh_flags,
10873 { "Lgd Llh Flags", "lustre.llogd_body.lgd_llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10874 { &hf_lustre_llog_log_hdr_llh_cat_idx,
10875 { "Llh Cat Idx", "lustre.llog_log_hdr.llh_cat_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10876 { &hf_lustre_llog_log_hdr_llh_bitmap_offset,
10877 { "Llh Bitmap Offset", "lustre.llog_log_hdr.llh_bitmap_offset", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10878 { &hf_lustre_ldlm_reply_lock_padding,
10879 { "Lock Padding", "lustre.ldlm_reply.lock_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10880 { &hf_lustre_obd_quotactl_qc_id,
10881 { "Qc Id", "lustre.obd_quotactl.qc_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10882 { &hf_lustre_llog_logid_rec_padding4,
10883 { "Padding4", "lustre.llog_logid_rec.padding4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10884 { &hf_lustre_llog_setattr_rec_lsr_gid,
10885 { "Lsr Gid", "lustre.llog_setattr_rec.lsr_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10886 { &hf_lustre_obd_quotactl_qc_type,
10887 { "Qc Type", "lustre.obd_quotactl.qc_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10888 { &hf_lustre_cfg_marker_padding,
10889 { "Padding", "lustre.cfg_marker.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10890 { &hf_lustre_mgs_target_info_mti_nids,
10891 { "Mti Nids", "lustre.mgs_target_info.mti_nids", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10892 { &hf_lustre_obdo_o_stripe_idx,
10893 { "O Stripe Idx", "lustre.obdo.o_stripe_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10894 { &hf_lustre_llogd_conn_body_lgdc_logid,
10895 { "Lgdc Logid", "lustre.llogd_conn_body.lgdc_logid", FT_NONE,
10896 BASE_NONE, NULL, 0, "", HFILL } },
10897 { &hf_lustre_ldlm_flock_blocking_pid,
10898 { "Blocking Pid", "lustre.ldlm_flock.blocking_pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10899 { &hf_lustre_lov_desc_ld_tgt_count,
10900 { "Ld Tgt Count", "lustre.lov_desc.ld_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10901 { &hf_lustre_llogd_body_lgd_cur_offset,
10902 { "Lgd Cur Offset", "lustre.llogd_body.lgd_cur_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10903 { &hf_lustre_qunit_data_old2_qd_count,
10904 { "Qd Count", "lustre.qunit_data_old2.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10905 { &hf_lustre_opnum,
10906 { "Operation", "lustre.opnum", FT_UINT16, BASE_DEC, NULL, 0, "", HFILL }},
10907 { &hf_lustre_qunit_data_old2_qd_flags,
10908 { "Qd Flags", "lustre.qunit_data_old2.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10909 { &hf_lustre_ldlm_flock_start,
10910 { "Start", "lustre.ldlm_flock.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10911 { &hf_lustre_quota_adjust_qunit_qaq_bunit_sz,
10912 { "Qaq Bunit Sz", "lustre.quota_adjust_qunit.qaq_bunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10913 { &hf_lustre_ldlm_flock_pid,
10914 { "Pid", "lustre.ldlm_flock.pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10915 { &hf_lustre_lov_desc_ld_default_stripe_size,
10916 { "Ld Default Stripe Size", "lustre.lov_desc.ld_default_stripe_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10917 { &hf_lustre_llog_log_hdr_llh_tgtuuid,
10918 { "Llh Tgtuuid", "lustre.llog_log_hdr.llh_tgtuuid", FT_NONE,
10919 BASE_NONE, NULL, 0, "", HFILL } },
10920 { &hf_lustre_cfg_marker_cm_step,
10921 { "Cm Step", "lustre.cfg_marker.cm_step", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10922 { &hf_lustre_mgs_send_param_mgs_param,
10923 { "Mgs Param", "lustre.mgs_send_param.mgs_param", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10924 { &hf_lustre_lov_desc_ld_default_stripe_offset,
10925 { "Ld Default Stripe Offset", "lustre.lov_desc.ld_default_stripe_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10926 { &hf_lustre_ldlm_resource_desc_lr_name,
10927 { "Lr Name", "lustre.ldlm_resource_desc.lr_name", FT_NONE,
10928 BASE_NONE, NULL, 0, "", HFILL } },
10929 { &hf_lustre_llog_rec_tail_lrt_len,
10930 { "Lrt Len", "lustre.llog_rec_tail.lrt_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10931 { &hf_lustre_llog_log_hdr_llh_timestamp,
10932 { "Llh Timestamp", "lustre.llog_log_hdr.llh_timestamp", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10933 { &hf_lustre_llog_catid_lci_padding2,
10934 { "Lci Padding2", "lustre.llog_catid.lci_padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10935 { &hf_lustre_llogd_conn_body_lgdc_ctxt_idx,
10936 { "Lgdc Ctxt Idx", "lustre.llogd_conn_body.lgdc_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10937 { &hf_lustre_cfg_marker_cm_canceltime,
10938 { "Cm Canceltime", "lustre.cfg_marker.cm_canceltime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10939 { &hf_lustre_mgs_target_info_mti_lustre_ver,
10940 { "Mti Lustre Ver", "lustre.mgs_target_info.mti_lustre_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10941 { &hf_lustre_obdo_o_parent_ver,
10942 { "O Parent VER", "lustre.obdo.o_parent_ver", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10943 { &hf_lustre_qunit_data_qd_flags,
10944 { "Qd Flags", "lustre.qunit_data.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10945 { &hf_lustre_llog_logid_rec_lid_id,
10946 { "Lid Id", "lustre.llog_logid_rec.lid_id", FT_NONE,
10947 BASE_NONE, NULL, 0, "", HFILL } },
10948 { &hf_lustre_obdo_o_parent_oid,
10949 { "O Parent OID", "lustre.obdo.o_parent_oid", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10950 { &hf_lustre_llog_gen_mnt_cnt,
10951 { "Mnt Cnt", "lustre.llog_gen.mnt_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10952 { &hf_lustre_llog_size_change_rec_lsc_tail,
10953 { "Lsc Tail", "lustre.llog_size_change_rec.lsc_tail", FT_NONE,
10954 BASE_NONE, NULL, 0, "", HFILL } },
10955 { &hf_lustre_obdo_o_padding_5,
10956 { "O Padding 5", "lustre.obdo.o_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10957 { &hf_lustre_ldlm_lock_desc_l_resource,
10958 { "L Resource", "lustre.ldlm_lock_desc.l_resource", FT_NONE,
10959 BASE_NONE, NULL, 0, "", HFILL } },
10960 { &hf_lustre_obdo_o_parent_seq,
10961 { "O Parent SEQ", "lustre.obdo.o_parent_seq", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL }},
10962 { &hf_lustre_ldlm_request_lock_count,
10963 { "Lock Count", "lustre.ldlm_request.lock_count", FT_UINT32, BASE_HEX_DEC, NULL, 0, "", HFILL }},
10964 { &hf_lustre_ldlm_flock_end,
10965 { "End", "lustre.ldlm_flock.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10966 { &hf_lustre_mgs_target_info_mti_nid_count,
10967 { "Mti Nid Count", "lustre.mgs_target_info.mti_nid_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10968 /* -------------------------------------------------------------------- */
10969 { &hf_lustre_mgs_target_info,
10970 { "mgs target info", "lustre.mgs_target_info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10971 { &hf_lustre_mgs_send_param,
10972 { "mgs send param", "lustre.mgs_send_param", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10974 { &hf_lustre_mgs_config_body,
10975 { "mgs config body", "lustre.mgs_config_body", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10976 { &hf_lustre_mgs_config_body_name,
10977 { "mcb name", "lustre.mgs_config_body.name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10978 { &hf_lustre_mgs_config_body_offset,
10979 { "mcb offset", "lustre.mgs_config_body.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10980 { &hf_lustre_mgs_config_body_type,
10981 { "mcb type", "lustre.mgs_config_body.type", FT_UINT16, BASE_DEC, VALS(lustre_mgs_config_body_types), 0, "", HFILL }},
10982 { &hf_lustre_mgs_config_body_reserved,
10983 { "mcb reserved", "lustre.mgs_config_body.type", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10984 { &hf_lustre_mgs_config_body_bits,
10985 { "mcb bit shift", "lustre.mgs_config_body.type", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10986 { &hf_lustre_mgs_config_body_units,
10987 { "mcb units", "lustre.mgs_config_body.type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10989 { &hf_lustre_mgs_config_res,
10990 { "mgs config res", "lustre.mgs_config_res", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10991 { &hf_lustre_mgs_config_res_offset,
10992 { "mcr offset", "lustre.mgs_config_res.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10993 { &hf_lustre_mgs_config_res_size,
10994 { "mcr size", "lustre.mgs_config_res.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10996 /* -------------------------------------------------------------------- */
10997 { &hf_lustre_ost_lvb,
10998 { "ost lvb data", "lustre.ost_lvb", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
11000 { &hf_lustre_obdo_o_ctime,
11001 { "O Ctime", "lustre.obdo.o_ctime",FT_ABSOLUTE_TIME,
11002 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
11003 { &hf_lustre_ldlm_reply_lock_policy_res2,
11004 { "Lock Policy Res2", "lustre.ldlm_reply.lock_policy_res2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11005 { &hf_lustre_llogd_body_lgd_ctxt_idx,
11006 { "Lgd Ctxt Idx", "lustre.llogd_body.lgd_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11007 { &hf_lustre_lov_desc_ld_qos_maxage,
11008 { "Ld Qos Maxage", "lustre.lov_desc.ld_qos_maxage", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11009 { &hf_lustre_ldlm_resource_desc_lr_type,
11010 { "Lr Type", "lustre.ldlm_resource_desc.lr_type", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_type_t_vals), 0, "", HFILL }},
11011 { &hf_lustre_llog_setattr_rec_lsr_tail,
11012 { "Lsr Tail", "lustre.llog_setattr_rec.lsr_tail", FT_NONE,
11013 BASE_NONE, NULL, 0, "", HFILL } },
11014 { &hf_lustre_llog_cookie_lgc_subsys,
11015 { "Lgc Subsys", "lustre.llog_cookie.lgc_subsys", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11016 { &hf_lustre_llog_log_hdr_llh_hdr,
11017 { "Llh Hdr", "lustre.llog_log_hdr.llh_hdr", FT_NONE,
11018 BASE_NONE, NULL, 0, "", HFILL } },
11019 { &hf_lustre_llog_log_hdr_llh_reserved,
11020 { "Llh Reserved", "lustre.llog_log_hdr.llh_reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11022 { &hf_lustre_extra_padding,
11023 { "extra padding", "lustre.msg_v2_extra_padding", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
11024 { &hf_lustre_ldlm_reply,
11025 { "ldlm reply", "lustre.ldlm_reply", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
11026 { &hf_lustre_ldlm_request,
11027 { "ldlm request", "lustre.ldlm_request", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
11029 /* add for lustre_user.h */
11030 { &hf_lustre_obd_dqinfo_dqi_valid,
11031 { "Dqi Valid", "lustre.obd_dqinfo.dqi_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11032 { &hf_lustre_obd_dqblk_dqb_isoftlimit,
11033 { "Dqb Isoftlimit", "lustre.obd_dqblk.dqb_isoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11034 { &hf_lustre_obd_dqblk_dqb_bhardlimit,
11035 { "Dqb Bhardlimit", "lustre.obd_dqblk.dqb_bhardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11036 { &hf_lustre_obd_dqblk_dqb_curspace,
11037 { "Dqb Curspace", "lustre.obd_dqblk.dqb_curspace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11038 { &hf_lustre_obd_dqblk_dqb_itime,
11039 { "Dqb Itime", "lustre.obd_dqblk.dqb_itime", FT_ABSOLUTE_TIME,
11040 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
11041 { &hf_lustre_obd_dqblk_dqb_valid,
11042 { "Dqb Valid", "lustre.obd_dqblk.dqb_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11043 { &hf_lustre_obd_dqinfo_dqi_igrace,
11044 { "Dqi Igrace", "lustre.obd_dqinfo.dqi_igrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11045 { &hf_lustre_obd_dqinfo_dqi_bgrace,
11046 { "Dqi Bgrace", "lustre.obd_dqinfo.dqi_bgrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11047 { &hf_lustre_obd_dqblk_padding,
11048 { "Padding", "lustre.obd_dqblk.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11049 { &hf_lustre_obd_dqblk_dqb_curinodes,
11050 { "Dqb Curinodes", "lustre.obd_dqblk.dqb_curinodes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11051 { &hf_lustre_obd_dqblk_dqb_bsoftlimit,
11052 { "Dqb Bsoftlimit", "lustre.obd_dqblk.dqb_bsoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
11053 { &hf_lustre_obd_dqinfo_dqi_flags,
11054 { "Dqi Flags", "lustre.obd_dqinfo.dqi_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
11055 { &hf_lustre_obd_dqblk_dqb_btime,
11056 { "Dqb Btime", "lustre.obd_dqblk.dqb_btime", FT_ABSOLUTE_TIME,
11057 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
11058 { &hf_lustre_obd_dqblk_dqb_ihardlimit,
11059 { "Dqb Ihardlimit", "lustre.obd_dqblk.dqb_ihardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11062 { &hf_lustre_seq_opc,
11063 { "Seq OPC", "lustre.seq_opc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11064 { &hf_lustre_seq_range,
11065 { "Seq Range", "lustre.seq_range", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11066 { &hf_lustre_seq_range_start,
11067 { "Seq Range Start", "lustre.seq_range.start", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11068 { &hf_lustre_seq_range_end,
11069 { "Seq Range End", "lustre.seq_range.end", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11070 { &hf_lustre_seq_range_index,
11071 { "Seq Range Index", "lustre.seq_range.index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11072 { &hf_lustre_seq_range_flags,
11073 { "Seq Range Flags", "lustre.seq_range.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11076 { &hf_lustre_fld_opc,
11077 { "Fld OPC", "lustre.fld_opc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11078 { &hf_lustre_fld_range,
11079 { "Fld Range", "lustre.fld_range", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11080 { &hf_lustre_fld_range_start,
11081 { "Fld Range Start", "lustre.fld_range.start", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11082 { &hf_lustre_fld_range_end,
11083 { "Fld Range End", "lustre.fld_range.end", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11084 { &hf_lustre_fld_range_index,
11085 { "Fld Range Index", "lustre.fld_range.index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11086 { &hf_lustre_fld_range_flags,
11087 { "Fld Range Flags", "lustre.fld_range.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11089 /* struct mdt_ioepoch */
11090 { &hf_lustre_mdt_ioepoch,
11091 { "MDT ioepoch", "lustre.mdt_ioepoch", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11092 { &hf_lustre_mdt_ioepoch_handle,
11093 { "Handle", "lustre.mdt_ioepoch.handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11094 { &hf_lustre_mdt_ioepoch_ioepoch,
11095 { "ioepoch", "lustre.mdt_ioepoch.ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11096 { &hf_lustre_mdt_ioepoch_flags,
11097 { "flags", "lustre.mdt_ioepoch.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11098 { &hf_lustre_mdt_ioepoch_padding,
11099 { "Padding", "lustre.mdt_ioepoch.padding", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11101 /* struct lustre_capa */
11103 { "Capability", "lustre.capa", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11104 { &hf_lustre_capa_fid,
11105 { "Capa fid", "lustre.capa.fid", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11106 { &hf_lustre_capa_opc,
11107 { "Capa opc", "lustre.capa.opc", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11108 { &hf_lustre_capa_uid,
11109 { "Capa uid", "lustre.capa.uid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11110 { &hf_lustre_capa_gid,
11111 { "Capa gid", "lustre.capa.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11112 { &hf_lustre_capa_flags,
11113 { "Capa flags", "lustre.capa.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11114 { &hf_lustre_capa_keyid,
11115 { "Capa keyid", "lustre.capa.keyid", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11116 { &hf_lustre_capa_timeout,
11117 { "Capa timeout", "lustre.capa.timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11118 { &hf_lustre_capa_expiry,
11119 { "Capa expiry", "lustre.capa.expiry", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11120 { &hf_lustre_capa_hmac,
11121 { "Capa hmac", "lustre.capa.hmac", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11125 { "ACL", "lustre.acl", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11129 static gint *ett[] = {
11131 &ett_lustre_lustre_handle_cookie,
11132 &ett_lustre_lustre_msg_v1,
11133 &ett_lustre_lustre_handle_v1,
11134 &ett_lustre_lustre_msg_v2,
11135 &ett_lustre_ptlrpc_body,
11136 &ett_lustre_lustre_handle_v2,
11137 &ett_lustre_obd_connect_data,
11138 &ett_lustre_lov_mds_md_v1,
11139 &ett_lustre_lov_ost_data_v1,
11140 &ett_lustre_obd_statfs,
11141 &ett_lustre_obd_ioobj,
11142 &ett_lustre_niobuf_remote,
11143 &ett_lustre_ost_lvb,
11144 &ett_lustre_ll_fid,
11145 &ett_lustre_obd_quotactl,
11146 &ett_lustre_obd_dqinfo,
11147 &ett_lustre_obd_dqblk,
11148 &ett_lustre_quota_adjust_qunit,
11149 &ett_lustre_mdt_body,
11150 &ett_lustre_mdt_rec_setattr,
11151 &ett_lustre_mdt_rec_create,
11152 &ett_lustre_mdt_rec_link,
11153 &ett_lustre_mdt_rec_unlink,
11154 &ett_lustre_mdt_rec_rename,
11155 &ett_lustre_mdt_rec_setxattr,
11156 &ett_lustre_lov_desc,
11157 &ett_lustre_obd_uuid,
11158 &ett_lustre_ldlm_res_id,
11159 &ett_lustre_ldlm_extent,
11160 &ett_lustre_ldlm_inodebits,
11161 &ett_lustre_ldlm_flock,
11162 &ett_lustre_ldlm_intent_opc,
11163 &ett_lustre_ldlm_resource_desc,
11164 &ett_lustre_ldlm_lock_desc,
11165 &ett_lustre_ldlm_request,
11166 &ett_lustre_lustre_handle,
11167 &ett_lustre_ldlm_reply,
11168 &ett_lustre_mgs_send_param,
11169 &ett_lustre_mgs_target_info,
11170 &ett_lustre_mgs_config_body,
11171 &ett_lustre_mgs_config_res,
11172 &ett_lustre_cfg_marker,
11173 &ett_lustre_llog_catid,
11174 &ett_lustre_llog_logid,
11175 &ett_lustre_lov_mds_md,
11176 &ett_lustre_llog_rec_hdr,
11177 &ett_lustre_llog_rec_tail,
11178 &ett_lustre_llog_logid_rec,
11179 &ett_lustre_llog_orphan_rec,
11180 &ett_lustre_llog_unlink_rec,
11181 &ett_lustre_llog_setattr_rec,
11182 &ett_lustre_llog_size_change_rec,
11183 &ett_lustre_llog_gen,
11184 &ett_lustre_llog_gen_rec,
11185 &ett_lustre_llog_log_hdr,
11186 &ett_lustre_llog_cookie,
11187 &ett_lustre_llogd_body,
11188 &ett_lustre_llogd_conn_body,
11190 &ett_lustre_ost_body,
11191 &ett_lustre_qunit_data,
11192 &ett_lustre_qunit_data_old2,
11193 &ett_lustre_qunit_data_old,
11194 &ett_lustre_ldlm_lock_flags,
11195 &ett_lustre_llog_log_llh_flags,
11196 &ett_lustre_seq_range,
11197 &ett_lustre_fld_range,
11198 &ett_lustre_mdt_ioepoch,
11203 proto_lustre = proto_register_protocol("Lustre", "lustre", "lustre");
11204 proto_register_field_array(proto_lustre, hf, array_length (hf));
11205 proto_register_subtree_array(ett, array_length(ett));
11209 void proto_reg_handoff_lustre(void)
11211 dissector_handle_t lustre_handle;
11212 lustre_handle=create_dissector_handle(dissect_lustre, proto_lustre);
11213 /* we use Lustre only if we get ptl_index = One of this code (we have removed the bulk code) */
11214 /* in LNET we test if the message is a put or not before adding an lnet.ptl_index value */
11215 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
11216 dissector_add("lnet.ptl_index", CONNMGR_REQUEST_PORTAL , lustre_handle);
11217 dissector_add("lnet.ptl_index", CONNMGR_REPLY_PORTAL , lustre_handle);
11218 dissector_add("lnet.ptl_index", OSC_REPLY_PORTAL , lustre_handle);
11219 dissector_add("lnet.ptl_index", OST_IO_PORTAL , lustre_handle);
11220 dissector_add("lnet.ptl_index", OST_CREATE_PORTAL , lustre_handle);
11221 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
11222 dissector_add("lnet.ptl_index", MDS_REQUEST_PORTAL , lustre_handle);
11223 dissector_add("lnet.ptl_index", LDLM_CB_REQUEST_PORTAL , lustre_handle);
11224 dissector_add("lnet.ptl_index", LDLM_CB_REPLY_PORTAL , lustre_handle);
11225 dissector_add("lnet.ptl_index", LDLM_CANCEL_REQUEST_PORTAL, lustre_handle);
11226 dissector_add("lnet.ptl_index", LDLM_CANCEL_REPLY_PORTAL , lustre_handle);
11227 dissector_add("lnet.ptl_index", MDS_SETATTR_PORTAL , lustre_handle);
11228 dissector_add("lnet.ptl_index", MDS_READPAGE_PORTAL , lustre_handle);
11229 dissector_add("lnet.ptl_index", MGC_REPLY_PORTAL , lustre_handle);
11230 dissector_add("lnet.ptl_index", MGS_REQUEST_PORTAL , lustre_handle);
11231 dissector_add("lnet.ptl_index", MGS_REPLY_PORTAL , lustre_handle);
11232 dissector_add("lnet.ptl_index", OST_REQUEST_PORTAL , lustre_handle);
11233 dissector_add("lnet.ptl_index", FLD_REQUEST_PORTAL, lustre_handle);
11234 dissector_add("lnet.ptl_index", SEQ_METADATA_PORTAL, lustre_handle);
11235 dissector_add("lnet.ptl_index", SEQ_DATA_PORTAL, lustre_handle);
11236 dissector_add("lnet.ptl_index", SEQ_CONTROLLER_PORTAL, lustre_handle);