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, 2013, 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 WIRESHARK_COMPILE
275 #include "lustre_dlm_flags.h"
277 #define LDLM_ENQUEUE (101)
278 #define LDLM_CONVERT (102)
279 #define LDLM_CANCEL (103)
280 #define LDLM_BL_CALLBACK (104)
281 #define LDLM_CP_CALLBACK (105)
282 #define LDLM_GL_CALLBACK (106)
283 #define LCK_MINMODE (0)
290 #define LCK_GROUP (64)
291 #define LDLM_PLAIN (10)
292 #define LDLM_EXTENT (11)
293 #define LDLM_FLOCK (12)
294 #define LDLM_IBITS (13)
295 //#define MGS_CONNECT (250)
296 #define OBD_PING (400)
299 * Opcodes for mountconf (mgs and mgc)
304 MGS_EXCEPTION, /* node died, etc. */
305 MGS_TARGET_REG, /* whenever target starts up */
311 #define MGS_FIRST_OPC MGS_CONNECT
315 LLOG_ORIGIN_HANDLE_CREATE = 501,
316 LLOG_ORIGIN_HANDLE_NEXT_BLOCK = 502,
317 LLOG_ORIGIN_HANDLE_READ_HEADER = 503,
318 LLOG_ORIGIN_HANDLE_WRITE_REC = 504,
319 LLOG_ORIGIN_HANDLE_CLOSE = 505,
320 LLOG_ORIGIN_CONNECT = 506,
321 LLOG_CATINFO = 507, /* for lfs catinfo */
322 LLOG_ORIGIN_HANDLE_PREV_BLOCK = 508,
323 LLOG_ORIGIN_HANDLE_DESTROY = 509, /* for destroy llog object*/
327 #define LLOG_FIRST_OPC LLOG_ORIGIN_HANDLE_CREATE
328 /*flag for the LLOG*/
329 #define LLOG_OP_MAGIC 0x10600000
330 #define LLOG_OP_MASK 0xfff00000
333 LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000,
334 OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00,
335 OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000,
336 MDS_UNLINK_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_UNLINK,
337 MDS_SETATTR_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_SETATTR,
338 OBD_CFG_REC = LLOG_OP_MAGIC | 0x20000,
339 PTL_CFG_REC = LLOG_OP_MAGIC | 0x30000, /* obsolete */
340 LLOG_GEN_REC = LLOG_OP_MAGIC | 0x40000,
341 LLOG_JOIN_REC = LLOG_OP_MAGIC | 0x50000, /* obsolete */
342 LLOG_HDR_MAGIC = LLOG_OP_MAGIC | 0x45539,
343 LLOG_LOGID_MAGIC = LLOG_OP_MAGIC | 0x4553b,
347 /*defined in lustre/include/lustre/lustre_idl.h*/
348 #define LLOG_F_ZAP_WHEN_EMPTY 0x1
349 #define LLOG_F_IS_CAT 0x2
350 #define LLOG_F_IS_PLAIN 0x4
352 #define PTL_RPC_MSG_REQUEST 4711
353 #define PTL_RPC_MSG_ERR 4712
354 #define PTL_RPC_MSG_REPLY 4713
357 /* Ett declarations */
358 static gint ett_lustre_llog_log_llh_flags = -1 ;
359 static gint ett_lustre = -1;
360 static gint ett_lustre_lustre_handle_cookie = -1;
361 static gint ett_lustre_lustre_msg_v1 = -1;
362 static gint ett_lustre_lustre_handle_v1 = -1;
363 static gint ett_lustre_lustre_msg_v2 = -1;
364 static gint ett_lustre_ptlrpc_body = -1;
365 static gint ett_lustre_lustre_handle_v2 = -1;
366 static gint ett_lustre_obd_connect_data = -1;
367 static gint ett_lustre_lov_mds_md_v1 = -1;
368 static gint ett_lustre_lov_ost_data_v1 = -1;
369 static gint ett_lustre_obd_statfs = -1;
370 static gint ett_lustre_obd_ioobj = -1;
371 static gint ett_lustre_niobuf_remote = -1;
372 static gint ett_lustre_ost_lvb = -1;
373 static gint ett_lustre_ll_fid = -1;
374 static gint ett_lustre_mdt_body = -1;
375 static gint ett_lustre_mdt_rec_setattr = -1;
376 static gint ett_lustre_mdt_rec_create = -1;
377 static gint ett_lustre_mdt_rec_link = -1;
378 static gint ett_lustre_mdt_rec_unlink = -1;
379 static gint ett_lustre_mdt_rec_rename = -1;
380 static gint ett_lustre_mdt_rec_setxattr = -1;
381 static gint ett_lustre_obd_quotactl = -1;
382 static gint ett_lustre_obd_dqinfo = -1;
383 static gint ett_lustre_obd_dqblk = -1;
384 static gint ett_lustre_quota_adjust_qunit = -1;
385 static gint ett_lustre_lov_desc = -1;
386 static gint ett_lustre_obd_uuid = -1;
387 static gint ett_lustre_ldlm_res_id = -1;
388 static gint ett_lustre_ldlm_extent = -1;
389 static gint ett_lustre_ldlm_inodebits = -1;
390 static gint ett_lustre_ldlm_flock = -1;
391 static gint ett_lustre_ldlm_intent_opc = -1;
392 static gint ett_lustre_ldlm_resource_desc = -1;
393 static gint ett_lustre_ldlm_lock_desc = -1;
394 static gint ett_lustre_ldlm_request = -1;
395 static gint ett_lustre_lustre_handle = -1;
396 static gint ett_lustre_ldlm_reply = -1;
397 static gint ett_lustre_mgs_send_param = -1;
398 static gint ett_lustre_mgs_target_info = -1;
399 static gint ett_lustre_mgs_config_body = -1;
400 static gint ett_lustre_mgs_config_res = -1;
401 static gint ett_lustre_cfg_marker = -1;
402 static gint ett_lustre_llog_catid = -1;
403 static gint ett_lustre_llog_rec_hdr = -1;
404 static gint ett_lustre_llog_logid_rec = -1;
405 static gint ett_lustre_llog_logid = -1;
406 static gint ett_lustre_llog_rec_tail = -1;
407 static gint ett_lustre_lov_mds_md = -1;
408 static gint ett_lustre_llog_unlink_rec = -1;
409 static gint ett_lustre_llog_setattr_rec = -1;
410 static gint ett_lustre_llog_size_change_rec = -1;
411 static gint ett_lustre_llog_gen_rec = -1;
412 static gint ett_lustre_llog_log_hdr = -1;
413 static gint ett_lustre_llog_cookie = -1;
414 static gint ett_lustre_llogd_body = -1;
415 static gint ett_lustre_llogd_conn_body = -1;
416 static gint ett_lustre_llog_gen = -1;
417 static gint ett_lustre_obdo = -1;
418 static gint ett_lustre_ost_body = -1;
419 static gint ett_lustre_qunit_data = -1;
420 static gint ett_lustre_qunit_data_old2 = -1;
421 static gint ett_lustre_qunit_data_old = -1;
422 static gint ett_lustre_ldlm_lock_flags = -1 ;
423 static gint ett_lustre_seq_range = -1;
424 static gint ett_lustre_fld_range = -1;
425 static gint ett_lustre_mdt_ioepoch = -1;
426 static gint ett_lustre_capa = -1;
427 static gint ett_lustre_acl = -1;
429 /* -----------------------------------------------*/
430 /* Header field declarations */
431 static int hf_lustre_ptlrpc_body_pb = -1 ;
432 static int hf_lustre_ost_body = -1 ;
433 static int hf_lustre_obd_statfs = -1 ;
434 static int hf_lustre_obd_quotactl = -1 ;
435 static int hf_lustre_quota_adjust_qunit = -1 ;
436 static int hf_lustre_extra_padding = -1 ;
437 static int hf_lustre_ldlm_reply = -1 ;
438 static int hf_lustre_ldlm_request = -1 ;
439 static int hf_lustre_obd_uuid = -1 ;
440 static int hf_lustre_obd_connect_data = -1 ;
441 static int hf_lustre_ldlm_intent = -1;
442 static int hf_lustre_obd_ioobj = -1 ;
443 static int hf_lustre_niobuf_remote = -1 ;
444 static int hf_lustre_ost_key = -1 ;
445 static int hf_lustre_nio= -1 ;
446 static int hf_lustre_ost_val= -1;
447 static int hf_lustre_llogd_body = -1;
448 static int hf_lustre_llogd_log_hdr= -1;
449 static int hf_lustre_llog_logid_rec =-1 ;
450 static int hf_lustre_llogd_chunk= -1;
451 static int hf_lustre_llogd_keyword= -1;
452 static int hf_lustre_llogd_client= -1;
453 static int hf_lustre_llogd_name= -1;
455 static int hf_lustre_mds_xattr_name = -1;
456 static int hf_lustre_lov_mds_md_v1= -1;
457 static int hf_lustre_llog_cookie= -1;
458 static int hf_lustre_mds_md_data= -1;
459 static int hf_lustre_mds_reint_opcode= -1;
460 static int hf_lustre_mds_xattr_eadata = -1;
462 static int hf_lustre_reint_name= -1;
463 static int hf_lustre_reint_old_name= -1;
464 static int hf_lustre_reint_new_name= -1;
466 static int hf_lustre_mgs_target_info = -1 ;
467 static int hf_lustre_mgs_send_param = -1;
469 static int hf_lustre_mgs_config_body = -1;
470 static int hf_lustre_mgs_config_body_name = -1;
471 static int hf_lustre_mgs_config_body_offset = -1;
472 static int hf_lustre_mgs_config_body_type = -1;
473 static int hf_lustre_mgs_config_body_reserved = -1;
474 static int hf_lustre_mgs_config_body_bits = -1;
475 static int hf_lustre_mgs_config_body_units = -1;
477 static int hf_lustre_mgs_config_res = -1;
478 static int hf_lustre_mgs_config_res_offset = -1;
479 static int hf_lustre_mgs_config_res_size = -1;
481 static int hf_lustre_ost_lvb = -1 ;
483 #define hf_lustre_ldlm_ast_discard_data hf_lustre_ldlm_fl_ast_discard_data
485 static int hf_lustre_mdt_body = -1 ;
486 static int hf_lustre_mdt_body_fid1 = -1;
487 static int hf_lustre_mdt_body_fid2 = -1;
488 static int hf_lustre_mdt_body_handle = -1;
489 static int hf_lustre_mdt_body_valid = -1;
490 static int hf_lustre_mdt_body_size = -1;
491 static int hf_lustre_mdt_body_mtime = -1;
492 static int hf_lustre_mdt_body_atime = -1;
493 static int hf_lustre_mdt_body_ctime = -1;
494 static int hf_lustre_mdt_body_blocks = -1;
495 static int hf_lustre_mdt_body_ioepoch = -1;
496 static int hf_lustre_mdt_body_ino = -1;
497 static int hf_lustre_mdt_body_fsuid = -1;
498 static int hf_lustre_mdt_body_fsgid = -1;
499 static int hf_lustre_mdt_body_capability = -1;
500 static int hf_lustre_mdt_body_mode = -1;
501 static int hf_lustre_mdt_body_uid = -1;
502 static int hf_lustre_mdt_body_gid = -1;
503 static int hf_lustre_mdt_body_flags = -1;
504 static int hf_lustre_mdt_body_rdev = -1;
505 static int hf_lustre_mdt_body_nlink = -1;
506 static int hf_lustre_mdt_body_generation = -1;
507 static int hf_lustre_mdt_body_suppgid = -1;
508 static int hf_lustre_mdt_body_eadatasize = -1;
509 static int hf_lustre_mdt_body_aclsize = -1;
510 static int hf_lustre_mdt_body_max_mdsize = -1;
511 static int hf_lustre_mdt_body_max_cookiesize = -1;
512 static int hf_lustre_mdt_body_uid_h = -1;
513 static int hf_lustre_mdt_body_gid_h = -1;
514 static int hf_lustre_mdt_body_padding_5 = -1;
515 static int hf_lustre_mdt_body_padding_6 = -1;
516 static int hf_lustre_mdt_body_padding_7 = -1;
517 static int hf_lustre_mdt_body_padding_8 = -1;
518 static int hf_lustre_mdt_body_padding_9 = -1;
519 static int hf_lustre_mdt_body_padding_10 = -1;
521 static int hf_lustre_mdt_rec_setattr = -1 ;
522 static int hf_lustre_mdt_rec_setattr_sa_opcode = -1;
523 static int hf_lustre_mdt_rec_setattr_sa_cap = -1;
524 static int hf_lustre_mdt_rec_setattr_sa_fsuid = -1;
525 static int hf_lustre_mdt_rec_setattr_sa_fsuid_h = -1;
526 static int hf_lustre_mdt_rec_setattr_sa_fsgid = -1;
527 static int hf_lustre_mdt_rec_setattr_sa_fsgid_h = -1;
528 static int hf_lustre_mdt_rec_setattr_sa_suppgid = -1;
529 static int hf_lustre_mdt_rec_setattr_sa_suppgid_h = -1;
530 static int hf_lustre_mdt_rec_setattr_sa_padding_1 = -1;
531 static int hf_lustre_mdt_rec_setattr_sa_padding_1_h = -1;
532 static int hf_lustre_mdt_rec_setattr_sa_fid = -1;
533 static int hf_lustre_mdt_rec_setattr_sa_valid = -1;
534 static int hf_lustre_mdt_rec_setattr_sa_uid = -1;
535 static int hf_lustre_mdt_rec_setattr_sa_gid = -1;
536 static int hf_lustre_mdt_rec_setattr_sa_size = -1;
537 static int hf_lustre_mdt_rec_setattr_sa_blocks = -1;
538 static int hf_lustre_mdt_rec_setattr_sa_mtime = -1;
539 static int hf_lustre_mdt_rec_setattr_sa_atime = -1;
540 static int hf_lustre_mdt_rec_setattr_sa_ctime = -1;
541 static int hf_lustre_mdt_rec_setattr_sa_attr_flags = -1;
542 static int hf_lustre_mdt_rec_setattr_sa_mode = -1;
543 static int hf_lustre_mdt_rec_setattr_sa_padding_2 = -1;
544 static int hf_lustre_mdt_rec_setattr_sa_padding_3 = -1;
545 static int hf_lustre_mdt_rec_setattr_sa_padding_4 = -1;
546 static int hf_lustre_mdt_rec_setattr_sa_padding_5 = -1;
548 static int hf_lustre_mdt_rec_create = -1 ;
549 static int hf_lustre_mdt_rec_create_cr_opcode = -1;
550 static int hf_lustre_mdt_rec_create_cr_cap = -1;
551 static int hf_lustre_mdt_rec_create_cr_fsuid = -1;
552 static int hf_lustre_mdt_rec_create_cr_fsuid_h = -1;
553 static int hf_lustre_mdt_rec_create_cr_fsgid = -1;
554 static int hf_lustre_mdt_rec_create_cr_fsgid_h = -1;
555 static int hf_lustre_mdt_rec_create_cr_suppgid1 = -1;
556 static int hf_lustre_mdt_rec_create_cr_suppgid1_h = -1;
557 static int hf_lustre_mdt_rec_create_cr_suppgid2 = -1;
558 static int hf_lustre_mdt_rec_create_cr_suppgid2_h = -1;
559 static int hf_lustre_mdt_rec_create_cr_fid1 = -1;
560 static int hf_lustre_mdt_rec_create_cr_fid2 = -1;
561 static int hf_lustre_mdt_rec_create_cr_old_handle = -1;
562 static int hf_lustre_mdt_rec_create_cr_time = -1;
563 static int hf_lustre_mdt_rec_create_cr_rdev = -1;
564 static int hf_lustre_mdt_rec_create_cr_ioepoch = -1;
565 static int hf_lustre_mdt_rec_create_cr_padding_1 = -1;
566 static int hf_lustre_mdt_rec_create_cr_mode = -1;
567 static int hf_lustre_mdt_rec_create_cr_bias = -1;
568 static int hf_lustre_mdt_rec_create_cr_flags_l = -1;
569 static int hf_lustre_mdt_rec_create_cr_flags_h = -1;
570 static int hf_lustre_mdt_rec_create_cr_umask = -1;
571 static int hf_lustre_mdt_rec_create_cr_padding_4 = -1;
573 static int hf_lustre_mdt_rec_link = -1 ;
574 static int hf_lustre_mdt_rec_link_lk_opcode = -1;
575 static int hf_lustre_mdt_rec_link_lk_cap = -1;
576 static int hf_lustre_mdt_rec_link_lk_fsuid = -1;
577 static int hf_lustre_mdt_rec_link_lk_fsuid_h = -1;
578 static int hf_lustre_mdt_rec_link_lk_fsgid = -1;
579 static int hf_lustre_mdt_rec_link_lk_fsgid_h = -1;
580 static int hf_lustre_mdt_rec_link_lk_suppgid1 = -1;
581 static int hf_lustre_mdt_rec_link_lk_suppgid1_h = -1;
582 static int hf_lustre_mdt_rec_link_lk_suppgid2 = -1;
583 static int hf_lustre_mdt_rec_link_lk_suppgid2_h = -1;
584 static int hf_lustre_mdt_rec_link_lk_fid1 = -1;
585 static int hf_lustre_mdt_rec_link_lk_fid2 = -1;
586 static int hf_lustre_mdt_rec_link_lk_time = -1;
587 static int hf_lustre_mdt_rec_link_lk_padding_1 = -1;
588 static int hf_lustre_mdt_rec_link_lk_padding_2 = -1;
589 static int hf_lustre_mdt_rec_link_lk_padding_3 = -1;
590 static int hf_lustre_mdt_rec_link_lk_padding_4 = -1;
591 static int hf_lustre_mdt_rec_link_lk_bias = -1;
592 static int hf_lustre_mdt_rec_link_lk_padding_5 = -1;
593 static int hf_lustre_mdt_rec_link_lk_padding_6 = -1;
594 static int hf_lustre_mdt_rec_link_lk_padding_7 = -1;
595 static int hf_lustre_mdt_rec_link_lk_padding_8 = -1;
596 static int hf_lustre_mdt_rec_link_lk_padding_9 = -1;
598 static int hf_lustre_mdt_rec_unlink = -1 ;
599 static int hf_lustre_mdt_rec_unlink_ul_opcode = -1;
600 static int hf_lustre_mdt_rec_unlink_ul_cap = -1;
601 static int hf_lustre_mdt_rec_unlink_ul_fsuid = -1;
602 static int hf_lustre_mdt_rec_unlink_ul_fsuid_h = -1;
603 static int hf_lustre_mdt_rec_unlink_ul_fsgid = -1;
604 static int hf_lustre_mdt_rec_unlink_ul_fsgid_h = -1;
605 static int hf_lustre_mdt_rec_unlink_ul_suppgid1 = -1;
606 static int hf_lustre_mdt_rec_unlink_ul_suppgid1_h = -1;
607 static int hf_lustre_mdt_rec_unlink_ul_suppgid2 = -1;
608 static int hf_lustre_mdt_rec_unlink_ul_suppgid2_h = -1;
609 static int hf_lustre_mdt_rec_unlink_ul_fid1 = -1;
610 static int hf_lustre_mdt_rec_unlink_ul_fid2 = -1;
611 static int hf_lustre_mdt_rec_unlink_ul_time = -1;
612 static int hf_lustre_mdt_rec_unlink_ul_padding_2 = -1;
613 static int hf_lustre_mdt_rec_unlink_ul_padding_3 = -1;
614 static int hf_lustre_mdt_rec_unlink_ul_padding_4 = -1;
615 static int hf_lustre_mdt_rec_unlink_ul_padding_5 = -1;
616 static int hf_lustre_mdt_rec_unlink_ul_bias = -1;
617 static int hf_lustre_mdt_rec_unlink_ul_mode = -1;
618 static int hf_lustre_mdt_rec_unlink_ul_padding_6 = -1;
619 static int hf_lustre_mdt_rec_unlink_ul_padding_7 = -1;
620 static int hf_lustre_mdt_rec_unlink_ul_padding_8 = -1;
621 static int hf_lustre_mdt_rec_unlink_ul_padding_9 = -1;
623 static int hf_lustre_mdt_rec_rename = -1 ;
624 static int hf_lustre_mdt_rec_rename_rn_opcode = -1;
625 static int hf_lustre_mdt_rec_rename_rn_cap = -1;
626 static int hf_lustre_mdt_rec_rename_rn_fsuid = -1;
627 static int hf_lustre_mdt_rec_rename_rn_fsuid_h = -1;
628 static int hf_lustre_mdt_rec_rename_rn_fsgid = -1;
629 static int hf_lustre_mdt_rec_rename_rn_fsgid_h = -1;
630 static int hf_lustre_mdt_rec_rename_rn_suppgid1 = -1;
631 static int hf_lustre_mdt_rec_rename_rn_suppgid1_h = -1;
632 static int hf_lustre_mdt_rec_rename_rn_suppgid2 = -1;
633 static int hf_lustre_mdt_rec_rename_rn_suppgid2_h = -1;
634 static int hf_lustre_mdt_rec_rename_rn_fid1 = -1;
635 static int hf_lustre_mdt_rec_rename_rn_fid2 = -1;
636 static int hf_lustre_mdt_rec_rename_rn_time = -1;
637 static int hf_lustre_mdt_rec_rename_rn_padding_1 = -1;
638 static int hf_lustre_mdt_rec_rename_rn_padding_2 = -1;
639 static int hf_lustre_mdt_rec_rename_rn_padding_3 = -1;
640 static int hf_lustre_mdt_rec_rename_rn_padding_4 = -1;
641 static int hf_lustre_mdt_rec_rename_rn_bias = -1;
642 static int hf_lustre_mdt_rec_rename_rn_mode = -1;
643 static int hf_lustre_mdt_rec_rename_rn_padding_5 = -1;
644 static int hf_lustre_mdt_rec_rename_rn_padding_6 = -1;
645 static int hf_lustre_mdt_rec_rename_rn_padding_7 = -1;
646 static int hf_lustre_mdt_rec_rename_rn_padding_8 = -1;
648 static int hf_lustre_mdt_rec_setxattr = -1 ;
649 static int hf_lustre_mdt_rec_setxattr_sx_opcode = -1;
650 static int hf_lustre_mdt_rec_setxattr_sx_cap = -1;
651 static int hf_lustre_mdt_rec_setxattr_sx_fsuid = -1;
652 static int hf_lustre_mdt_rec_setxattr_sx_fsuid_h = -1;
653 static int hf_lustre_mdt_rec_setxattr_sx_fsgid = -1;
654 static int hf_lustre_mdt_rec_setxattr_sx_fsgid_h = -1;
655 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1 = -1;
656 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1_h = -1;
657 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2 = -1;
658 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2_h = -1;
659 static int hf_lustre_mdt_rec_setxattr_sx_fid = -1;
660 static int hf_lustre_mdt_rec_setxattr_sx_padding_1 = -1;
661 static int hf_lustre_mdt_rec_setxattr_sx_padding_2 = -1;
662 static int hf_lustre_mdt_rec_setxattr_sx_padding_3 = -1;
663 static int hf_lustre_mdt_rec_setxattr_sx_valid = -1;
664 static int hf_lustre_mdt_rec_setxattr_sx_time = -1;
665 static int hf_lustre_mdt_rec_setxattr_sx_padding_5 = -1;
666 static int hf_lustre_mdt_rec_setxattr_sx_padding_6 = -1;
667 static int hf_lustre_mdt_rec_setxattr_sx_padding_7 = -1;
668 static int hf_lustre_mdt_rec_setxattr_sx_size = -1;
669 static int hf_lustre_mdt_rec_setxattr_sx_flags = -1;
670 static int hf_lustre_mdt_rec_setxattr_sx_padding_8 = -1;
671 static int hf_lustre_mdt_rec_setxattr_sx_padding_9 = -1;
672 static int hf_lustre_mdt_rec_setxattr_sx_padding_10 = -1;
673 static int hf_lustre_mdt_rec_setxattr_sx_padding_11 = -1;
675 static int hf_lustre_seq_opc = -1;
676 static int hf_lustre_seq_range = -1;
677 static int hf_lustre_seq_range_start = -1;
678 static int hf_lustre_seq_range_end = -1;
679 static int hf_lustre_seq_range_index = -1;
680 static int hf_lustre_seq_range_flags = -1;
682 static int hf_lustre_fld_opc = -1;
683 static int hf_lustre_fld_range = -1;
684 static int hf_lustre_fld_range_start = -1;
685 static int hf_lustre_fld_range_end = -1;
686 static int hf_lustre_fld_range_index = -1;
687 static int hf_lustre_fld_range_flags = -1;
689 static int hf_lustre_mdt_ioepoch = -1;
690 static int hf_lustre_mdt_ioepoch_handle = -1;
691 static int hf_lustre_mdt_ioepoch_ioepoch = -1;
692 static int hf_lustre_mdt_ioepoch_flags = -1;
693 static int hf_lustre_mdt_ioepoch_padding = -1;
695 static int hf_lustre_capa = -1;
696 static int hf_lustre_capa_fid = -1;
697 static int hf_lustre_capa_opc = -1;
698 static int hf_lustre_capa_uid = -1;
699 static int hf_lustre_capa_gid = -1;
700 static int hf_lustre_capa_flags = -1;
701 static int hf_lustre_capa_keyid = -1;
702 static int hf_lustre_capa_timeout = -1;
703 static int hf_lustre_capa_expiry = -1;
704 static int hf_lustre_capa_hmac = -1;
706 static int hf_lustre_acl = -1;
708 static int hf_lustre_lustre_handle_cookie = -1;
709 static int hf_lustre_ptlrpc_body_pb_last_committed = -1;
710 static int hf_lustre_ptlrpc_body_pb_version = -1;
711 static int hf_lustre_lustre_msg_v1_lm_bufcount = -1;
712 static int hf_lustre_obd_ioobj_ioo_id = -1;
713 static int hf_lustre_ptlrpc_body_pb_slv = -1;
714 static int hf_lustre_ptlrpc_body_pb_pre_version = -1;
715 static int hf_lustre_ptlrpc_body_pb_padding = -1;
716 static int hf_lustre_ptlrpc_body_pb_jobid = -1;
717 static int hf_lustre_lustre_msg_v1_lm_handle = -1;
718 static int hf_lustre_ost_lvb_lvb_atime = -1;
719 static int hf_lustre_ptlrpc_body_pb_timeout = -1;
720 static int hf_lustre_obd_statfs_os_bavail = -1;
721 static int hf_lustre_obd_statfs_os_bsize = -1;
722 static int hf_lustre_lustre_msg_v2_lm_repsize = -1;
723 static int hf_lustre_lov_mds_md_v1_lmm_stripe_size = -1;
724 static int hf_lustre_lustre_msg_v1_lm_last_xid = -1;
725 static int hf_lustre_ll_fid_f_type = -1;
726 static int hf_lustre_lustre_msg_v2_lm_cksum = -1;
727 static int hf_lustre_lustre_msg_v2_lm_buflens = -1;
728 static int hf_lustre_lustre_msg_v1_lm_status = -1;
729 static int hf_lustre_lustre_msg_v1_lm_type = -1;
730 static int hf_lustre_niobuf_remote_len = -1;
731 static int hf_lustre_lov_mds_md_v1_lmm_magic = -1;
732 static int hf_lustre_ptlrpc_body_pb_op_flags = -1;
733 static int hf_lustre_ost_lvb_lvb_ctime = -1;
734 static int hf_lustre_ptlrpc_body_pb_type = -1;
735 static int hf_lustre_obd_connect_data_ocd_nllg = -1;
736 static int hf_lustre_obd_connect_data_ocd_nllu = -1;
737 static int hf_lustre_ll_fid_generation = -1;
738 static int hf_lustre_ost_lvb_lvb_mtime = -1;
739 static int hf_lustre_obd_connect_data_ocd_ibits_known = -1;
740 static int hf_lustre_lustre_msg_v2_lm_padding_3 = -1;
741 static int hf_lustre_ptlrpc_body_pb_flags = -1;
742 static int hf_lustre_obd_statfs_os_spare4 = -1;
743 static int hf_lustre_obd_connect_data_ocd_group = -1;
744 static int hf_lustre_lov_ost_data_v1_l_object_seq = -1;
745 static int hf_lustre_lov_mds_md_v1_lmm_object_seq = -1;
746 static int hf_lustre_obd_connect_data_ocd_brw_size = -1;
747 static int hf_lustre_ptlrpc_body_pb_limit = -1;
748 static int hf_lustre_obd_statfs_os_maxbytes = -1;
749 static int hf_lustre_obd_statfs_os_spare5 = -1;
750 static int hf_lustre_lustre_msg_v2_lm_flags = -1;
751 static int hf_lustre_obd_statfs_os_ffree = -1;
752 static int hf_lustre_obd_statfs_os_files = -1;
753 static int hf_lustre_lov_mds_md_v1_lmm_stripe_count = -1;
754 static int hf_lustre_lustre_msg_v1_lm_flags = -1;
755 static int hf_lustre_lustre_msg_v1_lm_last_committed = -1;
756 static int hf_lustre_obd_statfs_os_spare9 = -1;
757 static int hf_lustre_obd_connect_data_ocd_index = -1;
758 static int hf_lustre_opnum = -1;
759 static int hf_lustre_lustre_msg_v1_lm_buflens = -1;
760 static int hf_lustre_obd_statfs_os_spare1 = -1;
761 static int hf_lustre_obd_statfs_os_spare8 = -1;
762 static int hf_lustre_lustre_msg_v1_lm_conn_cnt = -1;
763 static int hf_lustre_ptlrpc_body_pb_transno = -1;
764 static int hf_lustre_ptlrpc_body_pb_service_time = -1;
765 static int hf_lustre_ptlrpc_body_pb_conn_cnt = -1;
766 static int hf_lustre_ptlrpc_body_pb_opc = -1;
767 static int hf_lustre_obd_connect_data_ocd_connect_flags = -1;
768 static int hf_lustre_lov_ost_data_v1_l_object_id = -1;
769 static int hf_lustre_lov_ost_data_v1_l_ost_gen = -1;
770 static int hf_lustre_obd_statfs_os_bfree = -1;
771 static int hf_lustre_obd_connect_data_ocd_version = -1;
772 static int hf_lustre_lov_mds_md_v1_lmm_objects = -1;
773 static int hf_lustre_obd_statfs_os_namelen = -1;
774 static int hf_lustre_obd_statfs_os_blocks = -1;
775 static int hf_lustre_lustre_msg_v2_lm_secflvr = -1;
776 static int hf_lustre_lustre_msg_v1_lm_transno = -1;
777 static int hf_lustre_lov_mds_md_v1_lmm_pattern = -1;
778 static int hf_lustre_lustre_msg_v1_lm_opc = -1;
779 static int hf_lustre_obd_connect_data_ocd_grant = -1;
780 static int hf_lustre_obd_ioobj_ioo_bufcnt = -1;
781 static int hf_lustre_lustre_msg_v1_lm_version = -1;
782 static int hf_lustre_obd_statfs_os_spare7 = -1;
783 static int hf_lustre_obd_statfs_os_fsid = -1;
784 static int hf_lustre_obd_connect_data_ocd_cksum_types = -1;
785 static int hf_lustre_ost_lvb_lvb_size = -1;
786 static int hf_lustre_obd_statfs_os_type = -1;
787 static int hf_lustre_obd_statfs_os_spare6 = -1;
788 static int hf_lustre_obd_statfs_os_state = -1;
789 static int hf_lustre_obd_statfs_os_spare3 = -1;
790 static int hf_lustre_lustre_msg_v2_lm_magic = -1;
791 static int hf_lustre_lov_mds_md_v1_lmm_object_id = -1;
792 static int hf_lustre_ptlrpc_body_pb_last_seen = -1;
793 static int hf_lustre_obd_ioobj_ioo_max_brw = -1;
794 static int hf_lustre_ptlrpc_body_pb_last_xid = -1;
795 static int hf_lustre_ptlrpc_body_pb_status = -1;
796 static int hf_lustre_niobuf_remote_flags = -1;
797 static int hf_lustre_ll_fid_id = -1;
798 static int hf_lustre_ost_lvb_lvb_blocks = -1;
799 static int hf_lustre_lustre_msg_v2_lm_padding_2 = -1;
800 static int hf_lustre_obd_connect_data_padding1 = -1;
801 static int hf_lustre_lov_ost_data_v1_l_ost_idx = -1;
802 static int hf_lustre_obd_connect_data_padding2 = -1;
803 static int hf_lustre_obd_ioobj_ioo_seq = -1;
804 static int hf_lustre_niobuf_remote_offset=-1;
805 static int hf_lustre_obd_statfs_os_spare2 = -1;
806 static int hf_lustre_lustre_msg_v2_lm_bufcount = -1;
807 static int hf_lustre_ptlrpc_body_pb_handle = -1;
808 static int hf_lustre_obd_connect_data_ocd_transno = -1;
809 static int hf_lustre_lustre_msg_v1_lm_magic = -1;
810 static int hf_lustre_llog_unlink_rec_lur_tail = -1;
811 static int hf_lustre_llog_size_change_rec_lsc_io_epoch = -1;
812 static int hf_lustre_mgs_target_info_mti_flags = -1;
813 static int hf_lustre_ldlm_reply_lock_policy_res1 = -1;
814 static int hf_lustre_llogd_body_lgd_len = -1;
815 static int hf_lustre_qunit_data_old_qd_id = -1;
816 static int hf_lustre_llog_logid_rec_padding1 = -1;
817 static int hf_lustre_quota_adjust_qunit_padding1 = -1;
818 static int hf_lustre_llog_size_change_rec_lsc_fid = -1;
819 static int hf_lustre_llog_rec_hdr_padding = -1;
820 static int hf_lustre_obdo_o_nlink = -1;
821 static int hf_lustre_ldlm_extent_gid = -1;
822 static int hf_lustre_obdo_o_uid = -1;
823 static int hf_lustre_obdo_o_valid = -1;
824 static int hf_lustre_ldlm_reply_lock_flags = -1;
825 static int hf_lustre_obdo_o_misc = -1;
827 static int hf_lustre_ldlm_request_lock_handle = -1;
828 static int hf_lustre_llog_logid_lgl_oid = -1;
829 static int hf_lustre_ldlm_inodebits_bits = -1;
830 static int hf_lustre_llog_log_hdr_llh_count = -1;
831 static int hf_lustre_llog_gen_rec_lgr_tail = -1;
832 static int hf_lustre_llog_catid_lci_padding3 = -1;
833 static int hf_lustre_qunit_data_qd_qunit = -1;
834 static int hf_lustre_llog_setattr_rec_padding = -1;
835 static int hf_lustre_llog_cookie_lgc_lgl = -1;
836 static int hf_lustre_obd_quotactl_qc_dqinfo = -1;
837 static int hf_lustre_llog_log_hdr_llh_bitmap = -1;
838 static int hf_lustre_obd_quotactl_qc_stat = -1;
839 static int hf_lustre_qunit_data_old2_qd_id = -1;
840 static int hf_lustre_llog_logid_rec_padding2 = -1;
841 static int hf_lustre_llog_logid_rec_padding5 = -1;
842 static int hf_lustre_ldlm_intent_opc = -1;
843 static int hf_lustre_llog_rec_hdr_lrh_type = -1;
844 static int hf_lustre_llog_rec_hdr_lrh_len = -1;
845 static int hf_lustre_llog_setattr_rec_lsr_uid = -1;
846 static int hf_lustre_lov_desc_ld_padding_1 = -1;
847 static int hf_lustre_obdo_o_padding_4 = -1;
848 static int hf_lustre_mgs_target_info_padding = -1;
849 static int hf_lustre_obd_quotactl_qc_dqblk = -1;
850 static int hf_lustre_llogd_conn_body_lgdc_gen = -1;
851 static int hf_lustre_llog_log_hdr_llh_tail = -1;
852 static int hf_lustre_obdo_o_size = -1;
853 static int hf_lustre_ldlm_extent_start = -1;
854 static int hf_lustre_llog_size_change_rec_lsc_hdr = -1;
855 static int hf_lustre_llog_logid_lgl_oseq = -1;
856 static int hf_lustre_llog_cookie_lgc_padding = -1;
857 static int hf_lustre_qunit_data_old_qd_type = -1;
858 static int hf_lustre_ldlm_flock_blocking_export = -1;
859 static int hf_lustre_lov_desc_ld_pattern = -1;
860 static int hf_lustre_qunit_data_qd_id = -1;
861 static int hf_lustre_mgs_target_info_mti_fsname = -1;
862 static int hf_lustre_ldlm_request_lock_flags = -1;
863 static int hf_lustre_obdo_o_mode = -1;
864 static int hf_lustre_mgs_target_info_mti_svname = -1;
865 static int hf_lustre_llogd_body_lgd_logid = -1;
866 static int hf_lustre_llog_log_hdr_llh_size = -1;
867 static int hf_lustre_obdo_o_handle = -1;
868 static int hf_lustre_obdo_o_atime = -1;
869 static int hf_lustre_quota_adjust_qunit_qaq_id = -1;
870 static int hf_lustre_ldlm_lock_desc_l_policy_data = -1;
871 static int hf_lustre_obd_quotactl_qc_cmd = -1;
872 static int hf_lustre_qunit_data_padding = -1;
873 static int hf_lustre_quota_adjust_qunit_qaq_flags = -1;
874 static int hf_lustre_ldlm_lock_desc_l_granted_mode = -1;
875 static int hf_lustre_obdo_o_seq = -1;
876 static int hf_lustre_obdo_o_gid = -1;
877 static int hf_lustre_llog_catid_lci_logid = -1;
878 static int hf_lustre_llog_rec_tail_lrt_index = -1;
879 static int hf_lustre_lov_desc_ld_default_stripe_count = -1;
880 static int hf_lustre_ldlm_resource_desc_lr_padding = -1;
881 static int hf_lustre_cfg_marker_cm_vers = -1;
882 static int hf_lustre_llog_unlink_rec_lur_hdr = -1;
883 static int hf_lustre_llogd_body_lgd_index = -1;
884 static int hf_lustre_cfg_marker_cm_tgtname = -1;
885 static int hf_lustre_llog_setattr_rec_lsr_ogen = -1;
886 static int hf_lustre_llog_logid_rec_lid_hdr = -1;
887 static int hf_lustre_obdo_o_ioepoch = -1;
888 static int hf_lustre_ost_body_oa = -1;
889 static int hf_lustre_llog_logid_rec_padding3 = -1;
890 static int hf_lustre_llog_log_hdr_llh_flags = -1;
891 static int hf_lustre_llog_setattr_rec_lsr_oid = -1;
892 static int hf_lustre_llog_size_change_rec_padding = -1;
893 static int hf_lustre_mgs_target_info_mti_config_ver = -1;
894 static int hf_lustre_cfg_marker_cm_createtime = -1;
895 static int hf_lustre_qunit_data_old_qd_count = -1;
896 static int hf_lustre_llog_catid_lci_padding1 = -1;
897 static int hf_lustre_lov_desc_ld_active_tgt_count = -1;
898 static int hf_lustre_obdo_o_lcookie = -1;
899 static int hf_lustre_llog_gen_rec_lgr_gen = -1;
900 static int hf_lustre_obdo_o_id = -1;
901 static int hf_lustre_mgs_target_info_mti_uuid = -1;
902 static int hf_lustre_llog_rec_hdr_lrh_index = -1;
903 static int hf_lustre_llog_setattr_rec_lsr_hdr = -1;
904 static int hf_lustre_mgs_target_info_mti_stripe_index = -1;
905 static int hf_lustre_llog_gen_conn_cnt = -1;
906 static int hf_lustre_obdo_o_padding_6 = -1;
907 static int hf_lustre_llog_cookie_lgc_index = -1;
908 static int hf_lustre_lov_desc_ld_uuid = -1;
909 static int hf_lustre_ldlm_reply_lock_desc = -1;
910 static int hf_lustre_lov_desc_ld_padding_0 = -1;
911 static int hf_lustre_llog_unlink_rec_lur_ogen = -1;
912 static int hf_lustre_cfg_marker_cm_flags = -1;
913 static int hf_lustre_obdo_o_padding_3 = -1;
914 static int hf_lustre_ldlm_request_lock_desc = -1;
915 static int hf_lustre_obdo_o_flags = -1;
916 static int hf_lustre_mgs_target_info_mti_params = -1;
917 static int hf_lustre_llog_logid_lgl_ogen = -1;
918 static int hf_lustre_cfg_marker_cm_comment = -1;
919 static int hf_lustre_llog_unlink_rec_lur_oid = -1;
920 static int hf_lustre_qunit_data_qd_count = -1;
921 static int hf_lustre_obdo_o_mtime = -1;
922 static int hf_lustre_obdo_o_blksize = -1;
923 static int hf_lustre_ldlm_res_id_name = -1;
924 static int hf_lustre_ldlm_reply_lock_handle = -1;
925 static int hf_lustre_llogd_body_lgd_saved_index = -1;
926 static int hf_lustre_qunit_data_old_qd_isblk = -1;
927 static int hf_lustre_obdo_o_blocks = -1;
928 static int hf_lustre_lov_desc_ld_padding_2 = -1;
929 static int hf_lustre_llog_logid_rec_lid_tail = -1;
930 static int hf_lustre_obdo_o_grant = -1;
931 static int hf_lustre_obdo_o_uid_h = -1;
932 static int hf_lustre_obdo_o_gid_h = -1;
933 static int hf_lustre_quota_adjust_qunit_qaq_iunit_sz = -1;
934 static int hf_lustre_llog_unlink_rec_padding = -1;
935 static int hf_lustre_ldlm_lock_desc_l_req_mode = -1;
936 static int hf_lustre_ldlm_extent_end = -1;
937 static int hf_lustre_llog_gen_rec_lgr_hdr = -1;
938 static int hf_lustre_llogd_body_lgd_llh_flags = -1;
939 static int hf_lustre_llog_log_hdr_llh_cat_idx = -1;
940 static int hf_lustre_llog_log_hdr_llh_bitmap_offset=-1;
941 static int hf_lustre_ldlm_reply_lock_padding = -1;
942 static int hf_lustre_obd_quotactl_qc_id = -1;
943 static int hf_lustre_llog_logid_rec_padding4 = -1;
944 static int hf_lustre_llog_setattr_rec_lsr_gid = -1;
945 static int hf_lustre_obd_quotactl_qc_type = -1;
946 static int hf_lustre_cfg_marker_padding = -1;
947 static int hf_lustre_mgs_target_info_mti_nids = -1;
948 static int hf_lustre_obdo_o_stripe_idx = -1;
949 static int hf_lustre_llogd_conn_body_lgdc_logid = -1;
950 static int hf_lustre_ldlm_flock_blocking_pid = -1;
951 static int hf_lustre_lov_desc_ld_tgt_count = -1;
952 static int hf_lustre_llogd_body_lgd_cur_offset=-1;
953 static int hf_lustre_qunit_data_old2_qd_count = -1;
954 static int hf_lustre_qunit_data_old2_qd_flags = -1;
955 static int hf_lustre_ldlm_flock_start = -1;
956 static int hf_lustre_quota_adjust_qunit_qaq_bunit_sz = -1;
957 static int hf_lustre_ldlm_flock_pid = -1;
958 static int hf_lustre_lov_desc_ld_default_stripe_size = -1;
959 static int hf_lustre_llog_log_hdr_llh_tgtuuid = -1;
960 static int hf_lustre_cfg_marker_cm_step = -1;
961 static int hf_lustre_mgs_send_param_mgs_param = -1;
962 static int hf_lustre_lov_desc_ld_default_stripe_offset=-1;
963 static int hf_lustre_ldlm_resource_desc_lr_name = -1;
964 static int hf_lustre_llog_rec_tail_lrt_len = -1;
965 static int hf_lustre_llog_log_hdr_llh_timestamp = -1;
966 static int hf_lustre_llog_catid_lci_padding2 = -1;
967 static int hf_lustre_llogd_conn_body_lgdc_ctxt_idx = -1;
968 static int hf_lustre_cfg_marker_cm_canceltime = -1;
969 static int hf_lustre_mgs_target_info_mti_lustre_ver = -1;
970 static int hf_lustre_obdo_o_parent_ver = -1;
971 static int hf_lustre_qunit_data_qd_flags = -1;
972 static int hf_lustre_llog_logid_rec_lid_id = -1;
973 static int hf_lustre_obdo_o_parent_oid = -1;
974 static int hf_lustre_llog_gen_mnt_cnt = -1;
975 static int hf_lustre_llog_size_change_rec_lsc_tail = -1;
976 static int hf_lustre_obdo_o_padding_5 = -1;
977 static int hf_lustre_ldlm_lock_desc_l_resource = -1;
978 static int hf_lustre_obdo_o_parent_seq = -1;
979 static int hf_lustre_ldlm_request_lock_count = -1;
980 static int hf_lustre_ldlm_flock_end = -1;
981 static int hf_lustre_mgs_target_info_mti_nid_count = -1;
982 static int hf_lustre_obdo_o_ctime = -1;
983 static int hf_lustre_ldlm_reply_lock_policy_res2 = -1;
984 static int hf_lustre_llogd_body_lgd_ctxt_idx = -1;
985 static int hf_lustre_lov_desc_ld_qos_maxage = -1;
986 static int hf_lustre_ldlm_resource_desc_lr_type = -1;
987 static int hf_lustre_llog_setattr_rec_lsr_tail = -1;
988 static int hf_lustre_llog_cookie_lgc_subsys = -1;
989 static int hf_lustre_llog_log_hdr_llh_hdr = -1;
990 static int hf_lustre_llog_log_hdr_llh_reserved = -1;
992 /* Header field declarations for field from lustre_user.h*/
993 static int hf_lustre_obd_dqinfo_dqi_valid = -1;
994 static int hf_lustre_obd_dqblk_dqb_isoftlimit = -1;
995 static int hf_lustre_obd_dqblk_dqb_bhardlimit = -1;
996 static int hf_lustre_obd_dqblk_dqb_curspace = -1;
997 static int hf_lustre_obd_dqblk_dqb_itime = -1;
998 static int hf_lustre_obd_dqblk_dqb_valid = -1;
999 static int hf_lustre_obd_dqinfo_dqi_igrace = -1;
1000 static int hf_lustre_obd_dqinfo_dqi_bgrace = -1;
1001 static int hf_lustre_obd_dqblk_padding = -1;
1002 static int hf_lustre_obd_dqblk_dqb_curinodes = -1;
1003 static int hf_lustre_obd_dqblk_dqb_bsoftlimit = -1;
1004 static int hf_lustre_obd_dqinfo_dqi_flags = -1;
1005 static int hf_lustre_obd_dqblk_dqb_btime = -1;
1006 static int hf_lustre_obd_dqblk_dqb_ihardlimit = -1;
1007 static int hf_lustre_ldlm_intent_opc_open = -1 ;
1008 static int hf_lustre_ldlm_intent_opc_creat = -1;
1009 static int hf_lustre_ldlm_intent_opc_readdir = -1;
1010 static int hf_lustre_ldlm_intent_opc_getattr = -1;
1011 static int hf_lustre_ldlm_intent_opc_lookup = -1;
1012 static int hf_lustre_ldlm_intent_opc_unlink = -1;
1013 static int hf_lustre_ldlm_intent_opc_getxattr = -1;
1014 static int hf_lustre_ldlm_intent_opc_exec = -1;
1015 static int hf_lustre_ldlm_intent_opc_pin = -1;
1016 static int hf_lustre_llog_hdr_llh_flag_zap_when_empty = -1;
1017 static int hf_lustre_llog_hdr_llh_flag_is_cat = -1;
1018 static int hf_lustre_llog_hdr_llh_flag_is_play = -1;
1019 /* --------------------------------------------------------------------*/
1022 /* proto declaration */
1023 static gint proto_lustre = -1;
1028 static int ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_) ;
1029 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_);
1030 static int add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_) ;
1033 /* ======================================================================== */
1034 /*the value_string*/
1035 const value_string lustre_ldlm_opcode[] = {
1036 { IT_OPEN , "IT_OPEN "},
1037 { IT_CREAT , "IT_CREAT "},
1038 { IT_READDIR , "IT_READDIR "},
1039 { IT_GETATTR , "IT_GETATTR "},
1040 { IT_LOOKUP , "IT_LOOKUP "},
1041 { IT_UNLINK , "IT_UNLINK "},
1042 { IT_GETXATTR, "IT_GETXATTR"},
1043 { IT_EXEC , "IT_EXEC "},
1044 { IT_PIN , "IT_PIN "},
1048 const value_string lustre_lov_magic[] = {
1049 { LOV_MAGIC_V1, "LOV_MAGIC_V1" },
1053 const value_string lustre_llog_op_type[] = {
1054 {LLOG_PAD_MAGIC ,"LLOG_PAD_MAGIC "},
1055 {OST_SZ_REC ,"OST_SZ_REC "},
1056 {OST_RAID1_REC ,"OST_RAID1_REC "},
1057 {MDS_UNLINK_REC ,"MDS_UNLINK_REC "},
1058 {MDS_SETATTR_REC ,"MDS_SETATTR_REC "},
1059 {OBD_CFG_REC ,"OBD_CFG_REC "},
1060 {PTL_CFG_REC ,"PTL_CFG_REC "},
1061 {LLOG_GEN_REC ,"LLOG_GEN_REC "},
1062 {LLOG_JOIN_REC ,"LLOG_JOIN_REC "},
1063 {LLOG_HDR_MAGIC ,"LLOG_HDR_MAGIC "},
1064 {LLOG_LOGID_MAGIC ,"LLOG_LOGID_MAGIC"},
1068 const value_string lustre_llog_hdr_llh_flags[]= {
1069 {LLOG_F_ZAP_WHEN_EMPTY , "LLOhdr_llh_G_F_ZAP_WHEN_EMPTY"},
1070 {LLOG_F_IS_CAT , "LLOhdr_llh_G_F_IS_CAT"},
1071 {LLOG_F_IS_PLAIN , "LLOG_F_IS_PLAIN"},
1075 const value_string lustre_mds_flags_vals[] = {
1076 {0x1, "LUSTRE_BFLAG_UNCOMMITTED_WRITES"},
1077 {0x80000000, "LUSTRE_BFLAG_EXT_FLAGS"}, /* == EXT3_RESERVED_FL */
1078 {0x00000008, "LUSTRE_SYNC_FL "}, /* Synchronous updates */
1079 {0x00000010, "LUSTRE_IMMUTABLE_FL "}, /* Immutable file */
1080 {0x00000020, "LUSTRE_APPEND_FL "}, /* writes to file may only append */
1081 {0x00000080, "LUSTRE_NOATIME_FL "}, /* do not update atime */
1082 {0x00010000, "LUSTRE_DIRSYNC_FL "}, /* dirsync behaviour (dir only) */
1086 const value_string lustre_mgs_config_body_types[] = {
1094 const value_string lustre_LMTypes[] = {
1095 { PTL_RPC_MSG_REQUEST, "request"},
1096 { PTL_RPC_MSG_ERR , "error"},
1097 { PTL_RPC_MSG_REPLY , "reply"},
1101 const value_string lustre_mds_reint_t_vals[] = {
1102 { REINT_SETATTR, "REINT_SETATTR" },
1103 { REINT_CREATE, "REINT_CREATE" },
1104 { REINT_LINK, "REINT_LINK" },
1105 { REINT_UNLINK, "REINT_UNLINK" },
1106 { REINT_RENAME, "REINT_RENAME" },
1107 { REINT_OPEN, "REINT_OPEN" },
1108 { REINT_SETXATTR, "REINT_SETXATTR" },
1111 const value_string lustre_op_codes[] = {
1114 {1 , "OST_GETATTR"},
1115 {2 , "OST_SETATTR"},
1119 {6 , "OST_DESTROY"},
1120 {7 , "OST_GET_INFO"},
1121 {8 , "OST_CONNECT"},
1122 {9 , "OST_DISCONNECT"},
1126 {13 , "OST_STATFS"},
1127 {14 , "OST_SAN_READ(deprecated)"},
1128 {15 , "OST_SAN_WRITE(deprecated)"},
1130 {17 , "OST_SET_INFO"},
1131 {18 , "OST_QUOTACHECK"},
1132 {19 , "OST_QUOTACTL"},
1133 {20 , "OST_LAST_OPC"},
1135 {33 , "MDS_GETATTR"},
1136 {34 , "MDS_GETATTR_NAME"},
1139 {37 , "MDS_READPAGE"},
1140 {38 , "MDS_CONNECT"},
1141 {39 , "MDS_DISCONNECT"},
1142 {40 , "MDS_GETSTATUS"},
1143 {41 , "MDS_STATFS"},
1147 {45 , "MDS_DONE_WRITING"},
1148 {46 , "MDS_SET_INFO"},
1149 {47 , "MDS_QUOTACHECK"},
1150 {48 , "MDS_QUOTACTL"},
1151 {49 , "MDS_GETXATTR"},
1152 {50 , "MDS_SETXATTR"},
1153 {51 , "MDS_LAST_OPC"},
1155 {101 , "LDLM_ENQUEUE"},
1156 {102 , "LDLM_CONVERT"},
1157 {103 , "LDLM_CANCEL"},
1158 {104 , "LDLM_BL_CALLBACK"},
1159 {105 , "LDLM_CP_CALLBACK"},
1160 {106 , "LDLM_GL_CALLBACK"},
1161 {107 , "LDLM_LAST_OPC"},
1163 {250 , "MGS_CONNECT"},
1164 {251 , "MGS_DISCONNECT"},
1165 {252 , "MGS_EXCEPTION"},
1166 {253 , "MGS_TARGET_REG"},
1167 {254 , "MGS_TARGET_DEL"},
1168 {255 , "MGS_SET_INFO"},
1169 {256 , "MGS_CONFIG_READ"},
1170 {257 , "MGS_LAST_OPC"},
1173 {401 , "OBD_LOG_CANCEL"},
1174 {402 , "OBD_QC_CALLBACK"},
1175 {403 , "OBD_LAST_OPC"},
1177 { 501, "LLOG_ORIGIN_HANDLE_CREATE"},
1178 { 502, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK"},
1179 { 503, "LLOG_ORIGIN_HANDLE_READ_HEADER"},
1180 { 504, "LLOG_ORIGIN_HANDLE_WRITE_REC"},
1181 { 505, "LLOG_ORIGIN_HANDLE_CLOSE"},
1182 { 506, "LLOG_ORIGIN_CONNECT"},
1183 { 507, "LLOG_CATINFO"},
1184 { 508, "LLOG_ORIGIN_HANDLE_PREV_BLOCK"},
1185 { 509, "LLOG_ORIGIN_HANDLE_DESTROY"},
1186 /* SEQ RPC opcodes */
1187 { 700, "SEQ_QUERY"},
1188 { 701, "SEQ_LAST_OPC"},
1189 /* FLD RPC opcodes */
1190 { 900, "FLD_QUERY"},
1191 { 901, "FLD_LAST_OPC"},
1194 /*const value_string lustre_ldlm_mode_t_vals[] = {*/
1195 /* { LCK_MINMODE, "MINMODE" },*/
1196 /* { LCK_EX, "EX" },*/
1197 /* { LCK_PW, "PW" },*/
1198 /* { LCK_PR, "PR" },*/
1199 /* { LCK_CW, "CW" },*/
1200 /* { LCK_CR, "CR" },*/
1201 /* { LCK_NL, "NL" },*/
1202 /* { LCK_GROUP, "GROUP" },*/
1206 /* detailled version the information came from : http://wiki.lustre.org/images/e/e5/LustreInternals_Architecture.pdf */
1207 const value_string lustre_ldlm_mode_t_vals[] = {
1208 { LCK_MINMODE, "MINMODE" },
1209 { LCK_EX, "Exclusive" },
1210 { LCK_PW, "Protected Write" },
1211 { LCK_PR, "Protected Read" },
1212 { LCK_CW, "Concurrent Write" },
1213 { LCK_CR, "Concurrent Read" },
1215 { LCK_GROUP, "GROUP" },
1219 const value_string lustre_ldlm_type_t_vals[] = {
1220 { LDLM_PLAIN, "LDLM_PLAIN" },
1221 { LDLM_EXTENT,"LDLM_EXTENT" },
1222 { LDLM_FLOCK, "LDLM_FLOCK" },
1223 { LDLM_IBITS, "LDLM_IBITS" },
1228 const value_string lustre_llog_cmd_t_vals[] = {
1229 { LLOG_ORIGIN_HANDLE_CREATE, "LLOG_ORIGIN_HANDLE_CREATE" },
1230 { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK" },
1231 { LLOG_ORIGIN_HANDLE_READ_HEADER, "LLOG_ORIGIN_HANDLE_READ_HEADER" },
1232 { LLOG_ORIGIN_HANDLE_WRITE_REC, "LLOG_ORIGIN_HANDLE_WRITE_REC" },
1233 { LLOG_ORIGIN_HANDLE_CLOSE, "LLOG_ORIGIN_HANDLE_CLOSE" },
1234 { LLOG_ORIGIN_CONNECT, "LLOG_ORIGIN_CONNECT" },
1235 { LLOG_CATINFO, "LLOG_CATINFO" },
1236 { LLOG_ORIGIN_HANDLE_PREV_BLOCK, "LLOG_ORIGIN_HANDLE_PREV_BLOCK" },
1237 { LLOG_ORIGIN_HANDLE_DESTROY, "LLOG_ORIGIN_HANDLE_DESTROY" },
1241 #ifndef ENABLE_STATIC
1242 const gchar version[] = VERSION;
1244 /* Start the functions we need for the plugin stuff */
1247 plugin_register(void)
1249 extern void proto_register_dcerpc_lustre(void);
1251 proto_register_dcerpc_lustre();
1255 plugin_reg_handoff(void)
1257 extern void proto_reg_handoff_lustre(void);
1259 proto_reg_handoff_lustre();
1264 /* ------------------------------------------------------------------- */
1265 /* display functions */
1266 /* ------------------------------------------------------------------- */
1267 /* display str in left corner and in COL */
1268 /* TODO : do we need to use inline here ?*/
1269 /* @gint col : the col where we add the information */
1270 inline static void display_info_str(proto_item *pi, column_info *cinfo, gint col, const gchar* str)
1273 proto_item_append_text(pi, str);
1276 if (check_col(cinfo, col))
1277 col_append_str(cinfo, col, str);
1281 * Need to be (re)written
1283 static void display_info_fstr(proto_item *pi, column_info *cinfo, gint col, const char* format, const gchar * str){
1286 //va_start(ap, format);
1287 proto_item_append_text(pi, format, str);
1292 if (check_col(cinfo, col)){
1294 // va_start(ap, format);
1295 col_append_fstr(cinfo, col, format, str);
1302 /* ------------------------------ basic dissect functions ------------------------ */
1305 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1307 proto_tree_add_item(tree, hfindex, tvb, offset, 8, TRUE);
1313 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1315 proto_tree_add_item(tree, hfindex, tvb, offset, 4, TRUE);
1321 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1323 proto_tree_add_item(tree, hfindex, tvb, offset, 2, TRUE);
1329 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1331 proto_tree_add_item(tree, hfindex, tvb, offset, 1, TRUE);
1334 /* ------------------------------------------------------------------------- */
1336 /* dissect raw data */
1338 lustre_dissect_element_data(tvbuff_t *tvb _U_, int offset _U_,
1339 packet_info *pinfo _U_, proto_tree *parent_tree _U_,
1340 int hf_index _U_, guint32 buf_num)
1342 proto_item *item = NULL;
1347 old_offset = offset;
1349 data_len = LUSTRE_BUFFER_LEN(buf_num);
1353 proto_tree_add_item(parent_tree, hf_index, tvb, offset, data_len, TRUE);
1356 proto_item_set_len(item, offset-old_offset);
1357 offset = add_extra_padding(tvb, offset, pinfo, parent_tree);
1363 lustre_dissect_struct_hmac(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1364 proto_tree *parent_tree _U_, int hf_index _U_, int max_length)
1368 proto_item *item = NULL;
1370 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 0, TRUE);
1371 for (i=0; i < max_length; ++i) {
1372 val = tvb_get_guint8(tvb, offset+i);
1373 proto_item_append_text(item, (i) ? "%02x" : ": %#02x", val);
1376 offset += max_length;
1377 proto_item_set_len(item, max_length);
1381 /* ------------------------------------------------------------------------ */
1385 /* IDL: struct lustre_handle { */
1386 /* IDL: uint64 cookie; */
1390 lustre_dissect_element_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1392 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_handle_cookie);
1398 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_)
1400 proto_item *item = NULL;
1401 proto_tree *tree = NULL;
1407 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1408 tree = proto_item_add_subtree(item, ett_lustre_lustre_handle_cookie);
1411 offset=lustre_dissect_element_handle_cookie(tvb, offset, pinfo, tree);
1414 proto_item_set_len(item, offset-old_offset);
1419 /* IDL: struct obd_connect_data { */
1420 /* IDL: uint64 ocd_connect_flags; */
1421 /* IDL: uint32 ocd_version; */
1422 /* IDL: uint32 ocd_grant; */
1423 /* IDL: uint32 ocd_index; */
1424 /* IDL: uint32 ocd_brw_size; */
1425 /* IDL: uint64 ocd_ibits_known; */
1426 /* IDL: uint32 ocd_nllu; */
1427 /* IDL: uint32 ocd_nllg; */
1428 /* IDL: uint64 ocd_transno; */
1429 /* IDL: uint32 ocd_group; */
1430 /* IDL: uint32 ocd_cksum_types; */
1431 /* IDL: uint64 padding1; */
1432 /* IDL: uint64 padding2; */
1436 lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1438 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_connect_flags);
1444 lustre_dissect_element_obd_connect_data_ocd_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1446 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_version);
1452 lustre_dissect_element_obd_connect_data_ocd_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1454 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_grant);
1460 lustre_dissect_element_obd_connect_data_ocd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1462 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_index);
1468 lustre_dissect_element_obd_connect_data_ocd_brw_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1470 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_brw_size);
1476 lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1478 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_ibits_known);
1484 lustre_dissect_element_obd_connect_data_ocd_nllu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1486 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllu);
1492 lustre_dissect_element_obd_connect_data_ocd_nllg(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1494 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllg);
1500 lustre_dissect_element_obd_connect_data_ocd_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1502 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_transno);
1508 lustre_dissect_element_obd_connect_data_ocd_group(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1510 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_group);
1516 lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1518 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_cksum_types);
1524 lustre_dissect_element_obd_connect_data_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1526 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding1);
1532 lustre_dissect_element_obd_connect_data_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1534 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding2);
1540 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_)
1542 proto_item *item = NULL;
1543 proto_tree *tree = NULL;
1551 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1552 tree = proto_item_add_subtree(item, ett_lustre_obd_connect_data);
1555 offset=lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvb, offset, pinfo, tree);
1557 offset=lustre_dissect_element_obd_connect_data_ocd_version(tvb, offset, pinfo, tree);
1559 offset=lustre_dissect_element_obd_connect_data_ocd_grant(tvb, offset, pinfo, tree);
1561 offset=lustre_dissect_element_obd_connect_data_ocd_index(tvb, offset, pinfo, tree);
1563 offset=lustre_dissect_element_obd_connect_data_ocd_brw_size(tvb, offset, pinfo, tree);
1565 offset=lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvb, offset, pinfo, tree);
1567 offset=lustre_dissect_element_obd_connect_data_ocd_nllu(tvb, offset, pinfo, tree);
1569 offset=lustre_dissect_element_obd_connect_data_ocd_nllg(tvb, offset, pinfo, tree);
1571 offset=lustre_dissect_element_obd_connect_data_ocd_transno(tvb, offset, pinfo, tree);
1573 offset=lustre_dissect_element_obd_connect_data_ocd_group(tvb, offset, pinfo, tree);
1575 offset=lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvb, offset, pinfo, tree);
1577 offset=lustre_dissect_element_obd_connect_data_padding1(tvb, offset, pinfo, tree);
1579 offset=lustre_dissect_element_obd_connect_data_padding2(tvb, offset, pinfo, tree);
1582 proto_item_set_len(item, offset-old_offset);
1588 /* IDL: struct lov_ost_data_v1 { */
1589 /* IDL: uint64 l_object_id; */
1590 /* IDL: uint64 l_object_seq; */
1591 /* IDL: uint32 l_ost_gen; */
1592 /* IDL: uint32 l_ost_idx; */
1596 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_)
1598 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_id);
1604 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_)
1606 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_seq);
1612 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_)
1614 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_gen);
1620 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_)
1622 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_idx);
1628 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_)
1630 proto_item *item = NULL;
1631 proto_tree *tree = NULL;
1639 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1640 tree = proto_item_add_subtree(item, ett_lustre_lov_ost_data_v1);
1643 offset=lustre_dissect_element_lov_ost_data_v1_l_object_id(tvb, offset, pinfo, tree);
1645 offset=lustre_dissect_element_lov_ost_data_v1_l_object_seq(tvb, offset, pinfo, tree);
1647 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvb, offset, pinfo, tree);
1649 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvb, offset, pinfo, tree);
1652 proto_item_set_len(item, offset-old_offset);
1657 /* IDL: struct lov_mds_md_v1 { */
1658 /* IDL: uint32 lmm_magic; */
1659 /* IDL: uint32 lmm_pattern; */
1660 /* IDL: uint64 lmm_object_id; */
1661 /* IDL: uint64 lmm_object_seq; */
1662 /* IDL: uint32 lmm_stripe_size; */
1663 /* IDL: uint32 lmm_stripe_count; */
1664 /* IDL: struct lov_ost_data_v1 { */
1665 /* IDL: } lmm_objects[0]; <-- en fait on en a lmm_stripe_count */
1669 lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1671 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_magic);
1677 lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1679 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_pattern);
1685 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_)
1687 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_id);
1693 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_)
1695 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_seq);
1701 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_)
1703 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_size);
1709 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_)
1711 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_count);
1717 lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1719 offset=lustre_dissect_struct_lov_ost_data_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1_lmm_objects);
1724 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)
1727 /*g_print("num = %d", num);*/
1728 for (i = 0; i < num; i++){
1729 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvb, offset, pinfo, tree);
1738 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_)
1740 proto_item *item = NULL;
1741 proto_tree *tree = NULL;
1744 guint32 stripe_count ;
1750 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1751 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_v1);
1754 offset=lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvb, offset, pinfo, tree);
1756 offset=lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvb, offset, pinfo, tree);
1758 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvb, offset, pinfo, tree);
1760 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_seq(tvb, offset, pinfo, tree);
1762 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvb, offset, pinfo, tree);
1764 stripe_count = tvb_get_letohl(tvb,offset);
1765 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvb, offset, pinfo, tree);
1767 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvb, offset, pinfo, tree, stripe_count);
1770 proto_item_set_len(item, offset-old_offset);
1776 lustre_dissect_struct_lov_mds_md(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1777 proto_tree *parent_tree _U_,
1778 int hf_index _U_, int buff_num _U_)
1782 if(LUSTRE_BUFFER_LEN(buff_num) == 0)
1785 magic=tvb_get_letohl(tvb, offset); /* TODO : replace this with a macro */
1788 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,parent_tree,
1792 offset=lustre_dissect_element_data(tvb, offset, pinfo, parent_tree,
1793 hf_lustre_extra_padding, buff_num);
1802 /* IDL: struct obd_statfs { */
1803 /* IDL: uint64 os_type; */
1804 /* IDL: uint64 os_blocks; */
1805 /* IDL: uint64 os_bfree; */
1806 /* IDL: uint64 os_bavail; */
1807 /* IDL: uint64 os_files; */
1808 /* IDL: uint64 os_ffree; */
1809 /* IDL: uint8 os_fsid[40]; */
1810 /* IDL: uint32 os_bsize; */
1811 /* IDL: uint32 os_namelen; */
1812 /* IDL: uint64 os_maxbytes; */
1813 /* IDL: uint32 os_state; */
1814 /* IDL: uint32 os_spare1; */
1815 /* IDL: uint32 os_spare2; */
1816 /* IDL: uint32 os_spare3; */
1817 /* IDL: uint32 os_spare4; */
1818 /* IDL: uint32 os_spare5; */
1819 /* IDL: uint32 os_spare6; */
1820 /* IDL: uint32 os_spare7; */
1821 /* IDL: uint32 os_spare8; */
1822 /* IDL: uint32 os_spare9; */
1826 lustre_dissect_element_obd_statfs_os_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1828 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_type);
1834 lustre_dissect_element_obd_statfs_os_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1836 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_blocks);
1842 lustre_dissect_element_obd_statfs_os_bfree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1844 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bfree);
1850 lustre_dissect_element_obd_statfs_os_bavail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1852 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bavail);
1858 lustre_dissect_element_obd_statfs_os_files(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1860 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_files);
1866 lustre_dissect_element_obd_statfs_os_ffree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1868 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_ffree);
1874 lustre_dissect_element_obd_statfs_os_fsid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1876 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_fsid);
1882 lustre_dissect_element_obd_statfs_os_fsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1885 for (i = 0; i < 40; i++)
1886 offset=lustre_dissect_element_obd_statfs_os_fsid_(tvb, offset, pinfo, tree);
1894 lustre_dissect_element_obd_statfs_os_bsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1896 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bsize);
1902 lustre_dissect_element_obd_statfs_os_namelen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1904 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_namelen);
1910 lustre_dissect_element_obd_statfs_os_maxbytes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1912 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_maxbytes);
1918 lustre_dissect_element_obd_statfs_os_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1920 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_state);
1926 lustre_dissect_element_obd_statfs_os_spare1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1928 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare1);
1934 lustre_dissect_element_obd_statfs_os_spare2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1936 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare2);
1942 lustre_dissect_element_obd_statfs_os_spare3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1944 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare3);
1950 lustre_dissect_element_obd_statfs_os_spare4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1952 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare4);
1958 lustre_dissect_element_obd_statfs_os_spare5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1960 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare5);
1966 lustre_dissect_element_obd_statfs_os_spare6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1968 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare6);
1974 lustre_dissect_element_obd_statfs_os_spare7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1976 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare7);
1982 lustre_dissect_element_obd_statfs_os_spare8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1984 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare8);
1990 lustre_dissect_element_obd_statfs_os_spare9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1992 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare9);
1998 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_)
2000 proto_item *item = NULL;
2001 proto_tree *tree = NULL;
2009 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2010 tree = proto_item_add_subtree(item, ett_lustre_obd_statfs);
2013 offset=lustre_dissect_element_obd_statfs_os_type(tvb, offset, pinfo, tree);
2015 offset=lustre_dissect_element_obd_statfs_os_blocks(tvb, offset, pinfo, tree);
2017 offset=lustre_dissect_element_obd_statfs_os_bfree(tvb, offset, pinfo, tree);
2019 offset=lustre_dissect_element_obd_statfs_os_bavail(tvb, offset, pinfo, tree);
2021 offset=lustre_dissect_element_obd_statfs_os_files(tvb, offset, pinfo, tree);
2023 offset=lustre_dissect_element_obd_statfs_os_ffree(tvb, offset, pinfo, tree);
2025 offset=lustre_dissect_element_obd_statfs_os_fsid(tvb, offset, pinfo, tree);
2027 offset=lustre_dissect_element_obd_statfs_os_bsize(tvb, offset, pinfo, tree);
2029 offset=lustre_dissect_element_obd_statfs_os_namelen(tvb, offset, pinfo, tree);
2031 offset=lustre_dissect_element_obd_statfs_os_maxbytes(tvb, offset, pinfo, tree);
2033 offset=lustre_dissect_element_obd_statfs_os_state(tvb, offset, pinfo, tree);
2035 offset=lustre_dissect_element_obd_statfs_os_spare1(tvb, offset, pinfo, tree);
2037 offset=lustre_dissect_element_obd_statfs_os_spare2(tvb, offset, pinfo, tree);
2039 offset=lustre_dissect_element_obd_statfs_os_spare3(tvb, offset, pinfo, tree);
2041 offset=lustre_dissect_element_obd_statfs_os_spare4(tvb, offset, pinfo, tree);
2043 offset=lustre_dissect_element_obd_statfs_os_spare5(tvb, offset, pinfo, tree);
2045 offset=lustre_dissect_element_obd_statfs_os_spare6(tvb, offset, pinfo, tree);
2047 offset=lustre_dissect_element_obd_statfs_os_spare7(tvb, offset, pinfo, tree);
2049 offset=lustre_dissect_element_obd_statfs_os_spare8(tvb, offset, pinfo, tree);
2051 offset=lustre_dissect_element_obd_statfs_os_spare9(tvb, offset, pinfo, tree);
2054 proto_item_set_len(item, offset-old_offset);
2059 /* IDL: struct obd_ioobj { */
2060 /* IDL: uint64 ioo_id; */
2061 /* IDL: uint64 ioo_seq; */
2062 /* IDL: uint32 ioo_max_brw; */
2063 /* IDL: uint32 ioo_bufcnt; */
2067 lustre_dissect_element_obd_ioobj_ioo_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2069 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_id);
2075 lustre_dissect_element_obd_ioobj_ioo_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2077 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_seq);
2083 lustre_dissect_element_obd_ioobj_ioo_max_brw(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2085 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_max_brw);
2091 lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2093 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_bufcnt);
2099 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_)
2101 proto_item *item = NULL;
2102 proto_tree *tree = NULL;
2110 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2111 tree = proto_item_add_subtree(item, ett_lustre_obd_ioobj);
2114 offset=lustre_dissect_element_obd_ioobj_ioo_id(tvb, offset, pinfo, tree);
2116 offset=lustre_dissect_element_obd_ioobj_ioo_seq(tvb, offset, pinfo, tree);
2118 offset=lustre_dissect_element_obd_ioobj_ioo_max_brw(tvb, offset, pinfo, tree);
2120 offset=lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvb, offset, pinfo, tree);
2123 proto_item_set_len(item, offset-old_offset);
2128 /* IDL: struct niobuf_remote { */
2129 /* IDL: uint64 offset; */
2130 /* IDL: uint32 len; */
2131 /* IDL: uint32 flags; */
2135 lustre_dissect_element_niobuf_remote_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2137 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_offset);
2143 lustre_dissect_element_niobuf_remote_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2145 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_len);
2151 lustre_dissect_element_niobuf_remote_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2153 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_flags);
2159 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_)
2161 proto_item *item = NULL;
2162 proto_tree *tree = NULL;
2170 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2171 tree = proto_item_add_subtree(item, ett_lustre_niobuf_remote);
2174 offset=lustre_dissect_element_niobuf_remote_offset(tvb, offset, pinfo, tree);
2176 offset=lustre_dissect_element_niobuf_remote_len(tvb, offset, pinfo, tree);
2178 offset=lustre_dissect_element_niobuf_remote_flags(tvb, offset, pinfo, tree);
2181 proto_item_set_len(item, offset-old_offset);
2186 /* IDL: struct ost_lvb { */
2187 /* IDL: uint64 lvb_size; */
2188 /* IDL: uint64 lvb_mtime; */
2189 /* IDL: uint64 lvb_atime; */
2190 /* IDL: uint64 lvb_ctime; */
2191 /* IDL: uint64 lvb_blocks; */
2195 lustre_dissect_element_ost_lvb_lvb_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2197 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_size);
2203 lustre_dissect_element_ost_lvb_lvb_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2207 ns.secs = tvb_get_letohl(tvb,offset);
2209 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_mtime, tvb, offset, 8, &ns );
2215 lustre_dissect_element_ost_lvb_lvb_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2219 ns.secs = tvb_get_letohl(tvb,offset);
2221 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_atime, tvb, offset, 8, &ns );
2228 lustre_dissect_element_ost_lvb_lvb_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2232 ns.secs = tvb_get_letohl(tvb,offset);
2234 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_ctime, tvb, offset, 8, &ns );
2241 lustre_dissect_element_ost_lvb_lvb_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2243 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_blocks);
2249 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_)
2251 proto_item *item = NULL;
2252 proto_tree *tree = NULL;
2260 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2261 tree = proto_item_add_subtree(item, ett_lustre_ost_lvb);
2264 offset=lustre_dissect_element_ost_lvb_lvb_size(tvb, offset, pinfo, tree);
2266 offset=lustre_dissect_element_ost_lvb_lvb_mtime(tvb, offset, pinfo, tree);
2268 offset=lustre_dissect_element_ost_lvb_lvb_atime(tvb, offset, pinfo, tree);
2270 offset=lustre_dissect_element_ost_lvb_lvb_ctime(tvb, offset, pinfo, tree);
2272 offset=lustre_dissect_element_ost_lvb_lvb_blocks(tvb, offset, pinfo, tree);
2275 proto_item_set_len(item, offset-old_offset);
2281 /* IDL: struct ll_fid { */
2282 /* IDL: uint64 id; */
2283 /* IDL: uint32 generation; */
2284 /* IDL: uint32 f_type; */
2288 lustre_dissect_element_ll_fid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2290 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ll_fid_id);
2296 lustre_dissect_element_ll_fid_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2298 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_generation);
2304 lustre_dissect_element_ll_fid_f_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2306 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_f_type);
2312 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_)
2314 proto_item *item = NULL;
2315 proto_tree *tree = NULL;
2321 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2322 tree = proto_item_add_subtree(item, ett_lustre_ll_fid);
2325 offset=lustre_dissect_element_ll_fid_id(tvb, offset, pinfo, tree);
2327 offset=lustre_dissect_element_ll_fid_generation(tvb, offset, pinfo, tree);
2329 offset=lustre_dissect_element_ll_fid_f_type(tvb, offset, pinfo, tree);
2332 proto_item_set_len(item, offset-old_offset);
2337 /* IDL: struct obd_dqinfo { */
2338 /* IDL: uint64 dqi_bgrace; */
2339 /* IDL: uint64 dqi_igrace; */
2340 /* IDL: uint32 dqi_flags; */
2341 /* IDL: uint32 dqi_valid; */
2345 lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2347 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_bgrace);
2353 lustre_dissect_element_obd_dqinfo_dqi_igrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2355 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_igrace);
2361 lustre_dissect_element_obd_dqinfo_dqi_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2363 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_flags);
2369 lustre_dissect_element_obd_dqinfo_dqi_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2371 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_valid);
2377 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_)
2379 proto_item *item = NULL;
2380 proto_tree *tree = NULL;
2385 old_offset = offset;
2388 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2389 tree = proto_item_add_subtree(item, ett_lustre_obd_dqinfo);
2392 offset = lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvb, offset, pinfo, tree);
2394 offset = lustre_dissect_element_obd_dqinfo_dqi_igrace(tvb, offset, pinfo, tree);
2396 offset = lustre_dissect_element_obd_dqinfo_dqi_flags(tvb, offset, pinfo, tree);
2398 offset = lustre_dissect_element_obd_dqinfo_dqi_valid(tvb, offset, pinfo, tree);
2401 proto_item_set_len(item, offset-old_offset);
2406 /* IDL: struct obd_dqblk { */
2407 /* IDL: uint64 dqb_bhardlimit; */
2408 /* IDL: uint64 dqb_bsoftlimit; */
2409 /* IDL: uint64 dqb_curspace; */
2410 /* IDL: uint64 dqb_ihardlimit; */
2411 /* IDL: uint64 dqb_isoftlimit; */
2412 /* IDL: uint64 dqb_curinodes; */
2413 /* IDL: uint64 dqb_btime; */
2414 /* IDL: uint64 dqb_itime; */
2415 /* IDL: uint32 dqb_valid; */
2416 /* IDL: uint32 padding; */
2420 lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2422 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bhardlimit);
2428 lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2430 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bsoftlimit);
2436 lustre_dissect_element_obd_dqblk_dqb_curspace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2438 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curspace);
2444 lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2446 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_ihardlimit);
2452 lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2454 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_isoftlimit);
2460 lustre_dissect_element_obd_dqblk_dqb_curinodes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2462 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curinodes);
2468 lustre_dissect_element_obd_dqblk_dqb_btime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2473 ns.secs = tvb_get_letohl(tvb,offset);
2475 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_btime, tvb, offset, 8, &ns );
2481 lustre_dissect_element_obd_dqblk_dqb_itime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2485 ns.secs = tvb_get_letohl(tvb,offset);
2487 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_itime, tvb, offset, 8, &ns );
2494 lustre_dissect_element_obd_dqblk_dqb_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2496 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_valid);
2502 lustre_dissect_element_obd_dqblk_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2504 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_padding);
2510 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_)
2512 proto_item *item = NULL;
2513 proto_tree *tree = NULL;
2518 old_offset = offset;
2521 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2522 tree = proto_item_add_subtree(item, ett_lustre_obd_dqblk);
2525 offset = lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvb, offset, pinfo, tree);
2527 offset = lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvb, offset, pinfo, tree);
2529 offset = lustre_dissect_element_obd_dqblk_dqb_curspace(tvb, offset, pinfo, tree);
2531 offset = lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvb, offset, pinfo, tree);
2533 offset = lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvb, offset, pinfo, tree);
2535 offset = lustre_dissect_element_obd_dqblk_dqb_curinodes(tvb, offset, pinfo, tree);
2537 offset = lustre_dissect_element_obd_dqblk_dqb_btime(tvb, offset, pinfo, tree);
2539 offset = lustre_dissect_element_obd_dqblk_dqb_itime(tvb, offset, pinfo, tree);
2541 offset = lustre_dissect_element_obd_dqblk_dqb_valid(tvb, offset, pinfo, tree);
2543 offset = lustre_dissect_element_obd_dqblk_padding(tvb, offset, pinfo, tree);
2546 proto_item_set_len(item, offset-old_offset);
2552 /* IDL: struct obd_quotactl { */
2553 /* IDL: uint32 qc_cmd; */
2554 /* IDL: uint32 qc_type; */
2555 /* IDL: uint32 qc_id; */
2556 /* IDL: uint32 qc_stat; */
2557 /* IDL: struct obd_dqinfo { */
2558 /* IDL: } qc_dqinfo; */
2559 /* IDL: struct obd_dqblk { */
2560 /* IDL: } qc_dqblk; */
2564 lustre_dissect_element_obd_quotactl_qc_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2566 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_cmd);
2572 lustre_dissect_element_obd_quotactl_qc_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2574 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_type);
2580 lustre_dissect_element_obd_quotactl_qc_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2582 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_id);
2588 lustre_dissect_element_obd_quotactl_qc_stat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2590 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_stat);
2598 lustre_dissect_element_obd_quotactl_qc_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2600 offset=lustre_dissect_struct_obd_dqblk(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqblk);
2605 lustre_dissect_element_obd_quotactl_qc_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2607 offset=lustre_dissect_struct_obd_dqinfo(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqinfo);
2612 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_)
2614 proto_item *item = NULL;
2615 proto_tree *tree = NULL;
2621 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2622 tree = proto_item_add_subtree(item, ett_lustre_obd_quotactl);
2625 offset=lustre_dissect_element_obd_quotactl_qc_cmd(tvb, offset, pinfo, tree);
2627 offset=lustre_dissect_element_obd_quotactl_qc_type(tvb, offset, pinfo, tree);
2629 offset=lustre_dissect_element_obd_quotactl_qc_id(tvb, offset, pinfo, tree);
2631 offset=lustre_dissect_element_obd_quotactl_qc_stat(tvb, offset, pinfo, tree);
2633 offset=lustre_dissect_element_obd_quotactl_qc_dqinfo(tvb, offset, pinfo, tree);
2635 offset=lustre_dissect_element_obd_quotactl_qc_dqblk(tvb, offset, pinfo, tree);
2638 proto_item_set_len(item, offset-old_offset);
2644 /* IDL: struct quota_adjust_qunit { */
2645 /* IDL: uint32 qaq_flags; */
2646 /* IDL: uint32 qaq_id; */
2647 /* IDL: uint64 qaq_bunit_sz; */
2648 /* IDL: uint64 qaq_iunit_sz; */
2649 /* IDL: uint64 padding1; */
2653 lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2655 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_flags);
2661 lustre_dissect_element_quota_adjust_qunit_qaq_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2663 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_id);
2669 lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2671 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_bunit_sz);
2677 lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2679 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_iunit_sz);
2685 lustre_dissect_element_quota_adjust_qunit_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2687 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_padding1);
2693 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_)
2695 proto_item *item = NULL;
2696 proto_tree *tree = NULL;
2704 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2705 tree = proto_item_add_subtree(item, ett_lustre_quota_adjust_qunit);
2708 offset=lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvb, offset, pinfo, tree);
2710 offset=lustre_dissect_element_quota_adjust_qunit_qaq_id(tvb, offset, pinfo, tree);
2712 offset=lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvb, offset, pinfo, tree);
2714 offset=lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvb, offset, pinfo, tree);
2716 offset=lustre_dissect_element_quota_adjust_qunit_padding1(tvb, offset, pinfo, tree);
2719 proto_item_set_len(item, offset-old_offset);
2724 /* IDL: struct mdt_body { */
2725 /* IDL: struct lu_fid { */
2727 /* IDL: struct lu_fid { */
2729 /* IDL: struct lustre_handle { */
2730 /* IDL: } handle; */
2731 /* IDL: uint64 valid; */
2732 /* IDL: uint64 size; */
2733 /* IDL: uint64 mtime; */
2734 /* IDL: uint64 atime; */
2735 /* IDL: uint64 ctime; */
2736 /* IDL: uint64 blocks; */
2737 /* IDL: uint64 ioepoch; */
2738 /* IDL: uint64 ino; */
2739 /* IDL: uint32 fsuid; */
2740 /* IDL: uint32 fsgid; */
2741 /* IDL: uint32 capability; */
2742 /* IDL: uint32 mode; */
2743 /* IDL: uint32 uid; */
2744 /* IDL: uint32 gid; */
2745 /* IDL: uint32 flags; */
2746 /* IDL: uint32 rdev; */
2747 /* IDL: uint32 nlink; */
2748 /* IDL: uint32 generation; */
2749 /* IDL: uint32 suppgid; */
2750 /* IDL: uint32 eadatasize; */
2751 /* IDL: uint32 aclsize; */
2752 /* IDL: uint32 max_mdsize; */
2753 /* IDL: uint32 max_cookiesize; */
2754 /* IDL: uint32 uid_h; */
2755 /* IDL: uint32 gid_h; */
2756 /* IDL: uint32 padding_5; */
2757 /* IDL: uint64 padding_6; */
2758 /* IDL: uint64 padding_7; */
2759 /* IDL: uint64 padding_8; */
2760 /* IDL: uint64 padding_9; */
2761 /* IDL: uint64 padding_10; */
2765 lustre_dissect_element_mdt_body_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2767 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid1);
2772 lustre_dissect_element_mdt_body_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2774 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid2);
2779 lustre_dissect_element_mdt_body_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2781 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
2787 lustre_dissect_element_mdt_body_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2789 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_valid);
2795 lustre_dissect_element_mdt_body_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2797 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_size);
2803 lustre_dissect_element_mdt_body_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2807 ns.secs = tvb_get_letohl(tvb,offset);
2809 proto_tree_add_time(tree, hf_lustre_mdt_body_mtime, tvb, offset, 8, &ns );
2815 lustre_dissect_element_mdt_body_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2819 ns.secs = tvb_get_letohl(tvb,offset);
2821 proto_tree_add_time(tree, hf_lustre_mdt_body_atime, tvb, offset, 8, &ns );
2828 lustre_dissect_element_mdt_body_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2832 ns.secs = tvb_get_letohl(tvb,offset);
2834 proto_tree_add_time(tree, hf_lustre_mdt_body_ctime, tvb, offset, 8, &ns );
2840 lustre_dissect_element_mdt_body_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2842 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_blocks);
2848 lustre_dissect_element_mdt_body_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2850 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ioepoch);
2856 lustre_dissect_element_mdt_body_ino(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2858 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ino);
2864 lustre_dissect_element_mdt_body_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2866 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsuid);
2872 lustre_dissect_element_mdt_body_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2874 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsgid);
2880 lustre_dissect_element_mdt_body_capability(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2882 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_capability);
2888 lustre_dissect_element_mdt_body_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2890 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_mode);
2896 lustre_dissect_element_mdt_body_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2898 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid);
2904 lustre_dissect_element_mdt_body_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2906 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid);
2912 lustre_dissect_element_mdt_body_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2914 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_flags);
2920 lustre_dissect_element_mdt_body_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2922 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_rdev);
2928 lustre_dissect_element_mdt_body_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2930 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_nlink);
2936 lustre_dissect_element_mdt_body_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2938 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_generation);
2944 lustre_dissect_element_mdt_body_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2946 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_suppgid);
2952 lustre_dissect_element_mdt_body_eadatasize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2954 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_eadatasize);
2960 lustre_dissect_element_mdt_body_aclsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2962 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_aclsize);
2968 lustre_dissect_element_mdt_body_max_mdsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2970 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_mdsize);
2976 lustre_dissect_element_mdt_body_max_cookiesize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2978 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_cookiesize);
2984 lustre_dissect_element_mdt_body_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2986 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid_h);
2992 lustre_dissect_element_mdt_body_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2994 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid_h);
3000 lustre_dissect_element_mdt_body_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3002 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_5);
3008 lustre_dissect_element_mdt_body_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3010 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_6);
3016 lustre_dissect_element_mdt_body_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3018 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_7);
3024 lustre_dissect_element_mdt_body_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3026 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_8);
3032 lustre_dissect_element_mdt_body_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3034 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_9);
3040 lustre_dissect_element_mdt_body_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3042 offset= dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_10);
3048 lustre_dissect_struct_mdt_body(tvbuff_t *tvb _U_, int offset _U_,
3049 packet_info *pinfo _U_,
3050 proto_tree *parent_tree _U_,
3053 proto_item *item = NULL;
3054 proto_tree *tree = NULL;
3061 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3062 tree = proto_item_add_subtree(item, ett_lustre_mdt_body);
3065 offset=lustre_dissect_element_mdt_body_fid1(tvb, offset, pinfo, tree);
3067 offset=lustre_dissect_element_mdt_body_fid2(tvb, offset, pinfo, tree);
3069 offset=lustre_dissect_element_mdt_body_handle(tvb, offset, pinfo, tree);
3071 offset=lustre_dissect_element_mdt_body_valid(tvb, offset, pinfo, tree);
3073 offset=lustre_dissect_element_mdt_body_size(tvb, offset, pinfo, tree);
3075 offset=lustre_dissect_element_mdt_body_mtime(tvb, offset, pinfo, tree);
3077 offset=lustre_dissect_element_mdt_body_atime(tvb, offset, pinfo, tree);
3079 offset=lustre_dissect_element_mdt_body_ctime(tvb, offset, pinfo, tree);
3081 offset=lustre_dissect_element_mdt_body_blocks(tvb, offset, pinfo, tree);
3083 offset=lustre_dissect_element_mdt_body_ioepoch(tvb, offset, pinfo, tree);
3085 offset=lustre_dissect_element_mdt_body_ino(tvb, offset, pinfo, tree);
3087 offset=lustre_dissect_element_mdt_body_fsuid(tvb, offset, pinfo, tree);
3089 offset=lustre_dissect_element_mdt_body_fsgid(tvb, offset, pinfo, tree);
3091 offset=lustre_dissect_element_mdt_body_capability(tvb, offset, pinfo, tree);
3093 offset=lustre_dissect_element_mdt_body_mode(tvb, offset, pinfo, tree);
3095 offset=lustre_dissect_element_mdt_body_uid(tvb, offset, pinfo, tree);
3097 offset=lustre_dissect_element_mdt_body_gid(tvb, offset, pinfo, tree);
3099 offset=lustre_dissect_element_mdt_body_flags(tvb, offset, pinfo, tree);
3101 offset=lustre_dissect_element_mdt_body_rdev(tvb, offset, pinfo, tree);
3103 offset=lustre_dissect_element_mdt_body_nlink(tvb, offset, pinfo, tree);
3105 offset=lustre_dissect_element_mdt_body_generation(tvb, offset, pinfo, tree);
3107 offset=lustre_dissect_element_mdt_body_suppgid(tvb, offset, pinfo, tree);
3109 offset=lustre_dissect_element_mdt_body_eadatasize(tvb, offset, pinfo, tree);
3111 offset=lustre_dissect_element_mdt_body_aclsize(tvb, offset, pinfo, tree);
3113 offset=lustre_dissect_element_mdt_body_max_mdsize(tvb, offset, pinfo, tree);
3115 offset=lustre_dissect_element_mdt_body_max_cookiesize(tvb, offset, pinfo, tree);
3117 offset=lustre_dissect_element_mdt_body_uid_h(tvb, offset, pinfo, tree);
3119 offset=lustre_dissect_element_mdt_body_gid_h(tvb, offset, pinfo, tree);
3121 offset=lustre_dissect_element_mdt_body_padding_5(tvb, offset, pinfo, tree);
3123 offset=lustre_dissect_element_mdt_body_padding_6(tvb, offset, pinfo, tree);
3125 offset=lustre_dissect_element_mdt_body_padding_7(tvb, offset, pinfo, tree);
3127 offset=lustre_dissect_element_mdt_body_padding_8(tvb, offset, pinfo, tree);
3129 offset=lustre_dissect_element_mdt_body_padding_9(tvb, offset, pinfo, tree);
3131 offset=lustre_dissect_element_mdt_body_padding_10(tvb, offset, pinfo, tree);
3134 proto_item_set_len(item, offset-old_offset);
3139 /* I don't find where this struct appear on wire.. need to search mdc_setattr_pack() */
3140 /* IDL: struct mdt_rec_setattr { */
3141 /* IDL: uint32 sa_opcode; */
3142 /* IDL: uint32 sa_cap; */
3143 /* IDL: uint32 sa_fsuid; */
3144 /* IDL: uint32 sa_fsuid_h; */
3145 /* IDL: uint32 sa_fsgid; */
3146 /* IDL: uint32 sa_fsgid_h; */
3147 /* IDL: uint32 sa_suppgid; */
3148 /* IDL: uint32 sa_suppgid_h; */
3149 /* IDL: uint32 sa_padding_1; */
3150 /* IDL: uint32 sa_padding_1_h; */
3151 /* IDL: struct lu_fid { */
3152 /* IDL: } sa_fid; */
3153 /* IDL: uint64 sa_valid; */
3154 /* IDL: uint32 sa_uid; */
3155 /* IDL: uint32 sa_gid; */
3156 /* IDL: uint64 sa_size; */
3157 /* IDL: uint64 sa_blocks; */
3158 /* IDL: uint64 sa_mtime; */
3159 /* IDL: uint64 sa_atime; */
3160 /* IDL: uint64 sa_ctime; */
3161 /* IDL: uint32 sa_attr_flags; */
3162 /* IDL: uint32 sa_mode; */
3163 /* IDL: uint32 sa_padding_2; */
3164 /* IDL: uint32 sa_padding_3; */
3165 /* IDL: uint32 sa_padding_4; */
3166 /* IDL: uint32 sa_padding_5; */
3170 lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3172 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_opcode);
3178 lustre_dissect_element_mdt_rec_setattr_sa_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3180 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_cap);
3186 lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3188 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid);
3194 lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3196 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid_h);
3202 lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3204 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid);
3210 lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3212 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid_h);
3218 lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3220 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid);
3226 lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3228 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid_h);
3234 lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3236 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1);
3242 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_)
3244 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1_h);
3250 lustre_dissect_element_mdt_rec_setattr_sa_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3252 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setattr_sa_fid);
3258 lustre_dissect_element_mdt_rec_setattr_sa_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3260 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_valid);
3266 lustre_dissect_element_mdt_rec_setattr_sa_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3268 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_uid);
3274 lustre_dissect_element_mdt_rec_setattr_sa_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3276 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_gid);
3282 lustre_dissect_element_mdt_rec_setattr_sa_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3284 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_size);
3290 lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3292 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_blocks);
3298 lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3303 ns.secs = tvb_get_letohl(tvb,offset);
3305 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_mtime, tvb, offset, 8, &ns );
3311 lustre_dissect_element_mdt_rec_setattr_sa_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3315 ns.secs = tvb_get_letohl(tvb,offset);
3317 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_atime, tvb, offset, 8, &ns );
3323 lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3327 ns.secs = tvb_get_letohl(tvb,offset);
3329 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_ctime, tvb, offset, 8, &ns );
3335 lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3337 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_attr_flags);
3343 lustre_dissect_element_mdt_rec_setattr_sa_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3345 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_mode);
3351 lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3353 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_2);
3359 lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3361 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_3);
3367 lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3369 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_4);
3375 lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3377 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_5);
3383 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_)
3385 proto_item *item = NULL;
3386 proto_tree *tree = NULL;
3395 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3396 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setattr);
3398 sa_opcode=tvb_get_letohl(tvb,offset);
3399 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sa_opcode, lustre_mds_reint_t_vals, "Unknown sa_opc"));
3401 offset=lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvb, offset, pinfo, tree);
3403 offset=lustre_dissect_element_mdt_rec_setattr_sa_cap(tvb, offset, pinfo, tree);
3405 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvb, offset, pinfo, tree);
3407 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvb, offset, pinfo, tree);
3409 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvb, offset, pinfo, tree);
3411 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvb, offset, pinfo, tree);
3413 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvb, offset, pinfo, tree);
3415 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvb, offset, pinfo, tree);
3417 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvb, offset, pinfo, tree);
3419 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1_h(tvb, offset, pinfo, tree);
3421 offset=lustre_dissect_element_mdt_rec_setattr_sa_fid(tvb, offset, pinfo, tree);
3423 offset=lustre_dissect_element_mdt_rec_setattr_sa_valid(tvb, offset, pinfo, tree);
3425 offset=lustre_dissect_element_mdt_rec_setattr_sa_uid(tvb, offset, pinfo, tree);
3427 offset=lustre_dissect_element_mdt_rec_setattr_sa_gid(tvb, offset, pinfo, tree);
3429 offset=lustre_dissect_element_mdt_rec_setattr_sa_size(tvb, offset, pinfo, tree);
3431 offset=lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvb, offset, pinfo, tree);
3433 offset=lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvb, offset, pinfo, tree);
3435 offset=lustre_dissect_element_mdt_rec_setattr_sa_atime(tvb, offset, pinfo, tree);
3437 offset=lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvb, offset, pinfo, tree);
3439 offset=lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvb, offset, pinfo, tree);
3441 offset=lustre_dissect_element_mdt_rec_setattr_sa_mode(tvb, offset, pinfo, tree);
3443 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvb, offset, pinfo, tree);
3445 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvb, offset, pinfo, tree);
3447 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvb, offset, pinfo, tree);
3449 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvb, offset, pinfo, tree);
3452 proto_item_set_len(item, offset-old_offset);
3457 /* IDL: struct mdt_rec_create { */
3458 /* IDL: uint32 cr_opcode; */
3459 /* IDL: uint32 cr_cap; */
3460 /* IDL: uint32 cr_fsuid; */
3461 /* IDL: uint32 cr_fsuid_h; */
3462 /* IDL: uint32 cr_fsgid; */
3463 /* IDL: uint32 cr_fsgid_h; */
3464 /* IDL: uint32 cr_suppgid1; */
3465 /* IDL: uint32 cr_suppgid1_h; */
3466 /* IDL: uint32 cr_suppgid2; */
3467 /* IDL: uint32 cr_suppgid2_h; */
3468 /* IDL: struct lu_fid { */
3469 /* IDL: } cr_fid1; */
3470 /* IDL: struct lu_fid { */
3471 /* IDL: } cr_fid2; */
3472 /* IDL: struct lustre_handle { */
3473 /* IDL: } cr_old_handle; */
3474 /* IDL: uint64 cr_time; */
3475 /* IDL: uint64 cr_rdev; */
3476 /* IDL: uint64 cr_ioepoch; */
3477 /* IDL: uint64 cr_padding_1; */
3478 /* IDL: uint32 cr_mode; */
3479 /* IDL: uint32 cr_bias; */
3480 /* IDL: uint32 cr_flags_l; */
3481 /* IDL: uint32 cr_flags_h; */
3482 /* IDL: uint32 cr_umask; */
3483 /* IDL: uint32 cr_padding_4; */
3487 lustre_dissect_element_mdt_rec_create_cr_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3489 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_opcode);
3495 lustre_dissect_element_mdt_rec_create_cr_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3497 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_cap);
3503 lustre_dissect_element_mdt_rec_create_cr_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3505 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid);
3511 lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3513 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid_h);
3519 lustre_dissect_element_mdt_rec_create_cr_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3521 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid);
3527 lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3529 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid_h);
3535 lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3537 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1);
3543 lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3545 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1_h);
3551 lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3553 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid2);
3559 lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3561 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid2_h);
3567 lustre_dissect_element_mdt_rec_create_cr_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3569 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid1);
3574 lustre_dissect_element_mdt_rec_create_cr_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3576 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid2);
3581 lustre_dissect_element_mdt_rec_create_cr_old_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3583 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_old_handle);
3588 lustre_dissect_element_mdt_rec_create_cr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3592 ns.secs = tvb_get_letohl(tvb,offset);
3594 proto_tree_add_time(tree, hf_lustre_mdt_rec_create_cr_time, tvb, offset, 8, &ns );
3601 lustre_dissect_element_mdt_rec_create_cr_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3603 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_rdev);
3609 lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3611 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_ioepoch);
3617 lustre_dissect_element_mdt_rec_create_cr_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3619 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_1);
3625 lustre_dissect_element_mdt_rec_create_cr_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3627 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_mode);
3633 lustre_dissect_element_mdt_rec_create_cr_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3635 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_bias);
3641 lustre_dissect_element_mdt_rec_create_cr_flags_l(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3643 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_l);
3649 lustre_dissect_element_mdt_rec_create_cr_flags_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3651 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_h);
3657 lustre_dissect_element_mdt_rec_create_cr_umask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3659 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_umask);
3665 lustre_dissect_element_mdt_rec_create_cr_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3667 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_4);
3673 lustre_dissect_struct_mdt_rec_create(tvbuff_t *tvb _U_, int offset _U_,
3674 packet_info *pinfo _U_,
3675 proto_tree *parent_tree _U_,
3678 proto_item *item = NULL;
3679 proto_tree *tree = NULL;
3686 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3687 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_create);
3689 cr_opcode=tvb_get_letohl(tvb,offset);
3690 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(cr_opcode, lustre_mds_reint_t_vals, "Unknown cr_opc"));
3692 offset=lustre_dissect_element_mdt_rec_create_cr_opcode(tvb, offset, pinfo, tree);
3694 offset=lustre_dissect_element_mdt_rec_create_cr_cap(tvb, offset, pinfo, tree);
3696 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid(tvb, offset, pinfo, tree);
3698 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvb, offset, pinfo, tree);
3700 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid(tvb, offset, pinfo, tree);
3702 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvb, offset, pinfo, tree);
3704 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvb, offset, pinfo, tree);
3706 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvb, offset, pinfo, tree);
3708 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvb, offset, pinfo, tree);
3710 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvb, offset, pinfo, tree);
3712 offset=lustre_dissect_element_mdt_rec_create_cr_fid1(tvb, offset, pinfo, tree);
3714 offset=lustre_dissect_element_mdt_rec_create_cr_fid2(tvb, offset, pinfo, tree);
3716 offset=lustre_dissect_element_mdt_rec_create_cr_old_handle(tvb, offset, pinfo, tree);
3718 offset=lustre_dissect_element_mdt_rec_create_cr_time(tvb, offset, pinfo, tree);
3720 offset=lustre_dissect_element_mdt_rec_create_cr_rdev(tvb, offset, pinfo, tree);
3722 offset=lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvb, offset, pinfo, tree);
3724 offset=lustre_dissect_element_mdt_rec_create_cr_padding_1(tvb, offset, pinfo, tree);
3726 offset=lustre_dissect_element_mdt_rec_create_cr_mode(tvb, offset, pinfo, tree);
3728 offset=lustre_dissect_element_mdt_rec_create_cr_bias(tvb, offset, pinfo, tree);
3730 offset=lustre_dissect_element_mdt_rec_create_cr_flags_l(tvb, offset, pinfo, tree);
3732 offset=lustre_dissect_element_mdt_rec_create_cr_flags_h(tvb, offset, pinfo, tree);
3734 offset=lustre_dissect_element_mdt_rec_create_cr_umask(tvb, offset, pinfo, tree);
3736 offset=lustre_dissect_element_mdt_rec_create_cr_padding_4(tvb, offset, pinfo, tree);
3738 proto_item_set_len(item, offset-old_offset);
3743 /* TODO : find where this structure appear ! */
3744 /* IDL: struct mdt_rec_link { */
3745 /* IDL: uint32 lk_opcode; */
3746 /* IDL: uint32 lk_cap; */
3747 /* IDL: uint32 lk_fsuid; */
3748 /* IDL: uint32 lk_fsuid_h; */
3749 /* IDL: uint32 lk_fsgid; */
3750 /* IDL: uint32 lk_fsgid_h; */
3751 /* IDL: uint32 lk_suppgid1; */
3752 /* IDL: uint32 lk_suppgid1_h; */
3753 /* IDL: uint32 lk_suppgid2; */
3754 /* IDL: uint32 lk_suppgid2_h; */
3755 /* IDL: struct lu_fid { */
3756 /* IDL: } lk_fid1; */
3757 /* IDL: struct lu_fid { */
3758 /* IDL: } lk_fid2; */
3759 /* IDL: uint64 lk_time; */
3760 /* IDL: uint64 lk_padding_1; */
3761 /* IDL: uint64 lk_padding_2; */
3762 /* IDL: uint64 lk_padding_3; */
3763 /* IDL: uint64 lk_padding_4; */
3764 /* IDL: uint32 lk_bias; */
3765 /* IDL: uint32 lk_padding_5; */
3766 /* IDL: uint32 lk_padding_6; */
3767 /* IDL: uint32 lk_padding_7; */
3768 /* IDL: uint32 lk_padding_8; */
3769 /* IDL: uint32 lk_padding_9; */
3773 lustre_dissect_element_mdt_rec_link_lk_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3775 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_opcode);
3781 lustre_dissect_element_mdt_rec_link_lk_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3783 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_cap);
3789 lustre_dissect_element_mdt_rec_link_lk_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3791 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid);
3797 lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3799 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid_h);
3805 lustre_dissect_element_mdt_rec_link_lk_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3807 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid);
3813 lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3815 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid_h);
3821 lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3823 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1);
3829 lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3831 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1_h);
3837 lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3839 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2);
3845 lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3847 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2_h);
3853 lustre_dissect_element_mdt_rec_link_lk_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3855 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid1);
3860 lustre_dissect_element_mdt_rec_link_lk_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3862 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid2);
3867 lustre_dissect_element_mdt_rec_link_lk_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3871 ns.secs = tvb_get_letohl(tvb,offset);
3873 proto_tree_add_time(tree, hf_lustre_mdt_rec_link_lk_time, tvb, offset, 8, &ns );
3879 lustre_dissect_element_mdt_rec_link_lk_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3881 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_1);
3887 lustre_dissect_element_mdt_rec_link_lk_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3889 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_2);
3895 lustre_dissect_element_mdt_rec_link_lk_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3897 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_3);
3903 lustre_dissect_element_mdt_rec_link_lk_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3905 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_4);
3911 lustre_dissect_element_mdt_rec_link_lk_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3913 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_bias);
3919 lustre_dissect_element_mdt_rec_link_lk_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3921 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_5);
3927 lustre_dissect_element_mdt_rec_link_lk_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3929 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_6);
3935 lustre_dissect_element_mdt_rec_link_lk_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3937 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_7);
3943 lustre_dissect_element_mdt_rec_link_lk_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3945 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_8);
3951 lustre_dissect_element_mdt_rec_link_lk_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3953 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_9);
3959 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_)
3961 proto_item *item = NULL;
3962 proto_tree *tree = NULL;
3971 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3972 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_link);
3974 lk_opcode=tvb_get_letohl(tvb,offset);
3975 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lk_opcode, lustre_mds_reint_t_vals, "Unknown lk_opc"));
3977 offset=lustre_dissect_element_mdt_rec_link_lk_opcode(tvb, offset, pinfo, tree);
3979 offset=lustre_dissect_element_mdt_rec_link_lk_cap(tvb, offset, pinfo, tree);
3981 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid(tvb, offset, pinfo, tree);
3983 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvb, offset, pinfo, tree);
3985 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid(tvb, offset, pinfo, tree);
3987 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvb, offset, pinfo, tree);
3989 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvb, offset, pinfo, tree);
3991 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvb, offset, pinfo, tree);
3993 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvb, offset, pinfo, tree);
3995 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvb, offset, pinfo, tree);
3997 offset=lustre_dissect_element_mdt_rec_link_lk_fid1(tvb, offset, pinfo, tree);
3999 offset=lustre_dissect_element_mdt_rec_link_lk_fid2(tvb, offset, pinfo, tree);
4001 offset=lustre_dissect_element_mdt_rec_link_lk_time(tvb, offset, pinfo, tree);
4003 offset=lustre_dissect_element_mdt_rec_link_lk_padding_1(tvb, offset, pinfo, tree);
4005 offset=lustre_dissect_element_mdt_rec_link_lk_padding_2(tvb, offset, pinfo, tree);
4007 offset=lustre_dissect_element_mdt_rec_link_lk_padding_3(tvb, offset, pinfo, tree);
4009 offset=lustre_dissect_element_mdt_rec_link_lk_padding_4(tvb, offset, pinfo, tree);
4011 offset=lustre_dissect_element_mdt_rec_link_lk_bias(tvb, offset, pinfo, tree);
4013 offset=lustre_dissect_element_mdt_rec_link_lk_padding_5(tvb, offset, pinfo, tree);
4015 offset=lustre_dissect_element_mdt_rec_link_lk_padding_6(tvb, offset, pinfo, tree);
4017 offset=lustre_dissect_element_mdt_rec_link_lk_padding_7(tvb, offset, pinfo, tree);
4019 offset=lustre_dissect_element_mdt_rec_link_lk_padding_8(tvb, offset, pinfo, tree);
4021 offset=lustre_dissect_element_mdt_rec_link_lk_padding_9(tvb, offset, pinfo, tree);
4024 proto_item_set_len(item, offset-old_offset);
4029 /* IDL: struct mdt_rec_unlink { */
4030 /* IDL: uint32 ul_opcode; */
4031 /* IDL: uint32 ul_cap; */
4032 /* IDL: uint32 ul_fsuid; */
4033 /* IDL: uint32 ul_fsuid_h; */
4034 /* IDL: uint32 ul_fsgid; */
4035 /* IDL: uint32 ul_fsgid_h; */
4036 /* IDL: uint32 ul_suppgid1; */
4037 /* IDL: uint32 ul_suppgid1_h; */
4038 /* IDL: uint32 ul_suppgid2; */
4039 /* IDL: uint32 ul_suppgid2_h; */
4040 /* IDL: struct lu_fid { */
4041 /* IDL: } ul_fid1; */
4042 /* IDL: struct lu_fid { */
4043 /* IDL: } ul_fid2; */
4044 /* IDL: uint64 ul_time; */
4045 /* IDL: uint64 ul_padding_2; */
4046 /* IDL: uint64 ul_padding_3; */
4047 /* IDL: uint64 ul_padding_4; */
4048 /* IDL: uint64 ul_padding_5; */
4049 /* IDL: uint32 ul_bias; */
4050 /* IDL: uint32 ul_mode; */
4051 /* IDL: uint32 ul_padding_6; */
4052 /* IDL: uint32 ul_padding_7; */
4053 /* IDL: uint32 ul_padding_8; */
4054 /* IDL: uint32 ul_padding_9; */
4058 lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4060 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_opcode);
4066 lustre_dissect_element_mdt_rec_unlink_ul_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4068 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_cap);
4074 lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4076 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid);
4082 lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4084 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid_h);
4090 lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4092 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid);
4098 lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4100 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid_h);
4106 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4108 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1);
4114 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4116 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1_h);
4122 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4124 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2);
4130 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4132 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2_h);
4138 lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4140 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid1);
4145 lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4147 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid2);
4152 lustre_dissect_element_mdt_rec_unlink_ul_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4156 ns.secs = tvb_get_letohl(tvb,offset);
4158 proto_tree_add_time(tree,hf_lustre_mdt_rec_unlink_ul_time , tvb, offset, 8, &ns );
4164 lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4166 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_2);
4172 lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4174 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_3);
4180 lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4182 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_4);
4188 lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4190 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_5);
4196 lustre_dissect_element_mdt_rec_unlink_ul_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4198 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_bias);
4204 lustre_dissect_element_mdt_rec_unlink_ul_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4206 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_mode);
4212 lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4214 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_6);
4220 lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4222 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_7);
4228 lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4230 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_8);
4236 lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4238 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_9);
4244 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_)
4246 proto_item *item = NULL;
4247 proto_tree *tree = NULL;
4256 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4257 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_unlink);
4260 ul_opcode=tvb_get_letohl(tvb,offset);
4261 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(ul_opcode, lustre_mds_reint_t_vals, "Unknown ul_opc"));
4263 offset=lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvb, offset, pinfo, tree);
4265 offset=lustre_dissect_element_mdt_rec_unlink_ul_cap(tvb, offset, pinfo, tree);
4267 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvb, offset, pinfo, tree);
4269 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvb, offset, pinfo, tree);
4271 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvb, offset, pinfo, tree);
4273 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvb, offset, pinfo, tree);
4275 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvb, offset, pinfo, tree);
4277 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvb, offset, pinfo, tree);
4279 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvb, offset, pinfo, tree);
4281 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvb, offset, pinfo, tree);
4283 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvb, offset, pinfo, tree);
4285 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvb, offset, pinfo, tree);
4287 offset=lustre_dissect_element_mdt_rec_unlink_ul_time(tvb, offset, pinfo, tree);
4289 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvb, offset, pinfo, tree);
4291 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvb, offset, pinfo, tree);
4293 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvb, offset, pinfo, tree);
4295 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvb, offset, pinfo, tree);
4297 offset=lustre_dissect_element_mdt_rec_unlink_ul_bias(tvb, offset, pinfo, tree);
4299 offset=lustre_dissect_element_mdt_rec_unlink_ul_mode(tvb, offset, pinfo, tree);
4301 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvb, offset, pinfo, tree);
4303 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvb, offset, pinfo, tree);
4305 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvb, offset, pinfo, tree);
4307 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvb, offset, pinfo, tree);
4310 proto_item_set_len(item, offset-old_offset);
4315 /* IDL: struct mdt_rec_rename { */
4316 /* IDL: uint32 rn_opcode; */
4317 /* IDL: uint32 rn_fsuid; */
4318 /* IDL: uint32 rn_fsgid; */
4319 /* IDL: uint32 rn_cap; */
4320 /* IDL: uint32 rn_suppgid1; */
4321 /* IDL: uint32 rn_suppgid2; */
4322 /* IDL: struct ll_fid { */
4323 /* IDL: } rn_fid1; */
4324 /* IDL: struct ll_fid { */
4325 /* IDL: } rn_fid2; */
4326 /* IDL: uint64 rn_time; */
4327 /* IDL: uint32 rn_padding_1; */
4328 /* IDL: uint32 rn_padding_2; */
4329 /* IDL: uint32 rn_padding_3; */
4330 /* IDL: uint32 rn_padding_4; */
4334 lustre_dissect_element_mdt_rec_rename_rn_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4336 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_opcode);
4342 lustre_dissect_element_mdt_rec_rename_rn_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4344 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_cap);
4350 lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4352 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid);
4358 lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4360 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid_h);
4366 lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4368 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid);
4374 lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4376 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid_h);
4382 lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4384 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1);
4390 lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4392 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1_h);
4398 lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4400 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2);
4406 lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4408 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2_h);
4414 lustre_dissect_element_mdt_rec_rename_rn_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4416 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid1);
4421 lustre_dissect_element_mdt_rec_rename_rn_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4423 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid2);
4428 lustre_dissect_element_mdt_rec_rename_rn_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4432 ns.secs = tvb_get_letohl(tvb,offset);
4434 proto_tree_add_time(tree, hf_lustre_mdt_rec_rename_rn_time, tvb, offset, 8, &ns );
4440 lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4442 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_1);
4448 lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4450 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_2);
4456 lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4458 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_3);
4464 lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4466 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_4);
4472 lustre_dissect_element_mdt_rec_rename_rn_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4474 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_bias);
4480 lustre_dissect_element_mdt_rec_rename_rn_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4482 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_mode);
4488 lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4490 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_5);
4496 lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4498 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_6);
4504 lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4506 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_7);
4512 lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4514 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_8);
4520 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_)
4522 proto_item *item = NULL;
4523 proto_tree *tree = NULL;
4532 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4533 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_rename);
4536 rn_opcode=tvb_get_letohl(tvb,offset);
4537 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(rn_opcode, lustre_mds_reint_t_vals, "Unknown rn_opc"));
4539 offset=lustre_dissect_element_mdt_rec_rename_rn_opcode(tvb, offset, pinfo, tree);
4541 offset=lustre_dissect_element_mdt_rec_rename_rn_cap(tvb, offset, pinfo, tree);
4543 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvb, offset, pinfo, tree);
4545 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvb, offset, pinfo, tree);
4547 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvb, offset, pinfo, tree);
4549 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvb, offset, pinfo, tree);
4551 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvb, offset, pinfo, tree);
4553 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvb, offset, pinfo, tree);
4555 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvb, offset, pinfo, tree);
4557 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvb, offset, pinfo, tree);
4559 offset=lustre_dissect_element_mdt_rec_rename_rn_fid1(tvb, offset, pinfo, tree);
4561 offset=lustre_dissect_element_mdt_rec_rename_rn_fid2(tvb, offset, pinfo, tree);
4563 offset=lustre_dissect_element_mdt_rec_rename_rn_time(tvb, offset, pinfo, tree);
4565 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvb, offset, pinfo, tree);
4567 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvb, offset, pinfo, tree);
4569 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvb, offset, pinfo, tree);
4571 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvb, offset, pinfo, tree);
4573 offset=lustre_dissect_element_mdt_rec_rename_rn_bias(tvb, offset, pinfo, tree);
4575 offset=lustre_dissect_element_mdt_rec_rename_rn_mode(tvb, offset, pinfo, tree);
4577 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvb, offset, pinfo, tree);
4579 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvb, offset, pinfo, tree);
4581 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvb, offset, pinfo, tree);
4583 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvb, offset, pinfo, tree);
4586 proto_item_set_len(item, offset-old_offset);
4591 /* I don't find where this struct appear on wire.. need to search mdc_setxattr_pack() */
4592 /* IDL: struct mdt_rec_setxattr { */
4593 /* IDL: uint32 sx_opcode; */
4594 /* IDL: uint32 sx_cap; */
4595 /* IDL: uint32 sx_fsuid; */
4596 /* IDL: uint32 sx_fsuid_h; */
4597 /* IDL: uint32 sx_fsgid; */
4598 /* IDL: uint32 sx_fsgid_h; */
4599 /* IDL: uint32 sx_suppgid1; */
4600 /* IDL: uint32 sx_suppgid1_h; */
4601 /* IDL: uint32 sx_suppgid2; */
4602 /* IDL: uint32 sx_suppgid2_h; */
4603 /* IDL: struct lu_fid { */
4604 /* IDL: } sx_fid; */
4605 /* IDL: uint64 sx_padding_1; */
4606 /* IDL: uint32 sx_padding_2; */
4607 /* IDL: uint32 sx_padding_3; */
4608 /* IDL: uint64 sx_valid; */
4609 /* IDL: uint64 sx_time; */
4610 /* IDL: uint64 sx_padding_5; */
4611 /* IDL: uint64 sx_padding_6; */
4612 /* IDL: uint64 sx_padding_7; */
4613 /* IDL: uint32 sx_size; */
4614 /* IDL: uint32 sx_flags; */
4615 /* IDL: uint32 sx_padding_8; */
4616 /* IDL: uint32 sx_padding_9; */
4617 /* IDL: uint32 sx_padding_10; */
4618 /* IDL: uint32 sx_padding_11; */
4622 lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4624 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_opcode);
4630 lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4632 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_cap);
4638 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4640 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid);
4646 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4648 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid_h);
4654 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4656 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid);
4662 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4664 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid_h);
4670 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4672 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1);
4678 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4680 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1_h);
4686 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4688 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2);
4694 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4696 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2_h);
4702 lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4704 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setxattr_sx_fid);
4710 lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4712 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_1);
4718 lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4720 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_2);
4726 lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4728 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_3);
4734 lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4736 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_valid);
4742 lustre_dissect_element_mdt_rec_setxattr_sx_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4747 ns.secs = tvb_get_letohl(tvb,offset);
4749 proto_tree_add_time(tree, hf_lustre_mdt_rec_setxattr_sx_time, tvb, offset, 8, &ns );
4755 lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4757 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_5);
4763 lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4765 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_6);
4771 lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4773 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_7);
4779 lustre_dissect_element_mdt_rec_setxattr_sx_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4781 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_size);
4787 lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4789 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_flags);
4795 lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4797 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_8);
4803 lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4805 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_9);
4811 lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4813 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_10);
4819 lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4821 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_11);
4827 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_)
4829 proto_item *item = NULL;
4830 proto_tree *tree = NULL;
4839 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4840 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setxattr);
4842 sx_opcode=tvb_get_letohl(tvb,offset);
4843 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sx_opcode, lustre_mds_reint_t_vals, "Unknown sx_opc"));
4845 offset=lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvb, offset, pinfo, tree);
4847 offset=lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvb, offset, pinfo, tree);
4849 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvb, offset, pinfo, tree);
4851 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvb, offset, pinfo, tree);
4853 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvb, offset, pinfo, tree);
4855 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvb, offset, pinfo, tree);
4857 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvb, offset, pinfo, tree);
4859 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvb, offset, pinfo, tree);
4861 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvb, offset, pinfo, tree);
4863 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvb, offset, pinfo, tree);
4865 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvb, offset, pinfo, tree);
4867 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvb, offset, pinfo, tree);
4869 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvb, offset, pinfo, tree);
4871 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvb, offset, pinfo, tree);
4873 offset=lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvb, offset, pinfo, tree);
4875 offset=lustre_dissect_element_mdt_rec_setxattr_sx_time(tvb, offset, pinfo, tree);
4877 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvb, offset, pinfo, tree);
4879 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvb, offset, pinfo, tree);
4881 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvb, offset, pinfo, tree);
4883 offset=lustre_dissect_element_mdt_rec_setxattr_sx_size(tvb, offset, pinfo, tree);
4885 offset=lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvb, offset, pinfo, tree);
4887 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvb, offset, pinfo, tree);
4889 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvb, offset, pinfo, tree);
4891 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvb, offset, pinfo, tree);
4893 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvb, offset, pinfo, tree);
4896 proto_item_set_len(item, offset-old_offset);
4902 /* TODO : find where this structure appear */
4904 /* IDL: struct lov_desc { */
4905 /* IDL: uint32 ld_tgt_count; */
4906 /* IDL: uint32 ld_active_tgt_count; */
4907 /* IDL: uint32 ld_default_stripe_count; */
4908 /* IDL: uint32 ld_pattern; */
4909 /* IDL: uint64 ld_default_stripe_size; */
4910 /* IDL: uint64 ld_default_stripe_offset; */
4911 /* IDL: uint32 ld_padding_0; */
4912 /* IDL: uint32 ld_qos_maxage; */
4913 /* IDL: uint32 ld_padding_1; */
4914 /* IDL: uint32 ld_padding_2; */
4915 /* IDL: struct obd_uuid { */
4916 /* IDL: } ld_uuid; */
4920 lustre_dissect_element_lov_desc_ld_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4922 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_tgt_count);
4928 lustre_dissect_element_lov_desc_ld_active_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4930 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_active_tgt_count);
4936 lustre_dissect_element_lov_desc_ld_default_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4938 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_count);
4944 lustre_dissect_element_lov_desc_ld_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4946 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_pattern);
4952 lustre_dissect_element_lov_desc_ld_default_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4954 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_size);
4960 lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4962 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_offset);
4968 lustre_dissect_element_lov_desc_ld_padding_0(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4970 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_0);
4976 lustre_dissect_element_lov_desc_ld_qos_maxage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4978 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_qos_maxage);
4984 lustre_dissect_element_lov_desc_ld_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4986 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_1);
4992 lustre_dissect_element_lov_desc_ld_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4994 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_2);
5000 lustre_dissect_element_lov_desc_ld_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5002 //offset=lustre_dissect_struct_HASH(0x85bade8)(tvb,offset,pinfo,tree,hf_lustre_lov_desc_ld_uuid);
5007 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_)
5009 proto_item *item = NULL;
5010 proto_tree *tree = NULL;
5018 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5019 tree = proto_item_add_subtree(item, ett_lustre_lov_desc);
5022 offset=lustre_dissect_element_lov_desc_ld_tgt_count(tvb, offset, pinfo, tree);
5024 offset=lustre_dissect_element_lov_desc_ld_active_tgt_count(tvb, offset, pinfo, tree);
5026 offset=lustre_dissect_element_lov_desc_ld_default_stripe_count(tvb, offset, pinfo, tree);
5028 offset=lustre_dissect_element_lov_desc_ld_pattern(tvb, offset, pinfo, tree);
5030 offset=lustre_dissect_element_lov_desc_ld_default_stripe_size(tvb, offset, pinfo, tree);
5032 offset=lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvb, offset, pinfo, tree);
5034 offset=lustre_dissect_element_lov_desc_ld_padding_0(tvb, offset, pinfo, tree);
5036 offset=lustre_dissect_element_lov_desc_ld_qos_maxage(tvb, offset, pinfo, tree);
5038 offset=lustre_dissect_element_lov_desc_ld_padding_1(tvb, offset, pinfo, tree);
5040 offset=lustre_dissect_element_lov_desc_ld_padding_2(tvb, offset, pinfo, tree);
5042 offset=lustre_dissect_element_lov_desc_ld_uuid(tvb, offset, pinfo, tree);
5045 proto_item_set_len(item, offset-old_offset);
5050 /* IDL: struct obd_uuid { */
5051 /* char uuid[40]; */
5055 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_)
5057 /* the lenght of the string is 40 bytes max, with \0 inside */
5058 proto_tree_add_item(parent_tree, hf_index, tvb, offset, 40, TRUE);
5066 /* IDL: struct ldlm_res_id { */
5067 /* IDL: uint64 name[4]; */
5071 lustre_dissect_element_ldlm_res_id_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5073 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_res_id_name);
5079 lustre_dissect_element_ldlm_res_id_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5082 for (i = 0; i < 4; i++)
5083 offset=lustre_dissect_element_ldlm_res_id_name_(tvb, offset, pinfo, tree);
5091 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_)
5093 proto_item *item = NULL;
5094 proto_tree *tree = NULL;
5102 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5103 tree = proto_item_add_subtree(item, ett_lustre_ldlm_res_id);
5106 offset=lustre_dissect_element_ldlm_res_id_name(tvb, offset, pinfo, tree);
5109 proto_item_set_len(item, offset-old_offset);
5116 /* IDL: LCK_MINMODE=0, */
5117 /* IDL: LCK_EX=1, */
5118 /* IDL: LCK_PW=2, */
5119 /* IDL: LCK_PR=4, */
5120 /* IDL: LCK_CW=8, */
5121 /* IDL: LCK_CR=16, */
5122 /* IDL: LCK_NL=32, */
5123 /* IDL: LCK_GROUP=64, */
5124 /* IDL: LCK_MAXMODE, */
5128 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_)
5130 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_index);
5136 /* IDL: LDLM_PLAIN=10, */
5137 /* IDL: LDLM_EXTENT=11, */
5138 /* IDL: LDLM_FLOCK=12, */
5139 /* IDL: LDLM_IBITS=13, */
5140 /* IDL: LDLM_MAX_TYPE, */
5144 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_)
5146 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type );
5150 /* IDL: struct ldlm_extent { */
5151 /* IDL: uint64 start; */
5152 /* IDL: uint64 end; */
5153 /* IDL: uint64 gid; */
5157 lustre_dissect_element_ldlm_extent_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5159 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_start);
5165 lustre_dissect_element_ldlm_extent_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5167 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_end);
5173 lustre_dissect_element_ldlm_extent_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5175 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_gid);
5181 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_)
5183 proto_item *item = NULL;
5184 proto_tree *tree = NULL;
5192 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5193 tree = proto_item_add_subtree(item, ett_lustre_ldlm_extent);
5196 offset=lustre_dissect_element_ldlm_extent_start(tvb, offset, pinfo, tree);
5198 offset=lustre_dissect_element_ldlm_extent_end(tvb, offset, pinfo, tree);
5200 offset=lustre_dissect_element_ldlm_extent_gid(tvb, offset, pinfo, tree);
5203 proto_item_set_len(item, offset-old_offset);
5208 /* IDL: struct ldlm_inodebits { */
5209 /* IDL: uint64 bits; */
5213 lustre_dissect_element_ldlm_inodebits_bits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5215 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_inodebits_bits);
5221 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_)
5223 proto_item *item = NULL;
5224 proto_tree *tree = NULL;
5232 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5233 tree = proto_item_add_subtree(item, ett_lustre_ldlm_inodebits);
5236 offset=lustre_dissect_element_ldlm_inodebits_bits(tvb, offset, pinfo, tree);
5239 proto_item_set_len(item, offset-old_offset);
5244 /* IDL: struct ldlm_flock { */
5245 /* IDL: uint64 start; */
5246 /* IDL: uint64 end; */
5247 /* IDL: uint64 blocking_export; */
5248 /* IDL: uint32 blocking_pid; */
5249 /* IDL: uint32 pid; */
5253 lustre_dissect_element_ldlm_flock_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5255 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_start);
5261 lustre_dissect_element_ldlm_flock_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5263 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_end);
5269 lustre_dissect_element_ldlm_flock_blocking_export(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5271 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_export);
5277 lustre_dissect_element_ldlm_flock_blocking_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5279 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_pid);
5285 lustre_dissect_element_ldlm_flock_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5287 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_pid);
5293 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_)
5295 proto_item *item = NULL;
5296 proto_tree *tree = NULL;
5304 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5305 tree = proto_item_add_subtree(item, ett_lustre_ldlm_flock);
5308 offset=lustre_dissect_element_ldlm_flock_start(tvb, offset, pinfo, tree);
5310 offset=lustre_dissect_element_ldlm_flock_end(tvb, offset, pinfo, tree);
5312 offset=lustre_dissect_element_ldlm_flock_blocking_export(tvb, offset, pinfo, tree);
5314 offset=lustre_dissect_element_ldlm_flock_blocking_pid(tvb, offset, pinfo, tree);
5316 offset=lustre_dissect_element_ldlm_flock_pid(tvb, offset, pinfo, tree);
5319 proto_item_set_len(item, offset-old_offset);
5324 /* IDL: struct ldlm_intent { */
5325 /* IDL: uint64 opc; */
5329 lustre_dissect_element_ldlm_intent_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5332 /* this opcode is like a flag*/
5333 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_open );
5334 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_creat );
5335 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_readdir );
5336 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getattr );
5337 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_lookup );
5338 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_unlink );
5339 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getxattr);
5340 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_exec );
5341 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_pin );
5342 opcode = tvb_get_letohl(tvb,offset);
5344 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, "[ intent :");
5345 if(opcode & IT_OPEN ){
5346 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " open");
5347 proto_item_append_text(tree, " open" );
5349 if(opcode & IT_CREAT ){
5350 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " create");
5351 proto_item_append_text(tree, " create" );
5353 if(opcode & IT_READDIR ){
5354 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " readdir");
5355 proto_item_append_text(tree, " readdir" );
5357 if(opcode & IT_GETATTR ){
5358 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getattr");
5359 proto_item_append_text(tree, " getattr" );
5361 if(opcode & IT_LOOKUP ){
5362 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " lookup");
5363 proto_item_append_text(tree, " lookup" );
5365 if(opcode & IT_UNLINK ){
5366 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " unlink");
5367 proto_item_append_text(tree, " unlink" );
5369 if(opcode & IT_GETXATTR){
5370 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getxattr");
5371 proto_item_append_text(tree, " getxattr" );
5373 if(opcode & IT_EXEC ){
5374 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " exec");
5375 proto_item_append_text(tree, " exec" );
5377 if(opcode & IT_PIN ){
5378 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " pin");
5379 proto_item_append_text(tree, " pin" );
5382 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " ]");
5388 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_)
5391 proto_item * opcode_item = NULL;
5392 proto_tree * opcode_tree = NULL;
5394 intent_opc = tvb_get_letoh64(tvb,offset);
5396 opcode_item = proto_tree_add_item(parent_tree, hf_lustre_ldlm_intent_opc, tvb, offset, 8, TRUE);
5397 opcode_tree = proto_item_add_subtree(opcode_item, ett_lustre_ldlm_intent_opc);
5400 offset=lustre_dissect_element_ldlm_intent_opc(tvb, offset, pinfo, opcode_tree);
5402 offset=ldlm_opcode_process(tvb, offset, pinfo, parent_tree, intent_opc);
5407 /* IDL: struct ldlm_resource_desc { */
5408 /* IDL: ldlm_type_t lr_type; */
5409 /* IDL: uint32 lr_padding; */
5410 /* IDL: struct ldlm_res_id { */
5411 /* IDL: } lr_name; */
5415 lustre_dissect_element_ldlm_resource_desc_lr_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5417 /* offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);*/
5418 offset=lustre_dissect_enum_ldlm_type_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);
5423 lustre_dissect_element_ldlm_resource_desc_lr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5425 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_padding);
5431 lustre_dissect_element_ldlm_resource_desc_lr_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5433 offset=lustre_dissect_struct_ldlm_res_id(tvb,offset,pinfo,tree,hf_lustre_ldlm_resource_desc_lr_name);
5438 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_)
5440 proto_item *item = NULL;
5441 proto_tree *tree = NULL;
5449 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5450 tree = proto_item_add_subtree(item, ett_lustre_ldlm_resource_desc);
5453 offset=lustre_dissect_element_ldlm_resource_desc_lr_type(tvb, offset, pinfo, tree);
5455 offset=lustre_dissect_element_ldlm_resource_desc_lr_padding(tvb, offset, pinfo, tree);
5457 offset=lustre_dissect_element_ldlm_resource_desc_lr_name(tvb, offset, pinfo, tree);
5460 proto_item_set_len(item, offset-old_offset);
5466 /* IDL: struct ldlm_lock_desc { */
5467 /* IDL: struct ldlm_resource_desc { */
5468 /* IDL: } l_resource; */
5469 /* IDL: ldlm_mode_t l_req_mode; */
5470 /* IDL: ldlm_mode_t l_granted_mode; */
5471 /* IDL: ldlm_policy_data_t l_policy_data; */
5475 lustre_dissect_element_ldlm_lock_desc_l_resource(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5477 offset=lustre_dissect_struct_ldlm_resource_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_resource);
5482 lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5484 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_req_mode);
5490 lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5492 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_granted_mode);
5498 lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5501 guint32 lr_type; /* type of the lock */
5503 lr_type = tvb_get_letohl(tvb,offset - 48 ); /* TODO : find another way that using -48 */
5505 /* this section must be check with lustre code, possible mistake here */
5509 offset=lustre_dissect_struct_ldlm_flock(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5512 offset= lustre_dissect_struct_ldlm_extent(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5513 /* add an extra padding 8 bytes */
5514 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5517 offset=lustre_dissect_struct_ldlm_inodebits(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5518 /* add an extra padding 24 bytes */
5519 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5520 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5521 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5524 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5525 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5526 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5527 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5534 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_)
5536 proto_item *item = NULL;
5537 proto_tree *tree = NULL;
5540 guint32 lock_req_mode;
5546 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5547 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_desc);
5550 offset=lustre_dissect_element_ldlm_lock_desc_l_resource(tvb, offset, pinfo, tree);
5552 lock_req_mode = tvb_get_letohl(tvb,offset);
5554 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lock_req_mode, lustre_ldlm_mode_t_vals, "Unknown lock"));
5556 offset=lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvb, offset, pinfo, tree);
5558 offset=lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvb, offset, pinfo, tree);
5560 offset=lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvb, offset, pinfo, tree);
5563 proto_item_set_len(item, offset-old_offset);
5569 /* IDL: struct ldlm_request { */
5570 /* IDL: uint32 lock_flags; */
5571 /* IDL: uint32 lock_count; */
5572 /* IDL: struct ldlm_lock_desc { */
5573 /* IDL: } lock_desc; */
5574 /* IDL: struct lustre_handle { */
5575 /* IDL: } lock_handle[2]; */
5581 lustre_dissect_element_ldlm_request_lock_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5583 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_count);
5589 lustre_dissect_element_ldlm_request_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5591 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_desc);
5598 lustre_dissect_element_ldlm_request_lock_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5600 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5601 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5603 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_handle);
5608 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_)
5613 for (i = 0; i < num_locks; i++)
5614 offset=lustre_dissect_element_ldlm_request_lock_handle_(tvb, offset, pinfo, tree);
5620 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_)
5622 proto_item *item = NULL;
5623 proto_tree *tree = NULL;
5625 /* guint32 lock_flag; */
5626 /* guint32 ldlm_type; */
5627 guint32 num_locks = 2;
5632 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5633 tree = proto_item_add_subtree(item, ett_lustre_ldlm_request);
5636 /* lock_flag = tvb_get_letohl(tvb,offset); */
5637 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree,
5638 hf_lustre_ldlm_request_lock_flags);
5640 num_locks = tvb_get_letohl(tvb,offset);
5641 offset=lustre_dissect_element_ldlm_request_lock_count(tvb, offset, pinfo, tree);
5643 /* ldlm_type = (EXTENT, PLAIN, ou IBITS) */
5644 /* ldlm_type = tvb_get_letohl(tvb,offset); */
5645 offset=lustre_dissect_element_ldlm_request_lock_desc(tvb, offset, pinfo, tree);
5646 offset=lustre_dissect_element_ldlm_request_lock_handle(tvb, offset, pinfo, tree, num_locks);
5648 proto_item_set_len(item, offset-old_offset);
5654 /* IDL: struct ldlm_reply { */
5655 /* IDL: uint32 lock_flags; */
5656 /* IDL: uint32 lock_padding; */
5657 /* IDL: struct ldlm_lock_desc { */
5658 /* IDL: } lock_desc; */
5659 /* IDL: struct lustre_handle { */
5660 /* IDL: } lock_handle; */
5661 /* IDL: uint64 lock_policy_res1; */
5662 /* IDL: uint64 lock_policy_res2; */
5666 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_)
5668 proto_item *item = NULL;
5669 proto_tree *tree = NULL;
5672 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
5673 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_flags);
5675 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_ast_discard_data);
5676 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_deny_on_contention);
5677 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_done );
5678 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_ast );
5679 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_atomic_cb );
5680 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cleaned );
5681 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cp_reqd );
5682 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel_on_block );
5683 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_lru );
5684 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_kms_ignore );
5685 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lvb_ready );
5686 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_test_lock );
5687 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_nowait );
5688 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_timeout );
5689 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_discard_data );
5690 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_warn );
5691 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local );
5692 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_canceling );
5693 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_has_intent );
5694 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_failed );
5695 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local_only );
5696 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_intent_only );
5697 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_replay );
5698 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel );
5699 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_wait_noreproc );
5700 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_ast_sent );
5701 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cbpending );
5702 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_wait );
5703 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_conv );
5704 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_granted );
5705 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lock_changed );
5710 lustre_dissect_element_ldlm_reply_lock_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5712 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_padding);
5718 lustre_dissect_element_ldlm_reply_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5720 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_desc);
5725 lustre_dissect_element_ldlm_reply_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5727 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5728 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5730 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_handle);
5735 lustre_dissect_element_ldlm_reply_lock_policy_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5737 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res1);
5743 lustre_dissect_element_ldlm_reply_lock_policy_res2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5745 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res2);
5751 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_ )
5753 proto_item *item = NULL;
5754 proto_tree *tree = NULL;
5756 /* guint32 lock_flag; */
5761 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5762 tree = proto_item_add_subtree(item, ett_lustre_ldlm_reply);
5765 /* lock_flag = tvb_get_letohl(tvb,offset); */
5766 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_flags);
5768 offset=lustre_dissect_element_ldlm_reply_lock_padding(tvb, offset, pinfo, tree);
5770 if (ldlm_type != NULL)
5771 *ldlm_type = tvb_get_letohl(tvb,offset);
5772 offset=lustre_dissect_element_ldlm_reply_lock_desc(tvb, offset, pinfo, tree);
5774 offset=lustre_dissect_element_ldlm_reply_lock_handle(tvb, offset, pinfo, tree);
5776 offset=lustre_dissect_element_ldlm_reply_lock_policy_res1(tvb, offset, pinfo, tree);
5778 offset=lustre_dissect_element_ldlm_reply_lock_policy_res2(tvb, offset, pinfo, tree);
5780 proto_item_set_len(item, offset-old_offset);
5788 /* IDL: struct mgs_send_param { */
5789 /* IDL: uint8 mgs_param[1024]; */
5795 lustre_dissect_element_mgs_send_param_mgs_param_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5797 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_send_param_mgs_param);
5803 lustre_dissect_element_mgs_send_param_mgs_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5806 for (i = 0; i < 1024; i++)
5807 offset=lustre_dissect_element_mgs_send_param_mgs_param_(tvb, offset, pinfo, tree);
5813 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_)
5815 proto_item *item = NULL;
5816 proto_tree *tree = NULL;
5823 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5824 tree = proto_item_add_subtree(item, ett_lustre_mgs_send_param);
5827 offset=lustre_dissect_element_mgs_send_param_mgs_param(tvb, offset, pinfo, tree);
5830 proto_item_set_len(item, offset-old_offset);
5835 /* IDL: struct mgs_config_body {
5836 * IDL: char mcb_name[64];
5837 * IDL: __u64 mcb_offset;
5838 * IDL: __u16 mcb_type;
5839 * IDL: __u8 mcb_reserved;
5840 * IDL: __u8 mcb_bits;
5841 * IDL: __u32 mcb_units;
5845 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_)
5847 int string_len = 64;
5848 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
5849 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " name : %s",
5850 (const gchar *) tvb_get_string(tvb,offset,string_len) );
5857 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_)
5859 proto_item *item = NULL;
5860 proto_tree *tree = NULL;
5867 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5868 tree = proto_item_add_subtree(item, ett_lustre_mgs_config_body);
5871 offset=lustre_dissect_element_mgs_config_body_name(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_name);
5873 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_offset);
5874 offset=dissect_uint16(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_type);
5875 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_reserved);
5876 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_bits);
5877 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_config_body_units);
5879 proto_item_set_len(item, offset-old_offset);
5884 /* IDL: struct mgs_config_res {
5885 * IDL: __u64 mcr_offset;
5886 * IDL: __u64 mcr_size;
5890 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_)
5892 proto_item *item = NULL;
5893 proto_tree *tree = NULL;
5899 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5900 tree = proto_item_add_subtree(item, ett_lustre_mgs_config_res);
5903 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_res_offset);
5904 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_config_res_size);
5906 proto_item_set_len(item, offset-old_offset);
5912 /* IDL: struct mgs_target_info { */
5913 /* IDL: uint32 mti_lustre_ver; */
5914 /* IDL: uint32 mti_stripe_index; */
5915 /* IDL: uint32 mti_config_ver; */
5916 /* IDL: uint32 mti_flags; */
5917 /* IDL: uint32 mti_nid_count; */
5918 /* IDL: uint32 padding; */
5919 /* IDL: uint8 mti_fsname[64]; */
5920 /* IDL: uint8 mti_svname[64]; */
5921 /* IDL: uint8 mti_uuid[40]; */
5922 /* IDL: uint64 mti_nids[32]; */
5923 /* IDL: uint8 mti_params[4096]; */
5927 lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5929 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_lustre_ver);
5935 lustre_dissect_element_mgs_target_info_mti_stripe_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5937 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_stripe_index);
5943 lustre_dissect_element_mgs_target_info_mti_config_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5945 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_config_ver);
5951 lustre_dissect_element_mgs_target_info_mti_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5953 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_flags);
5959 lustre_dissect_element_mgs_target_info_mti_nid_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5961 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nid_count);
5967 lustre_dissect_element_mgs_target_info_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5969 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_padding);
5975 lustre_dissect_element_mgs_target_info_mti_fsname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5977 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_fsname);
5983 lustre_dissect_element_mgs_target_info_mti_fsname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5986 for (i = 0; i < 64; i++)
5987 offset=lustre_dissect_element_mgs_target_info_mti_fsname_(tvb, offset, pinfo, tree);
5997 lustre_dissect_element_mgs_target_info_mti_svname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5999 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_svname);
6005 lustre_dissect_element_mgs_target_info_mti_svname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6008 for (i = 0; i < 64; i++)
6009 offset=lustre_dissect_element_mgs_target_info_mti_svname_(tvb, offset, pinfo, tree);
6015 lustre_dissect_element_mgs_target_info_mti_uuid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6017 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_uuid);
6023 lustre_dissect_element_mgs_target_info_mti_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6026 for (i = 0; i < 40; i++)
6027 offset=lustre_dissect_element_mgs_target_info_mti_uuid_(tvb, offset, pinfo, tree);
6037 lustre_dissect_element_mgs_target_info_mti_nids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6039 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nids);
6045 lustre_dissect_element_mgs_target_info_mti_nids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6048 for (i = 0; i < 32; i++)
6049 offset=lustre_dissect_element_mgs_target_info_mti_nids_(tvb, offset, pinfo, tree);
6057 lustre_dissect_element_mgs_target_info_mti_params_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6059 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_params);
6065 lustre_dissect_element_mgs_target_info_mti_params(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6068 for (i = 0; i < 4096; i++)
6069 offset=lustre_dissect_element_mgs_target_info_mti_params_(tvb, offset, pinfo, tree);
6075 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_)
6077 proto_item *item = NULL;
6078 proto_tree *tree = NULL;
6086 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6087 tree = proto_item_add_subtree(item, ett_lustre_mgs_target_info);
6090 offset=lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvb, offset, pinfo, tree);
6092 offset=lustre_dissect_element_mgs_target_info_mti_stripe_index(tvb, offset, pinfo, tree);
6094 offset=lustre_dissect_element_mgs_target_info_mti_config_ver(tvb, offset, pinfo, tree);
6096 offset=lustre_dissect_element_mgs_target_info_mti_flags(tvb, offset, pinfo, tree);
6098 offset=lustre_dissect_element_mgs_target_info_mti_nid_count(tvb, offset, pinfo, tree);
6100 offset=lustre_dissect_element_mgs_target_info_padding(tvb, offset, pinfo, tree);
6102 offset=lustre_dissect_element_mgs_target_info_mti_fsname(tvb, offset, pinfo, tree);
6104 offset=lustre_dissect_element_mgs_target_info_mti_svname(tvb, offset, pinfo, tree);
6106 offset=lustre_dissect_element_mgs_target_info_mti_uuid(tvb, offset, pinfo, tree);
6108 offset=lustre_dissect_element_mgs_target_info_mti_nids(tvb, offset, pinfo, tree);
6110 offset=lustre_dissect_element_mgs_target_info_mti_params(tvb, offset, pinfo, tree);
6113 proto_item_set_len(item, offset-old_offset);
6118 /* IDL: struct cfg_marker { */
6119 /* IDL: uint32 cm_step; */
6120 /* IDL: uint32 cm_flags; */
6121 /* IDL: uint32 cm_vers; */
6122 /* IDL: uint32 padding; */
6123 /* IDL: time_t cm_createtime; */
6124 /* IDL: time_t cm_canceltime; */
6125 /* IDL: uint8 cm_tgtname[64]; */
6126 /* IDL: uint8 cm_comment[64]; */
6130 lustre_dissect_element_cfg_marker_cm_step(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6132 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_step);
6138 lustre_dissect_element_cfg_marker_cm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6140 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_flags);
6146 lustre_dissect_element_cfg_marker_cm_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6148 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_vers);
6154 lustre_dissect_element_cfg_marker_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6156 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_padding);
6162 lustre_dissect_element_cfg_marker_cm_createtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6164 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_createtime );
6165 /*g_print("function lustre_dissect_element_cfg_marker_cm_createtime don't work\n");*/
6170 lustre_dissect_element_cfg_marker_cm_canceltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6172 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_canceltime);
6174 /*g_print("element_cfg_marker_cm_canceltime\n");*/
6181 lustre_dissect_element_cfg_marker_cm_tgtname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6183 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_tgtname);
6189 lustre_dissect_element_cfg_marker_cm_tgtname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6192 for (i = 0; i < 64; i++)
6193 offset=lustre_dissect_element_cfg_marker_cm_tgtname_(tvb, offset, pinfo, tree);
6201 lustre_dissect_element_cfg_marker_cm_comment_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6203 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_comment);
6209 lustre_dissect_element_cfg_marker_cm_comment(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6212 for (i = 0; i < 64; i++)
6213 offset=lustre_dissect_element_cfg_marker_cm_comment_(tvb, offset, pinfo, tree);
6219 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_)
6221 proto_item *item = NULL;
6222 proto_tree *tree = NULL;
6230 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6231 tree = proto_item_add_subtree(item, ett_lustre_cfg_marker);
6234 offset=lustre_dissect_element_cfg_marker_cm_step(tvb, offset, pinfo, tree);
6236 offset=lustre_dissect_element_cfg_marker_cm_flags(tvb, offset, pinfo, tree);
6238 offset=lustre_dissect_element_cfg_marker_cm_vers(tvb, offset, pinfo, tree);
6240 offset=lustre_dissect_element_cfg_marker_padding(tvb, offset, pinfo, tree);
6242 offset=lustre_dissect_element_cfg_marker_cm_createtime(tvb, offset, pinfo, tree);
6244 offset=lustre_dissect_element_cfg_marker_cm_canceltime(tvb, offset, pinfo, tree);
6246 offset=lustre_dissect_element_cfg_marker_cm_tgtname(tvb, offset, pinfo, tree);
6248 offset=lustre_dissect_element_cfg_marker_cm_comment(tvb, offset, pinfo, tree);
6251 proto_item_set_len(item, offset-old_offset);
6258 /* IDL: struct llog_logid { */
6259 /* IDL: uint64 lgl_oid; */
6260 /* IDL: uint64 lgl_oseq; */
6261 /* IDL: uint32 lgl_ogen; */
6265 lustre_dissect_element_llog_logid_lgl_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6267 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oid);
6273 lustre_dissect_element_llog_logid_lgl_oseq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6275 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oseq);
6281 lustre_dissect_element_llog_logid_lgl_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6283 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_ogen);
6289 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_)
6291 proto_item *item = NULL;
6292 proto_tree *tree = NULL;
6300 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6301 tree = proto_item_add_subtree(item, ett_lustre_llog_logid);
6304 offset=lustre_dissect_element_llog_logid_lgl_oid(tvb, offset, pinfo, tree);
6306 offset=lustre_dissect_element_llog_logid_lgl_oseq(tvb, offset, pinfo, tree);
6308 offset=lustre_dissect_element_llog_logid_lgl_ogen(tvb, offset, pinfo, tree);
6311 proto_item_set_len(item, offset-old_offset);
6316 /* I don't know when this structure is used on network */
6317 /* IDL: struct llog_catid { */
6318 /* IDL: struct llog_logid { */
6319 /* IDL: } lci_logid; */
6320 /* IDL: uint32 lci_padding1; */
6321 /* IDL: uint32 lci_padding2; */
6322 /* IDL: uint32 lci_padding3; */
6326 lustre_dissect_element_llog_catid_lci_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6328 //offset=lustre_dissect_struct_HASH(0x85cc76c)(tvb,offset,pinfo,tree,hf_lustre_llog_catid_lci_logid);
6330 /*g_print("llog_catid_lci_logid bug\n");*/
6335 lustre_dissect_element_llog_catid_lci_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6337 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding1);
6343 lustre_dissect_element_llog_catid_lci_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6345 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding2);
6351 lustre_dissect_element_llog_catid_lci_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6353 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding3);
6359 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_)
6361 proto_item *item = NULL;
6362 proto_tree *tree = NULL;
6370 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6371 tree = proto_item_add_subtree(item, ett_lustre_llog_catid);
6374 offset=lustre_dissect_element_llog_catid_lci_logid(tvb, offset, pinfo, tree);
6376 offset=lustre_dissect_element_llog_catid_lci_padding1(tvb, offset, pinfo, tree);
6378 offset=lustre_dissect_element_llog_catid_lci_padding2(tvb, offset, pinfo, tree);
6380 offset=lustre_dissect_element_llog_catid_lci_padding3(tvb, offset, pinfo, tree);
6383 proto_item_set_len(item, offset-old_offset);
6388 /* IDL: struct llog_rec_hdr { */
6389 /* IDL: uint32 lrh_len; */
6390 /* IDL: uint32 lrh_index; */
6391 /* IDL: uint32 lrh_type; */
6392 /* IDL: uint32 padding; */
6396 lustre_dissect_element_llog_rec_hdr_lrh_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6398 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_len);
6404 lustre_dissect_element_llog_rec_hdr_lrh_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6406 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_index);
6412 lustre_dissect_element_llog_rec_hdr_lrh_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6414 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_type);
6420 lustre_dissect_element_llog_rec_hdr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6422 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_padding);
6428 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_)
6430 proto_item *item = NULL;
6431 proto_tree *tree = NULL;
6439 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6440 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_hdr);
6443 offset=lustre_dissect_element_llog_rec_hdr_lrh_len(tvb, offset, pinfo, tree);
6445 offset=lustre_dissect_element_llog_rec_hdr_lrh_index(tvb, offset, pinfo, tree);
6447 offset=lustre_dissect_element_llog_rec_hdr_lrh_type(tvb, offset, pinfo, tree);
6449 offset=lustre_dissect_element_llog_rec_hdr_padding(tvb, offset, pinfo, tree);
6452 proto_item_set_len(item, offset-old_offset);
6457 /* IDL: struct llog_rec_tail { */
6458 /* IDL: uint32 lrt_len; */
6459 /* IDL: uint32 lrt_index; */
6463 lustre_dissect_element_llog_rec_tail_lrt_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6465 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_len);
6471 lustre_dissect_element_llog_rec_tail_lrt_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6473 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_index);
6479 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_)
6481 proto_item *item = NULL;
6482 proto_tree *tree = NULL;
6490 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6491 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_tail);
6494 offset=lustre_dissect_element_llog_rec_tail_lrt_len(tvb, offset, pinfo, tree);
6496 offset=lustre_dissect_element_llog_rec_tail_lrt_index(tvb, offset, pinfo, tree);
6499 proto_item_set_len(item, offset-old_offset);
6504 /* IDL: struct llog_logid_rec { */
6505 /* IDL: struct llog_rec_hdr { */
6506 /* IDL: } lid_hdr; */
6507 /* IDL: struct llog_logid { */
6508 /* IDL: } lid_id; */
6509 /* IDL: uint32 padding1; */
6510 /* IDL: uint32 padding2; */
6511 /* IDL: uint32 padding3; */
6512 /* IDL: uint32 padding4; */
6513 /* IDL: uint32 padding5; */
6514 /* IDL: struct llog_rec_tail { */
6515 /* IDL: } lid_tail; */
6519 lustre_dissect_element_llog_logid_rec_lid_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6521 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_hdr);
6526 lustre_dissect_element_llog_logid_rec_lid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6528 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_id);
6533 lustre_dissect_element_llog_logid_rec_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6535 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding1);
6541 lustre_dissect_element_llog_logid_rec_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6543 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding2);
6549 lustre_dissect_element_llog_logid_rec_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6551 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding3);
6557 lustre_dissect_element_llog_logid_rec_padding4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6559 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding4);
6565 lustre_dissect_element_llog_logid_rec_padding5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6567 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding5);
6573 lustre_dissect_element_llog_logid_rec_lid_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6575 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_tail);
6580 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_)
6582 proto_item *item = NULL;
6583 proto_tree *tree = NULL;
6591 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6592 tree = proto_item_add_subtree(item, ett_lustre_llog_logid_rec);
6595 offset=lustre_dissect_element_llog_logid_rec_lid_hdr(tvb, offset, pinfo, tree);
6597 offset=lustre_dissect_element_llog_logid_rec_lid_id(tvb, offset, pinfo, tree);
6599 offset=lustre_dissect_element_llog_logid_rec_padding1(tvb, offset, pinfo, tree);
6601 offset=lustre_dissect_element_llog_logid_rec_padding2(tvb, offset, pinfo, tree);
6603 offset=lustre_dissect_element_llog_logid_rec_padding3(tvb, offset, pinfo, tree);
6605 offset=lustre_dissect_element_llog_logid_rec_padding4(tvb, offset, pinfo, tree);
6607 offset=lustre_dissect_element_llog_logid_rec_padding5(tvb, offset, pinfo, tree);
6609 offset=lustre_dissect_element_llog_logid_rec_lid_tail(tvb, offset, pinfo, tree);
6612 proto_item_set_len(item, offset-old_offset);
6620 /* IDL: struct llog_unlink_rec { */
6621 /* IDL: struct llog_rec_hdr { */
6622 /* IDL: } lur_hdr; */
6623 /* IDL: uint64 lur_oid; */
6624 /* IDL: uint32 lur_ogen; */
6625 /* IDL: uint32 padding; */
6626 /* IDL: struct llog_rec_tail { */
6627 /* IDL: } lur_tail; */
6631 lustre_dissect_element_llog_unlink_rec_lur_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6633 //offset=lustre_dissect_struct_HASH(0x85d8730)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_hdr);
6638 lustre_dissect_element_llog_unlink_rec_lur_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6640 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_oid);
6646 lustre_dissect_element_llog_unlink_rec_lur_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6648 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_ogen);
6654 lustre_dissect_element_llog_unlink_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6656 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_padding);
6662 lustre_dissect_element_llog_unlink_rec_lur_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6664 //offset=lustre_dissect_struct_HASH(0x85d9664)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_tail);
6669 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_)
6671 proto_item *item = NULL;
6672 proto_tree *tree = NULL;
6680 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6681 tree = proto_item_add_subtree(item, ett_lustre_llog_unlink_rec);
6684 offset=lustre_dissect_element_llog_unlink_rec_lur_hdr(tvb, offset, pinfo, tree);
6686 offset=lustre_dissect_element_llog_unlink_rec_lur_oid(tvb, offset, pinfo, tree);
6688 offset=lustre_dissect_element_llog_unlink_rec_lur_ogen(tvb, offset, pinfo, tree);
6690 offset=lustre_dissect_element_llog_unlink_rec_padding(tvb, offset, pinfo, tree);
6692 offset=lustre_dissect_element_llog_unlink_rec_lur_tail(tvb, offset, pinfo, tree);
6695 proto_item_set_len(item, offset-old_offset);
6702 /* IDL: struct llog_setattr_rec { */
6703 /* IDL: struct llog_rec_hdr { */
6704 /* IDL: } lsr_hdr; */
6705 /* IDL: uint64 lsr_oid; */
6706 /* IDL: uint32 lsr_ogen; */
6707 /* IDL: uint32 lsr_uid; */
6708 /* IDL: uint32 lsr_gid; */
6709 /* IDL: uint32 padding; */
6710 /* IDL: struct llog_rec_tail { */
6711 /* IDL: } lsr_tail; */
6715 lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6717 //offset=lustre_dissect_struct_HASH(0x85da2f0)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_hdr);
6722 lustre_dissect_element_llog_setattr_rec_lsr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6724 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_oid);
6730 lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6732 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_ogen);
6738 lustre_dissect_element_llog_setattr_rec_lsr_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6740 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_uid);
6746 lustre_dissect_element_llog_setattr_rec_lsr_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6748 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_gid);
6754 lustre_dissect_element_llog_setattr_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6756 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_padding);
6762 lustre_dissect_element_llog_setattr_rec_lsr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6764 //offset=lustre_dissect_struct_HASH(0x85db3d4)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_tail);
6769 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_)
6771 proto_item *item = NULL;
6772 proto_tree *tree = NULL;
6780 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6781 tree = proto_item_add_subtree(item, ett_lustre_llog_setattr_rec);
6784 offset=lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvb, offset, pinfo, tree);
6786 offset=lustre_dissect_element_llog_setattr_rec_lsr_oid(tvb, offset, pinfo, tree);
6788 offset=lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvb, offset, pinfo, tree);
6790 offset=lustre_dissect_element_llog_setattr_rec_lsr_uid(tvb, offset, pinfo, tree);
6792 offset=lustre_dissect_element_llog_setattr_rec_lsr_gid(tvb, offset, pinfo, tree);
6794 offset=lustre_dissect_element_llog_setattr_rec_padding(tvb, offset, pinfo, tree);
6796 offset=lustre_dissect_element_llog_setattr_rec_lsr_tail(tvb, offset, pinfo, tree);
6799 proto_item_set_len(item, offset-old_offset);
6807 /* IDL: struct llog_size_change_rec { */
6808 /* IDL: struct llog_rec_hdr { */
6809 /* IDL: } lsc_hdr; */
6810 /* IDL: struct ll_fid { */
6811 /* IDL: } lsc_fid; */
6812 /* IDL: uint32 lsc_io_epoch; */
6813 /* IDL: uint32 padding; */
6814 /* IDL: struct llog_rec_tail { */
6815 /* IDL: } lsc_tail; */
6819 lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6821 //offset=lustre_dissect_struct_HASH(0x85dc458)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_hdr);
6826 lustre_dissect_element_llog_size_change_rec_lsc_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6828 //offset=lustre_dissect_struct_HASH(0x85dc5a8)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_fid);
6833 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_)
6835 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_lsc_io_epoch);
6841 lustre_dissect_element_llog_size_change_rec_padding(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_size_change_rec_padding);
6849 lustre_dissect_element_llog_size_change_rec_lsc_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6851 //offset=lustre_dissect_struct_HASH(0x85dd384)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_tail);
6852 // TODO: to be corrected !
6857 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_)
6859 proto_item *item = NULL;
6860 proto_tree *tree = NULL;
6868 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6869 tree = proto_item_add_subtree(item, ett_lustre_llog_size_change_rec);
6872 offset=lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvb, offset, pinfo, tree);
6874 offset=lustre_dissect_element_llog_size_change_rec_lsc_fid(tvb, offset, pinfo, tree);
6876 offset=lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvb, offset, pinfo, tree);
6878 offset=lustre_dissect_element_llog_size_change_rec_padding(tvb, offset, pinfo, tree);
6880 offset=lustre_dissect_element_llog_size_change_rec_lsc_tail(tvb, offset, pinfo, tree);
6883 proto_item_set_len(item, offset-old_offset);
6891 /* IDL: struct llog_gen { */
6892 /* IDL: uint64 mnt_cnt; */
6893 /* IDL: uint64 conn_cnt; */
6897 lustre_dissect_element_llog_gen_mnt_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6899 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_mnt_cnt);
6905 lustre_dissect_element_llog_gen_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6907 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_conn_cnt);
6913 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_)
6915 proto_item *item = NULL;
6916 proto_tree *tree = NULL;
6924 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6925 tree = proto_item_add_subtree(item, ett_lustre_llog_gen);
6928 offset=lustre_dissect_element_llog_gen_mnt_cnt(tvb, offset, pinfo, tree);
6930 offset=lustre_dissect_element_llog_gen_conn_cnt(tvb, offset, pinfo, tree);
6933 proto_item_set_len(item, offset-old_offset);
6938 /* IDL: struct llog_gen_rec { */
6939 /* IDL: struct llog_rec_hdr { */
6940 /* IDL: } lgr_hdr; */
6941 /* IDL: struct llog_gen { */
6942 /* IDL: } lgr_gen; */
6943 /* IDL: struct llog_rec_tail { */
6944 /* IDL: } lgr_tail; */
6948 lustre_dissect_element_llog_gen_rec_lgr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6950 //offset=lustre_dissect_struct_HASH(0x85de2e4)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_hdr);
6951 // TODO: to be corrected !
6956 lustre_dissect_element_llog_gen_rec_lgr_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6958 //offset=lustre_dissect_struct_HASH(0x85de434)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_gen);
6959 // TODO: to be corrected !
6964 lustre_dissect_element_llog_gen_rec_lgr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6966 //offset=lustre_dissect_struct_HASH(0x85df3f8)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_tail);
6967 // TODO: to be corrected !
6972 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_)
6974 proto_item *item = NULL;
6975 proto_tree *tree = NULL;
6983 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6984 tree = proto_item_add_subtree(item, ett_lustre_llog_gen_rec);
6987 offset=lustre_dissect_element_llog_gen_rec_lgr_hdr(tvb, offset, pinfo, tree);
6989 offset=lustre_dissect_element_llog_gen_rec_lgr_gen(tvb, offset, pinfo, tree);
6991 offset=lustre_dissect_element_llog_gen_rec_lgr_tail(tvb, offset, pinfo, tree);
6994 proto_item_set_len(item, offset-old_offset);
7002 /* IDL: struct llog_log_hdr { */
7003 /* IDL: struct llog_rec_hdr { */
7004 /* IDL: } llh_hdr; */
7005 /* IDL: uint64 llh_timestamp; */
7006 /* IDL: uint32 llh_count; */
7007 /* IDL: uint32 llh_bitmap_offset; */
7008 /* IDL: uint32 llh_size; */
7009 /* IDL: uint32 llh_flags; */
7010 /* IDL: uint32 llh_cat_idx; */
7011 /* IDL: struct obd_uuid { */
7012 /* IDL: } llh_tgtuuid; */
7013 /* IDL: uint32 llh_reserved[1]; */
7014 /* IDL: uint32 llh_bitmap[2024]; */
7015 /* IDL: struct llog_rec_tail { */
7016 /* IDL: } llh_tail; */
7020 lustre_dissect_element_llog_log_hdr_llh_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7022 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_hdr);
7027 lustre_dissect_element_llog_log_hdr_llh_timestamp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7030 ns.secs = tvb_get_letohl(tvb,offset);
7032 proto_tree_add_time(tree, hf_lustre_llog_log_hdr_llh_timestamp, tvb, offset, 8, &ns );
7038 lustre_dissect_element_llog_log_hdr_llh_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7040 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_count);
7046 lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7048 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap_offset);
7054 lustre_dissect_element_llog_log_hdr_llh_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7056 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_size);
7064 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_)
7066 proto_item *item = NULL;
7067 proto_tree *tree = NULL;
7070 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
7071 tree = proto_item_add_subtree(item, ett_lustre_llog_log_llh_flags);
7073 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_zap_when_empty);
7074 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_cat);
7075 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_play);
7082 lustre_dissect_element_llog_log_hdr_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7084 // offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7085 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7090 lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7092 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_cat_idx);
7098 lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7100 offset=lustre_dissect_struct_obd_uuid(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tgtuuid);
7105 lustre_dissect_element_llog_log_hdr_llh_reserved_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7107 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_reserved);
7113 lustre_dissect_element_llog_log_hdr_llh_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7116 for (i = 0; i < 1; i++)
7117 offset=lustre_dissect_element_llog_log_hdr_llh_reserved_(tvb, offset, pinfo, tree);
7123 lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7125 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap);
7132 lustre_dissect_element_llog_log_hdr_llh_bitmap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7135 for (i = 0; i < 2024; i++)
7136 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvb, offset, pinfo, tree);
7144 lustre_dissect_element_llog_log_hdr_llh_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7146 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tail);
7151 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_)
7153 proto_item *item = NULL;
7154 proto_tree *tree = NULL;
7162 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7163 tree = proto_item_add_subtree(item, ett_lustre_llog_log_hdr);
7166 offset=lustre_dissect_element_llog_log_hdr_llh_hdr(tvb, offset, pinfo, tree);
7168 offset=lustre_dissect_element_llog_log_hdr_llh_timestamp(tvb, offset, pinfo, tree);
7170 offset=lustre_dissect_element_llog_log_hdr_llh_count(tvb, offset, pinfo, tree);
7172 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvb, offset, pinfo, tree);
7174 offset=lustre_dissect_element_llog_log_hdr_llh_size(tvb, offset, pinfo, tree);
7176 offset=lustre_dissect_element_llog_log_hdr_llh_flags(tvb, offset, pinfo, tree);
7178 offset=lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvb, offset, pinfo, tree);
7180 offset=lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvb, offset, pinfo, tree);
7182 offset=lustre_dissect_element_llog_log_hdr_llh_reserved(tvb, offset, pinfo, tree);
7184 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap(tvb, offset, pinfo, tree);
7186 offset=lustre_dissect_element_llog_log_hdr_llh_tail(tvb, offset, pinfo, tree);
7189 proto_item_set_len(item, offset-old_offset);
7197 /* IDL: struct llog_cookie { */
7198 /* IDL: struct llog_logid { */
7199 /* IDL: } lgc_lgl; */
7200 /* IDL: uint32 lgc_subsys; */
7201 /* IDL: uint32 lgc_index; */
7202 /* IDL: uint32 lgc_padding; */
7206 lustre_dissect_element_llog_cookie_lgc_lgl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7208 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_cookie_lgc_lgl);
7213 lustre_dissect_element_llog_cookie_lgc_subsys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7215 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_subsys);
7221 lustre_dissect_element_llog_cookie_lgc_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7223 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_index);
7229 lustre_dissect_element_llog_cookie_lgc_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7231 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_padding);
7237 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_)
7239 proto_item *item = NULL;
7240 proto_tree *tree = NULL;
7248 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7249 tree = proto_item_add_subtree(item, ett_lustre_llog_cookie);
7252 offset=lustre_dissect_element_llog_cookie_lgc_lgl(tvb, offset, pinfo, tree);
7254 offset=lustre_dissect_element_llog_cookie_lgc_subsys(tvb, offset, pinfo, tree);
7256 offset=lustre_dissect_element_llog_cookie_lgc_index(tvb, offset, pinfo, tree);
7258 offset=lustre_dissect_element_llog_cookie_lgc_padding(tvb, offset, pinfo, tree);
7261 proto_item_set_len(item, offset-old_offset);
7268 /* IDL: struct llogd_body { */
7269 /* IDL: struct llog_logid { */
7270 /* IDL: } lgd_logid; */
7271 /* IDL: uint32 lgd_ctxt_idx; */
7272 /* IDL: uint32 lgd_llh_flags; */
7273 /* IDL: uint32 lgd_index; */
7274 /* IDL: uint32 lgd_saved_index; */
7275 /* IDL: uint32 lgd_len; */
7276 /* IDL: uint64 lgd_cur_offset; */
7280 lustre_dissect_element_llogd_body_lgd_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7282 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llogd_body_lgd_logid);
7287 lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7289 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_ctxt_idx);
7295 lustre_dissect_element_llogd_body_lgd_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7297 //offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7299 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7305 lustre_dissect_element_llogd_body_lgd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7307 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_index);
7313 lustre_dissect_element_llogd_body_lgd_saved_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7315 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_saved_index);
7321 lustre_dissect_element_llogd_body_lgd_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7323 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_len);
7329 lustre_dissect_element_llogd_body_lgd_cur_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7331 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_cur_offset);
7337 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_)
7339 proto_item *item = NULL;
7340 proto_tree *tree = NULL;
7348 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7349 tree = proto_item_add_subtree(item, ett_lustre_llogd_body);
7352 offset=lustre_dissect_element_llogd_body_lgd_logid(tvb, offset, pinfo, tree);
7354 offset=lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvb, offset, pinfo, tree);
7356 offset=lustre_dissect_element_llogd_body_lgd_llh_flags(tvb, offset, pinfo, tree);
7358 offset=lustre_dissect_element_llogd_body_lgd_index(tvb, offset, pinfo, tree);
7360 offset=lustre_dissect_element_llogd_body_lgd_saved_index(tvb, offset, pinfo, tree);
7362 offset=lustre_dissect_element_llogd_body_lgd_len(tvb, offset, pinfo, tree);
7364 offset=lustre_dissect_element_llogd_body_lgd_cur_offset(tvb, offset, pinfo, tree);
7367 proto_item_set_len(item, offset-old_offset);
7373 /* TODO : find when this Structure appear on the wire */
7374 /* IDL: struct llogd_conn_body { */
7375 /* IDL: struct llog_gen { */
7376 /* IDL: } lgdc_gen; */
7377 /* IDL: struct llog_logid { */
7378 /* IDL: } lgdc_logid; */
7379 /* IDL: uint32 lgdc_ctxt_idx; */
7383 lustre_dissect_element_llogd_conn_body_lgdc_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7385 //offset=lustre_dissect_struct_HASH(0x85e6038)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_gen);
7390 lustre_dissect_element_llogd_conn_body_lgdc_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7392 //offset=lustre_dissect_struct_HASH(0x85e6188)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_logid);
7397 lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7399 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_conn_body_lgdc_ctxt_idx);
7405 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_)
7407 proto_item *item = NULL;
7408 proto_tree *tree = NULL;
7416 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7417 tree = proto_item_add_subtree(item, ett_lustre_llogd_conn_body);
7420 offset=lustre_dissect_element_llogd_conn_body_lgdc_gen(tvb, offset, pinfo, tree);
7422 offset=lustre_dissect_element_llogd_conn_body_lgdc_logid(tvb, offset, pinfo, tree);
7424 offset=lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvb, offset, pinfo, tree);
7427 proto_item_set_len(item, offset-old_offset);
7432 /* IDL: struct obdo { */
7433 /* IDL: uint64 o_valid; */
7434 /* IDL: uint64 o_id; */
7435 /* IDL: uint64 o_seq; */
7436 /* IDL: uint64 o_parent_seq; */
7437 /* IDL: uint64 o_size; */
7438 /* IDL: uint64 o_mtime; */
7439 /* IDL: uint64 o_atime; */
7440 /* IDL: uint64 o_ctime; */
7441 /* IDL: uint64 o_blocks; */
7442 /* IDL: uint64 o_grant; */
7443 /* IDL: uint32 o_blksize; */
7444 /* IDL: uint32 o_mode; */
7445 /* IDL: uint32 o_uid; */
7446 /* IDL: uint32 o_gid; */
7447 /* IDL: uint32 o_flags; */
7448 /* IDL: uint32 o_nlink; */
7449 /* IDL: uint32 o_parent_oid; */
7450 /* IDL: uint32 o_misc; */
7451 /* IDL: uint64 o_ioepoch; */
7452 /* IDL: uint32 o_stripe_idx; */
7453 /* IDL: uint32 o_parent_ver; */
7454 /* IDL: struct lustre_handle { */
7455 /* IDL: } o_handle; */
7456 /* IDL: struct llog_cookie { */
7457 /* IDL: } o_lcookie; */
7458 /* IDL: uint32 o_uid_h; */
7459 /* IDL: uint32 o_gid_h; */
7460 /* IDL: uint64 o_padding_3; */
7461 /* IDL: uint64 o_padding_4; */
7462 /* IDL: uint64 o_padding_5; */
7463 /* IDL: uint64 o_padding_6; */
7467 lustre_dissect_element_obdo_o_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7469 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_valid);
7475 lustre_dissect_element_obdo_o_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7477 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_id);
7483 lustre_dissect_element_obdo_o_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7485 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_seq);
7491 lustre_dissect_element_obdo_o_parent_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7493 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_seq);
7499 lustre_dissect_element_obdo_o_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7501 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_size);
7507 lustre_dissect_element_obdo_o_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7511 ns.secs = tvb_get_letohl(tvb,offset);
7513 proto_tree_add_time(tree, hf_lustre_obdo_o_mtime, tvb, offset, 8, &ns );
7519 lustre_dissect_element_obdo_o_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7523 ns.secs = tvb_get_letohl(tvb,offset);
7525 proto_tree_add_time(tree, hf_lustre_obdo_o_atime, tvb, offset, 8, &ns );
7532 lustre_dissect_element_obdo_o_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7536 ns.secs = tvb_get_letohl(tvb,offset);
7538 proto_tree_add_time(tree, hf_lustre_obdo_o_ctime, tvb, offset, 8, &ns );
7544 lustre_dissect_element_obdo_o_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7546 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blocks);
7552 lustre_dissect_element_obdo_o_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7554 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_grant);
7560 lustre_dissect_element_obdo_o_blksize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7562 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blksize);
7568 lustre_dissect_element_obdo_o_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7570 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_mode);
7576 lustre_dissect_element_obdo_o_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7578 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid);
7584 lustre_dissect_element_obdo_o_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7586 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid);
7592 lustre_dissect_element_obdo_o_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7594 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_flags);
7595 /* TODO rajouter ça , faire une fonction générique qui s'occupe de tous les flags d'un tableau. */
7597 /*0x00000001 : "OBD_FL_INLINEDATA",*/
7598 /*0x00000002 : "OBD_FL_OBDMDEXISTS",*/
7599 /*0x00000004 : "OBD_FL_DELORPHAN",*/
7600 /*0x00000008 : "OBD_FL_NORPC",*/
7601 /*0x00000010 : "OBD_FL_IDONLY",*/
7602 /*0x00000020 : "OBD_FL_RECREATE_OBJS",*/
7603 /*0x00000040 : "OBD_FL_DEBUG_CHECK",*/
7604 /*0x00000100 : "OBD_FL_NO_USRQUOTA",*/
7605 /*0x00000200 : "OBD_FL_NO_GRPQUOTA",*/
7606 /*0x00000400 : "OBD_FL_CREATE_CROW",*/
7607 /*0x00000800 : "OBD_FL_SRVLOCK",*/
7613 lustre_dissect_element_obdo_o_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7615 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_nlink);
7621 lustre_dissect_element_obdo_o_parent_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7623 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_oid);
7629 lustre_dissect_element_obdo_o_misc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7631 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_misc);
7637 lustre_dissect_element_obdo_o_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7639 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_ioepoch);
7645 lustre_dissect_element_obdo_o_stripe_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7647 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_stripe_idx);
7653 lustre_dissect_element_obdo_o_parent_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7655 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_ver);
7661 lustre_dissect_element_obdo_o_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7663 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_handle);
7668 lustre_dissect_element_obdo_o_lcookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7670 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_lcookie);
7675 lustre_dissect_element_obdo_o_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7677 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid_h);
7683 lustre_dissect_element_obdo_o_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7685 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid_h);
7691 lustre_dissect_element_obdo_o_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7693 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_3);
7699 lustre_dissect_element_obdo_o_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7701 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_4);
7707 lustre_dissect_element_obdo_o_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7709 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_5);
7715 lustre_dissect_element_obdo_o_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7717 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_6);
7723 lustre_dissect_struct_obdo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7725 proto_item *item = NULL;
7726 proto_tree *tree = NULL;
7733 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7734 tree = proto_item_add_subtree(item, ett_lustre_obdo);
7737 offset=lustre_dissect_element_obdo_o_valid(tvb, offset, pinfo, tree);
7739 offset=lustre_dissect_element_obdo_o_id(tvb, offset, pinfo, tree);
7741 offset=lustre_dissect_element_obdo_o_seq(tvb, offset, pinfo, tree);
7743 offset=lustre_dissect_element_obdo_o_parent_seq(tvb, offset, pinfo, tree);
7745 offset=lustre_dissect_element_obdo_o_size(tvb, offset, pinfo, tree);
7747 offset=lustre_dissect_element_obdo_o_mtime(tvb, offset, pinfo, tree);
7749 offset=lustre_dissect_element_obdo_o_atime(tvb, offset, pinfo, tree);
7751 offset=lustre_dissect_element_obdo_o_ctime(tvb, offset, pinfo, tree);
7753 offset=lustre_dissect_element_obdo_o_blocks(tvb, offset, pinfo, tree);
7755 offset=lustre_dissect_element_obdo_o_grant(tvb, offset, pinfo, tree);
7757 offset=lustre_dissect_element_obdo_o_blksize(tvb, offset, pinfo, tree);
7759 offset=lustre_dissect_element_obdo_o_mode(tvb, offset, pinfo, tree);
7761 offset=lustre_dissect_element_obdo_o_uid(tvb, offset, pinfo, tree);
7763 offset=lustre_dissect_element_obdo_o_gid(tvb, offset, pinfo, tree);
7765 offset=lustre_dissect_element_obdo_o_flags(tvb, offset, pinfo, tree);
7767 offset=lustre_dissect_element_obdo_o_nlink(tvb, offset, pinfo, tree);
7769 offset=lustre_dissect_element_obdo_o_parent_oid(tvb, offset, pinfo, tree);
7771 offset=lustre_dissect_element_obdo_o_misc(tvb, offset, pinfo, tree);
7773 offset=lustre_dissect_element_obdo_o_ioepoch(tvb, offset, pinfo, tree);
7775 offset=lustre_dissect_element_obdo_o_stripe_idx(tvb, offset, pinfo, tree);
7777 offset=lustre_dissect_element_obdo_o_parent_ver(tvb, offset, pinfo, tree);
7779 offset=lustre_dissect_element_obdo_o_handle(tvb, offset, pinfo, tree);
7781 offset=lustre_dissect_element_obdo_o_lcookie(tvb, offset, pinfo, tree);
7783 offset=lustre_dissect_element_obdo_o_uid_h(tvb, offset, pinfo, tree);
7785 offset=lustre_dissect_element_obdo_o_gid_h(tvb, offset, pinfo, tree);
7787 offset=lustre_dissect_element_obdo_o_padding_3(tvb, offset, pinfo, tree);
7789 offset=lustre_dissect_element_obdo_o_padding_4(tvb, offset, pinfo, tree);
7791 offset=lustre_dissect_element_obdo_o_padding_5(tvb, offset, pinfo, tree);
7793 offset=lustre_dissect_element_obdo_o_padding_6(tvb, offset, pinfo, tree);
7796 proto_item_set_len(item, offset-old_offset);
7803 /* IDL: struct ost_body { */
7804 /* IDL: struct obdo { */
7809 lustre_dissect_element_ost_body_oa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7811 offset=lustre_dissect_struct_obdo(tvb,offset,pinfo,tree,hf_lustre_ost_body_oa);
7816 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_)
7818 proto_item *item = NULL;
7819 proto_tree *tree = NULL;
7825 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7826 tree = proto_item_add_subtree(item, ett_lustre_ost_body);
7829 offset=lustre_dissect_element_ost_body_oa(tvb, offset, pinfo, tree);
7831 proto_item_set_len(item, offset-old_offset);
7837 /* TODO : find when this Structure appear on the wire */
7838 /* IDL: struct qunit_data { */
7839 /* IDL: uint32 qd_id; */
7840 /* IDL: uint32 qd_flags; */
7841 /* IDL: uint64 qd_count; */
7842 /* IDL: uint64 qd_qunit; */
7843 /* IDL: uint64 padding; */
7847 lustre_dissect_element_qunit_data_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7849 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_id);
7855 lustre_dissect_element_qunit_data_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7857 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_flags);
7863 lustre_dissect_element_qunit_data_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7865 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_count);
7871 lustre_dissect_element_qunit_data_qd_qunit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7873 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_qunit);
7879 lustre_dissect_element_qunit_data_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7881 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_padding);
7887 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_)
7889 proto_item *item = NULL;
7890 proto_tree *tree = NULL;
7898 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7899 tree = proto_item_add_subtree(item, ett_lustre_qunit_data);
7902 offset=lustre_dissect_element_qunit_data_qd_id(tvb, offset, pinfo, tree);
7904 offset=lustre_dissect_element_qunit_data_qd_flags(tvb, offset, pinfo, tree);
7906 offset=lustre_dissect_element_qunit_data_qd_count(tvb, offset, pinfo, tree);
7908 offset=lustre_dissect_element_qunit_data_qd_qunit(tvb, offset, pinfo, tree);
7910 offset=lustre_dissect_element_qunit_data_padding(tvb, offset, pinfo, tree);
7913 proto_item_set_len(item, offset-old_offset);
7918 /* TODO : find when this Structure appear on the wire */
7919 /* IDL: struct qunit_data_old2 { */
7920 /* IDL: uint32 qd_id; */
7921 /* IDL: uint32 qd_flags; */
7922 /* IDL: uint64 qd_count; */
7926 lustre_dissect_element_qunit_data_old2_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7928 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_id);
7934 lustre_dissect_element_qunit_data_old2_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7936 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_flags);
7942 lustre_dissect_element_qunit_data_old2_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7944 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_count);
7950 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_)
7952 proto_item *item = NULL;
7953 proto_tree *tree = NULL;
7961 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7962 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old2);
7965 offset=lustre_dissect_element_qunit_data_old2_qd_id(tvb, offset, pinfo, tree);
7967 offset=lustre_dissect_element_qunit_data_old2_qd_flags(tvb, offset, pinfo, tree);
7969 offset=lustre_dissect_element_qunit_data_old2_qd_count(tvb, offset, pinfo, tree);
7972 proto_item_set_len(item, offset-old_offset);
7977 /* TODO : find when this Structure appear on the wire */
7978 /* IDL: struct qunit_data_old { */
7979 /* IDL: uint32 qd_id; */
7980 /* IDL: uint32 qd_type; */
7981 /* IDL: uint32 qd_count; */
7982 /* IDL: uint32 qd_isblk; */
7986 lustre_dissect_element_qunit_data_old_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7988 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_id);
7994 lustre_dissect_element_qunit_data_old_qd_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7996 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_type);
8002 lustre_dissect_element_qunit_data_old_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8004 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_count);
8010 lustre_dissect_element_qunit_data_old_qd_isblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8012 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_isblk);
8018 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_)
8020 proto_item *item = NULL;
8021 proto_tree *tree = NULL;
8029 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8030 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old);
8033 offset=lustre_dissect_element_qunit_data_old_qd_id(tvb, offset, pinfo, tree);
8035 offset=lustre_dissect_element_qunit_data_old_qd_type(tvb, offset, pinfo, tree);
8037 offset=lustre_dissect_element_qunit_data_old_qd_count(tvb, offset, pinfo, tree);
8039 offset=lustre_dissect_element_qunit_data_old_qd_isblk(tvb, offset, pinfo, tree);
8042 proto_item_set_len(item, offset-old_offset);
8048 lustre_dissect_struct_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_ )
8050 offset=dissect_uint32(tvb, offset, pinfo, parent_tree, hf_index);
8051 /* Pad out to 8 bytes */
8052 offset=add_extra_padding(tvb,offset,pinfo,parent_tree);
8058 lustre_dissect_struct_seq_range(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8060 proto_item *item = NULL;
8061 proto_tree *tree = NULL;
8067 item = proto_tree_add_item(parent_tree, hf_lustre_seq_range, tvb, offset, -1, TRUE);
8068 tree = proto_item_add_subtree(item, ett_lustre_seq_range);
8071 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_seq_range_start);
8072 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_seq_range_end);
8073 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_seq_range_index);
8074 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_seq_range_flags);
8077 proto_item_set_len(item, offset-old_offset);
8083 lustre_dissect_struct_fld_range(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8085 proto_item *item = NULL;
8086 proto_tree *tree = NULL;
8092 item = proto_tree_add_item(parent_tree, hf_lustre_fld_range, tvb, offset, -1, TRUE);
8093 tree = proto_item_add_subtree(item, ett_lustre_fld_range);
8096 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_fld_range_start);
8097 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_fld_range_end);
8098 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_fld_range_index);
8099 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_fld_range_flags);
8102 proto_item_set_len(item, offset-old_offset);
8108 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_)
8110 proto_item *item = NULL;
8111 proto_tree *tree = NULL;
8117 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8118 tree = proto_item_add_subtree(item, ett_lustre_mdt_ioepoch);
8121 offset=lustre_dissect_struct_handle_cookie(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_handle);
8122 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_ioepoch);
8123 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_flags);
8124 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch_padding);
8127 proto_item_set_len(item, offset-old_offset);
8131 /* IDL: struct lustre_capa {
8132 * IDL: struct lu_fid lc_fid;
8133 * IDL: __u64 lc_opc;
8134 * IDL: __u64 lc_uid;
8135 * IDL: __u64 lc_gid;
8136 * IDL: __u32 lc_flags;
8137 * IDL: __u32 lc_keyid;
8138 * IDL: __u32 lc_timeout;
8139 * IDL: __u32 lc_expiry;
8140 * IDL: __u8 lc_hmac[64];
8141 * IDL: } __attribute__((packed));
8144 /** lustre_capa::lc_opc */
8146 /* CAPA_OPC_BODY_WRITE = 1<<0, **< write object data */
8147 /* CAPA_OPC_BODY_READ = 1<<1, **< read object data */
8148 /* CAPA_OPC_INDEX_LOOKUP = 1<<2, **< lookup object fid */
8149 /* CAPA_OPC_INDEX_INSERT = 1<<3, **< insert object fid */
8150 /* CAPA_OPC_INDEX_DELETE = 1<<4, **< delete object fid */
8151 /* CAPA_OPC_OSS_WRITE = 1<<5, **< write oss object data */
8152 /* CAPA_OPC_OSS_READ = 1<<6, **< read oss object data */
8153 /* CAPA_OPC_OSS_TRUNC = 1<<7, **< truncate oss object */
8154 /* CAPA_OPC_OSS_DESTROY = 1<<8, **< destroy oss object */
8155 /* CAPA_OPC_META_WRITE = 1<<9, **< write object meta data */
8156 /* CAPA_OPC_META_READ = 1<<10, **< read object meta data */
8160 lustre_dissect_element_capa_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8162 /* TODO - pick apart bits */
8163 offset = dissect_uint64(tvb, offset, pinfo, parent_tree, hf_lustre_capa_opc);
8168 lustre_dissect_element_capa_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
8170 /* TODO - pick apart flags */
8171 offset=dissect_uint32(tvb,offset,pinfo,parent_tree,hf_lustre_capa_flags);
8176 lustre_dissect_struct_capa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
8177 proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
8179 proto_item *item = NULL;
8180 proto_tree *tree = NULL;
8186 data_len = LUSTRE_BUFFER_LEN(buf_num);
8191 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8192 tree = proto_item_add_subtree(item, ett_lustre_capa);
8195 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_capa_fid);
8197 offset=lustre_dissect_element_capa_opc(tvb,offset,pinfo,tree);
8199 offset=dissect_uint64(tvb,offset,pinfo,tree,hf_lustre_capa_uid);
8201 offset=dissect_uint64(tvb,offset,pinfo,tree,hf_lustre_capa_gid);
8203 offset=lustre_dissect_element_capa_flags(tvb,offset,pinfo,tree);
8205 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_keyid);
8207 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_timeout);
8209 offset=dissect_uint32(tvb,offset,pinfo,tree,hf_lustre_capa_expiry);
8211 offset=lustre_dissect_struct_hmac(tvb,offset,pinfo,tree, hf_lustre_capa_hmac, 64);
8214 proto_item_set_len(item, offset-old_offset);
8220 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)
8222 proto_item *item = NULL;
8223 proto_tree *tree = NULL;
8229 data_len = LUSTRE_BUFFER_LEN(buf_num);
8234 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8235 tree = proto_item_add_subtree(item, ett_lustre_acl);
8238 proto_tree_add_item(tree, hf_index, tvb, offset, data_len, TRUE);
8242 offset=add_extra_padding(tvb,offset,pinfo,tree);
8245 proto_item_set_len(item, offset-old_offset);
8251 /* ------------------------------------------------------------------------- */
8253 * the length of the string is the current buflen
8254 * @tvb the packet buff
8255 * @offset the current offset
8258 * @hf_index : the corresponding header field
8259 * @buf_num : the corresponding bufnumber of the string (we use it to
8260 * determine the string length), must respect : 0<bufnum<=bufmax_in_paquet
8263 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)
8265 proto_item *item = NULL;
8271 /* if (parent_tree) {
8272 * item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8273 * tree = proto_item_add_subtree(item, ett_lustre);
8277 string_len = LUSTRE_BUFFER_LEN(buf_num);
8281 /* g_print("buf_num:%d (max:%d) BUFLEN_OFF:%#x strlen:%d\n",
8282 buf_num, LUSTRE_BUFCOUNT,
8283 LUSTRE_BUFLEN_OFF, string_len);*/
8285 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
8287 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " filename : %s",
8288 (const gchar *) tvb_get_string(tvb,offset,string_len) );
8291 proto_item_set_len(item, offset-old_offset);
8292 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* after a string we must be aligned to 8 bytes. */
8297 /* ------------------------------------------------------------------------- */
8300 /* Process REINT opcode requests */
8301 static int reint_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
8305 opcode = tvb_get_letohl(tvb,offset);
8309 /* 2.x+ [rec_setattr][capa1][mdt_epoch][eadata][cookie_data][ldlm_request] */
8310 /* old? [rec_setattr][ldlm_request] */
8311 offset=lustre_dissect_struct_mdt_rec_setattr(tvb, offset, pinfo, tree,
8312 hf_lustre_mdt_rec_setattr);
8313 if (LUSTRE_BUFCOUNT > 2) {
8314 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8315 hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8316 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+2) > 0)
8317 offset=lustre_dissect_struct_mdt_ioepoch(tvb, offset, pinfo, tree,
8318 hf_lustre_mdt_ioepoch);
8319 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8320 hf_lustre_mds_xattr_eadata,
8321 LUSTRE_REQ_REC_OFF+3);
8322 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8323 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8325 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8326 hf_lustre_ldlm_request);
8329 /* [rec_create][filename][tgt.. Ã 0 pour l'instant][ldlm_request] */
8330 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8331 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8332 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2);
8333 /* REINT_CREATE_SLAVE / SYM / RMT_ACL */
8334 if (LUSTRE_BUFCOUNT > 4) {
8335 /* for CREATE_SYM this is actually name of target - encoded in mdt_rec_create.cr_mode */
8336 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+3);
8337 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8338 hf_lustre_ldlm_request);
8342 /*[mdt_rec_link][filename][ldlm_req] */
8343 offset=lustre_dissect_struct_mdt_rec_link(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link);
8344 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8345 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8346 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+3);
8347 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8348 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8351 /* reint_unlink_client: [mdt_rec_unlink][capa1][filename][ldlm_req] */
8352 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink);
8353 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8354 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+2) == 112) {
8355 /* TODO : ugly .. but for now we have to do this */
8356 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8359 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2);
8360 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8363 case REINT_RENAME: /*mds_rename_unpack : [mdt_rec_rename][filename source][filename target_name][ldlm_request] */
8364 offset=lustre_dissect_struct_mdt_rec_rename(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename);
8365 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8366 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8367 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+3);
8368 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_new_name, LUSTRE_REQ_REC_OFF+4);
8369 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+5) > 0)
8370 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8372 case REINT_OPEN: /* [rec_create][filename][eadata] */
8373 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8374 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
8375 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2);
8377 case REINT_SETXATTR:
8378 /* 2.x+ [rec_setxattr][capa1][name][eadata] */
8379 /* old? [rec_setxattr][ldlm_request] */
8380 offset=lustre_dissect_struct_mdt_rec_setxattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr);
8381 if (LUSTRE_BUFCOUNT > 2) {
8382 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8383 hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8384 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+2);
8385 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
8386 LUSTRE_REQ_REC_OFF+3);
8387 if (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+4) > 0)
8388 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8389 } else if (LUSTRE_BUFCOUNT == 2)
8390 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8391 hf_lustre_ldlm_request);
8402 /* dissect a connect message */
8404 lustre_dissect_generic_connect(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8406 /*TODO : add a cuuid and target uid */
8407 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8408 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8409 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
8410 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8415 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)
8420 case OST_REPLY: /* obsolete so nothing */
8423 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8424 if (pb_type == PTL_RPC_MSG_REQUEST)
8425 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8428 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8429 if (pb_type == PTL_RPC_MSG_REQUEST)
8430 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8432 case OST_READ: /* [OST_BODY][obd_ioobj][niobuf_remote] for request, [OST_BODY] for reply */
8433 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8434 if(pb_type==PTL_RPC_MSG_REQUEST){
8435 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8436 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_niobuf_remote);
8440 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree,
8441 hf_lustre_ost_body);
8442 if(pb_type==PTL_RPC_MSG_REQUEST) {
8443 for (i = 0; i < (LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+1))/24; i++)
8444 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8445 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_obd_ioobj);
8447 if(pb_type==PTL_RPC_MSG_REPLY) { /* niocount *[uint32], but niocount is in request message, so
8448 we use the bufcount */
8449 for (i = 0; i < LUSTRE_BUFCOUNT-2; i++) /* -2 because we have already dissect 2 buffers : ptl + ost */
8450 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_nio);
8451 offset=add_extra_padding(tvb, offset, pinfo, tree);
8455 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8456 if (pb_type == PTL_RPC_MSG_REQUEST)
8457 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8460 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8461 if(pb_type==PTL_RPC_MSG_REQUEST) {/* [ost_body][ldlm_req][capa] */
8462 if ( LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF +1) != 0)
8463 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request);
8464 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+2);
8468 if(pb_type==PTL_RPC_MSG_REQUEST) /* [key] */
8469 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF);
8470 if (pb_type==PTL_RPC_MSG_REPLY)
8471 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF); /* val */
8474 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8475 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8476 if (pb_type==PTL_RPC_MSG_REPLY)
8477 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8479 case OST_DISCONNECT: /* [nothing] */
8481 case OST_PUNCH: /* [ost_body] */
8482 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8483 if (pb_type == PTL_RPC_MSG_REQUEST)
8484 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8486 case OST_OPEN: /* [nothing] in the code maybee obsolete */
8488 case OST_CLOSE: /* [nothing] in the code maybee obsolete */
8490 case OST_STATFS: /* [obd_statfs] */
8491 if (pb_type==PTL_RPC_MSG_REPLY)
8492 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8495 /*[ost_body] in both case */
8496 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8497 if (pb_type == PTL_RPC_MSG_REQUEST)
8498 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+1);
8501 if(pb_type==PTL_RPC_MSG_REQUEST)
8503 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF); /* key */
8504 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8506 /* if Key = "evict_by_nid" --> need to be process.. TODO */
8508 case OST_QUOTACHECK:
8509 if(pb_type==PTL_RPC_MSG_REQUEST)
8510 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8511 /* nothing in reply */
8514 /*[obd_quotactl in both case]*/
8515 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8516 case OST_QUOTA_ADJUST_QUNIT:
8517 /* [quota_adjust_qunit] in both case ? */
8518 offset=lustre_dissect_struct_quota_adjust_qunit(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit) ;
8524 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)
8527 case MDS_DISCONNECT:
8531 /*request: [mds body]*/
8532 /*reply: [mds body][capa] */
8533 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8534 if (pb_type == PTL_RPC_MSG_REPLY)
8535 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+1);
8538 if(pb_type==PTL_RPC_MSG_REQUEST)
8540 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8541 /*if(reply) : [nothing]*/
8544 /*request: [mds body][capa][xattr name]*/
8545 /*reply: [mds body][eadata] - ommited on error */
8546 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8547 if(pb_type==PTL_RPC_MSG_REQUEST) {
8548 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+1);
8549 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+2);
8551 if (pb_type == PTL_RPC_MSG_REPLY)
8552 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+1);
8555 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body);
8556 if (pb_type == PTL_RPC_MSG_REPLY) { /* [mdt_md][acl][capa1][capa2] */
8557 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
8558 hf_lustre_mds_md_data,
8559 LUSTRE_REPLY_REC_OFF+1);
8560 offset=lustre_dissect_struct_acl(tvb, offset, pinfo, tree,
8561 hf_lustre_acl, LUSTRE_REPLY_REC_OFF+3);
8562 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8564 LUSTRE_REPLY_REC_OFF+4);
8565 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8567 LUSTRE_REPLY_REC_OFF+5);
8570 case MDS_GETATTR_NAME:
8571 if(pb_type==PTL_RPC_MSG_REQUEST)
8573 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8574 /*[nothing in reply]*/
8576 case MDS_DONE_WRITING:
8578 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8580 case MDS_PIN: /* repbody.. */
8582 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8586 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8590 if(pb_type==PTL_RPC_MSG_REQUEST)
8591 { /* [mdt_ioepoch][rec_reint][capa1] */
8592 offset=lustre_dissect_struct_mdt_ioepoch(tvb, offset, pinfo, tree, hf_lustre_mdt_ioepoch);
8594 if(LUSTRE_BUFFER_LEN(LUSTRE_REQ_REC_OFF+1) > 0)
8595 offset=lustre_dissect_struct_mdt_rec_setattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr);
8597 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+2);
8599 if(pb_type==PTL_RPC_MSG_REPLY)
8600 { /* [mdt_body][md][cookie][capa1][capa2] */
8601 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8602 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_md_data, LUSTRE_REPLY_REC_OFF+1);
8603 if(LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF+2) > 0)
8604 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8605 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+3);
8606 offset=lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REQ_REC_OFF+4);
8611 if(pb_type==PTL_RPC_MSG_REPLY)
8613 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8614 /*in request : [nothing]*/
8618 /* [mdt_body] but with some different interpration, need to modify the hf : TODO */
8619 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8623 /* the structure depend on the intent_opcode */
8624 if(pb_type==PTL_RPC_MSG_REQUEST)
8625 offset=reint_opcode_process(tvb, offset, pinfo, tree);
8627 if(pb_type==PTL_RPC_MSG_REPLY) {
8628 /* [mdt_body][mdt_md][??][capa1][capa2] */
8629 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8631 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1, LUSTRE_REPLY_REC_OFF+1);
8633 if(LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF+2) > 0)
8634 /* open : ...[ACL]...
8635 * unlink, rename : ...[log_cookies]... */
8636 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8637 hf_lustre_mds_xattr_eadata,
8638 LUSTRE_REPLY_REC_OFF+2);
8640 lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+3);
8641 lustre_dissect_struct_capa(tvb,offset,pinfo,tree, hf_lustre_capa, LUSTRE_REPLY_REC_OFF+4);
8645 if(pb_type==PTL_RPC_MSG_REQUEST){
8647 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
8648 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8649 //offset=add_extra_padding(tvb,offset,pinfo,tree);
8651 /*nothing en reply*/
8653 case MDS_QUOTACHECK:
8654 /* [obd_quotactl] */
8655 if(pb_type==PTL_RPC_MSG_REQUEST)
8656 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8659 /* [obd_quotactl] in both case*/
8660 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8663 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8664 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8665 if (pb_type==PTL_RPC_MSG_REPLY || pb_type == PTL_RPC_MSG_ERR) /*[obd_connect_data]*/
8666 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8678 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)
8682 /* [ldlm_request] if we have one more buffer it's
8683 * [intent_opcode] and the opcode give us the corresponding
8684 * intent structure [intent] */
8685 if (pb_type==PTL_RPC_MSG_REQUEST) {
8686 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8687 hf_lustre_ldlm_request);
8688 if (LUSTRE_BUFCOUNT>=3)
8689 offset=lustre_dissect_struct_ldlm_intent(tvb, offset, pinfo, tree,
8690 hf_lustre_ldlm_intent);
8692 if (pb_type==PTL_RPC_MSG_REPLY) {
8695 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree,
8696 hf_lustre_ldlm_reply,
8698 /* check if we're done processing */
8699 if (LUSTRE_BUFCOUNT <= 2)
8702 if (LUSTRE_BUFFER_LEN(LUSTRE_REPLY_REC_OFF) == 40)
8703 /* TODO :this code need to be check and test, the
8704 * lustre corresponding code isn't explicit, so not
8705 * sure to have this buffer, but in example it works
8708 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree,
8711 else if (ldlm_type == LDLM_EXTENT) {
8712 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1,
8713 LUSTRE_DLM_REPLY_REC_OFF);
8717 if (LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8718 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree,
8719 hf_lustre_mdt_body);
8720 offset=lustre_dissect_struct_lov_mds_md(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1,
8721 LUSTRE_DLM_INTENT_REC_OFF);
8723 /* ldlm_intent_server : ACL */
8724 offset=lustre_dissect_struct_acl(tvb, offset, pinfo, tree,
8725 hf_lustre_acl, LUSTRE_DLM_INTENT_REC_OFF+1);
8727 /* ldlm_intent_open_server : [capa1][capa2] */
8728 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8729 hf_lustre_capa, LUSTRE_DLM_INTENT_REC_OFF+2);
8730 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree,
8731 hf_lustre_capa, LUSTRE_DLM_INTENT_REC_OFF+3);
8736 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8737 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8738 if(pb_type==PTL_RPC_MSG_REPLY) /*[ldlm_reply]*/
8739 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply, NULL) ;
8743 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8744 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8747 case LDLM_BL_CALLBACK:
8748 if(pb_type==PTL_RPC_MSG_REQUEST) /*[ldlm_request]*/
8749 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8752 case LDLM_CP_CALLBACK:
8753 if(pb_type==PTL_RPC_MSG_REQUEST){
8754 /*[ldlm_request] if the third buffer exist we have [lvb data] so it's [ost_lvb] : TODO :
8756 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8757 if(LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8758 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8760 /*reply : [nothing] */
8763 case LDLM_GL_CALLBACK:
8764 if(pb_type==PTL_RPC_MSG_REQUEST) { /*[ldlm_request] [lvb (for gl_desc)]*/
8765 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8766 if(LUSTRE_BUFFER_LEN(LUSTRE_DLM_REPLY_REC_OFF) > 0)
8767 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8769 if(pb_type==PTL_RPC_MSG_REPLY) /* [ost_lvb] */
8770 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8780 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)
8784 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8785 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8786 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
8787 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8789 case MGS_DISCONNECT :
8792 case MGS_EXCEPTION : /* node died, etc. */
8795 case MGS_TARGET_REG:
8796 /*[mgs_target_info], mgs_handler.c mgs_handle_target_reg() called whenever a target startup*/
8797 offset=lustre_dissect_struct_mgs_target_info(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info);
8799 case MGS_TARGET_DEL:
8803 /*[mgs_send_param], mgs_set_info_rpc()*/
8804 offset=lustre_dissect_struct_mgs_send_param(tvb,offset,pinfo,tree,hf_lustre_mgs_send_param);
8806 case MGS_CONFIG_READ:
8807 if (pb_type==PTL_RPC_MSG_REQUEST) /* [config_body] */
8808 offset=lustre_dissect_struct_mgs_config_body(tvb,offset,pinfo,tree,hf_lustre_mgs_config_body);
8809 if (pb_type==PTL_RPC_MSG_REPLY) /* [config_res] */
8810 offset=lustre_dissect_struct_mgs_config_res(tvb,offset,pinfo,tree,hf_lustre_mgs_config_res);
8819 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)
8825 case OBD_LOG_CANCEL:
8828 case OBD_QC_CALLBACK:
8829 if(pb_type==PTL_RPC_MSG_REQUEST)
8830 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8831 /*if (request) : [nothing]*/
8840 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)
8843 case LLOG_ORIGIN_HANDLE_CREATE : /* in handler.c */
8844 /*[llogd_body] (reply and request)*/
8845 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8846 if(pb_type==PTL_RPC_MSG_REQUEST) /* [filename] */
8847 if (LUSTRE_BUFCOUNT>2)
8848 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_name,
8849 LUSTRE_REQ_REC_OFF+1);
8851 case LLOG_ORIGIN_HANDLE_NEXT_BLOCK :/* in handler.c */
8852 /* [llogd_body][eadata]
8853 * the size of second buf is LLOG_CHKUNK_SIZE, so it's maybee only bulk data */
8854 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8855 if(pb_type==PTL_RPC_MSG_REPLY)
8856 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8857 LUSTRE_REPLY_REC_OFF+1);
8859 case LLOG_ORIGIN_HANDLE_READ_HEADER:/* in handler.c */
8860 if(pb_type==PTL_RPC_MSG_REQUEST){
8861 /* [llogd_body][llog_log_hdr] */
8862 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8863 if(LUSTRE_BUFCOUNT>2)
8864 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8865 hf_lustre_llogd_log_hdr);
8867 if(pb_type==PTL_RPC_MSG_REPLY) /* [llog_log_hdr] */
8868 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8869 hf_lustre_llogd_log_hdr);
8871 case LLOG_ORIGIN_HANDLE_WRITE_REC : /* I think this is obsolete */
8874 case LLOG_ORIGIN_HANDLE_CLOSE :/* handler.c */
8877 case LLOG_ORIGIN_CONNECT : /* ost_handler.c */
8879 case LLOG_CATINFO : /*in handler.c */
8880 if(pb_type==PTL_RPC_MSG_REQUEST){
8881 /* [keyword][if keyword=config [char*] else [nothing]] */
8882 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_keyword,
8883 LUSTRE_REQ_REC_OFF);
8884 if (strcmp((const char *)tvb_get_string(tvb, LUSTRE_REQ_REC_OFF,
8886 LUSTRE_BUFLEN_OFF + 4 *
8887 LUSTRE_REQ_REC_OFF)),
8889 /* if(keyword == "config") */
8890 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_client,
8891 LUSTRE_REQ_REC_OFF+1);
8893 if(pb_type==PTL_RPC_MSG_REPLY)
8894 /*[buf] sizeof = llog_chunk_size*/
8895 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8896 LUSTRE_REPLY_REC_OFF + 1 );
8897 /* TODO TODO : check if it's note a catid */
8899 case LLOG_ORIGIN_HANDLE_PREV_BLOCK : /* in handler.c */
8900 /* [llogd_body] in both case */
8901 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8902 if(pb_type==PTL_RPC_MSG_REPLY)
8903 /*[buf] size of llog_chunk_size*/
8904 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8905 LUSTRE_REPLY_REC_OFF + 1 );
8907 case LLOG_ORIGIN_HANDLE_DESTROY : /* in handler.c */
8908 /*[llogd_body] in both case*/
8909 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8919 lustre_seq_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
8920 proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8924 if (pb_type == PTL_RPC_MSG_REQUEST)
8925 offset=lustre_dissect_struct_seq(tvb, offset, pinfo, tree, hf_lustre_seq_opc);
8926 offset=lustre_dissect_struct_seq_range(tvb, offset, pinfo, tree);
8930 g_print("error: SEQ Opcode: %d unknown\n", opc);
8931 if (check_col(pinfo->cinfo, COL_INFO))
8932 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
8940 lustre_fld_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
8941 proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8945 if (pb_type == PTL_RPC_MSG_REQUEST)
8946 offset=lustre_dissect_struct_seq(tvb, offset, pinfo, tree, hf_lustre_fld_opc);
8947 offset=lustre_dissect_struct_seq_range(tvb, offset, pinfo, tree);
8951 g_print("error: FLD Opcode: %d unknown\n", opc);
8952 if (check_col(pinfo->cinfo, COL_INFO))
8953 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
8961 /* process lustre opcode :
8962 check if opcode is in range_opcode, and call the corresponding opcode process function */
8964 lustre_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8966 /* No more buffers to process */
8967 if (LUSTRE_BUFCOUNT == 1)
8970 if (opc <= OST_LAST_OPC) /* OST opcodes */
8971 offset=lustre_ost_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8973 if ( (opc >= MDS_FIRST_OPC) && (opc < MDS_LAST_OPC )) /* MDS opcodes */
8974 offset=lustre_mds_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8976 if ( (opc >= LDLM_FIRST_OPC) && (opc < LDLM_LAST_OPC) ) /*LDLM Opcodes*/
8977 offset=lustre_ldlm_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8979 if( (opc>= MGS_FIRST_OPC) && (opc <= MGS_LAST_OPC)) /* MGS Opcodes */
8980 offset=lustre_mgs_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8982 if( (opc>= OBD_FIRST_OPC) && (opc<=OBD_LAST_OPC)) /* ODB Opcodes */
8983 offset=lustre_odb_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8985 if( (opc>=LLOG_FIRST_OPC) && (opc<=LLOG_LAST_OPC)) /* LLOG Opcodes */
8986 offset=lustre_llog_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8988 if( (opc >= SEQ_FIRST_OPC) && (opc <= SEQ_LAST_OPC) ) /* SEQ Opcodes */
8989 offset=lustre_seq_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
8991 if( (opc >= FLD_FIRST_OPC) && (opc <= FLD_LAST_OPC) ) /* FLD Opcodes */
8992 offset=lustre_fld_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
8997 /* ----------------------------------------------- */
8998 /* add an extra padding to be aligned to 8bytes */
9000 add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
9002 guint32 padding_len;
9004 padding_len = (8- offset%8)%8;
9006 proto_tree_add_item(tree, hf_lustre_extra_padding , tvb, offset, padding_len, TRUE);
9007 offset+=padding_len;
9011 /* ----------------------------------------------- */
9014 ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
9015 proto_tree * tree _U_, guint64 intent_opc _U_)
9017 /* all corresponding code is in mdc_locks.c in function mdc_enqueue() */
9018 /* if 0x0003 we have CREAT + OPEN
9020 if (intent_opc & IT_OPEN) {
9021 /* mdc_intent_open_pack(), d'où [opcode][mdc_rec_create][capa1][capa2][name][eada] */
9022 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree,
9023 hf_lustre_mdt_rec_create);
9024 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
9025 hf_lustre_reint_name,
9026 LUSTRE_DLM_INTENT_REC_OFF+3);
9027 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
9028 hf_lustre_mds_xattr_eadata,
9029 LUSTRE_DLM_INTENT_REC_OFF+4);
9032 if (intent_opc & IT_UNLINK){
9033 /* mdc_intent_unlink_pack(), d'où [opcode][mdt_rec_unlink][capa][name] */
9034 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree,
9035 hf_lustre_mdt_rec_unlink);
9036 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9037 LUSTRE_DLM_INTENT_REC_OFF+1);
9038 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree,
9039 hf_lustre_reint_name,
9040 LUSTRE_DLM_INTENT_REC_OFF+2);
9042 if (intent_opc & IT_GETATTR){
9043 /* mdc_intent_lookup_pack, d'où [mdt_body][capa][name] */
9044 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
9045 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9046 LUSTRE_DLM_INTENT_REC_OFF+1);
9047 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name,
9048 LUSTRE_DLM_INTENT_REC_OFF+2);
9051 if (intent_opc & IT_LOOKUP){
9052 /* mdc_intent_lookup_pack, d'où [mdt_body][capa][name] */
9053 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body);
9054 offset=lustre_dissect_struct_capa(tvb, offset, pinfo, tree, hf_lustre_capa,
9055 LUSTRE_DLM_INTENT_REC_OFF+1);
9056 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name,
9057 LUSTRE_DLM_INTENT_REC_OFF+2);
9064 /* ----------------------------------------------- */
9065 /* function to test if the packet is entirely dissected add BUG in PROTOCOL COL when it's not*/
9067 sanity_check(tvbuff_t *tvb, packet_info *pinfo, guint32 val_offset _U_)
9069 guint32 somme_buflen = 0 ;
9072 /* magic_number = tvb_get_letohl(tvb, 8); */
9074 for (i=0;i<LUSTRE_BUFCOUNT;i++)
9075 somme_buflen += tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF +
9076 4 * i ) + (8- tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4 * i)%8)%8; /* we add the
9084 if(val_offset!=somme_buflen){
9085 /*g_print("somme_buflen=%d, val_offset = %d \n",somme_buflen,val_offset);*/
9086 if (check_col(pinfo->cinfo, COL_INFO)) {
9087 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9094 /* IDL: struct lustre_msg_v1 { */
9095 /* IDL: struct lustre_handle { */
9096 /* IDL: } lm_handle; */
9097 /* IDL: uint32 lm_magic; */
9098 /* IDL: uint32 lm_type; */
9099 /* IDL: uint32 lm_version; */
9100 /* IDL: uint32 lm_opc; */
9101 /* IDL: uint64 lm_last_xid; */
9102 /* IDL: uint64 lm_last_committed; */
9103 /* IDL: uint64 lm_transno; */
9104 /* IDL: uint32 lm_status; */
9105 /* IDL: uint32 lm_flags; */
9106 /* IDL: uint32 lm_conn_cnt; */
9107 /* IDL: uint32 lm_bufcount; */
9108 /* IDL: uint32 lm_buflens[0]; */
9113 lustre_dissect_element_msg_v1_lm_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9115 /*TODO : replace with a v1 handle*/
9116 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_lustre_msg_v1_lm_handle);
9121 lustre_dissect_element_msg_v1_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9123 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_magic);
9129 lustre_dissect_element_msg_v1_lm_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9131 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_type);
9137 lustre_dissect_element_msg_v1_lm_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9139 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_version);
9145 lustre_dissect_element_msg_v1_lm_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9147 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_opc);
9153 lustre_dissect_element_msg_v1_lm_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9155 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_xid);
9161 lustre_dissect_element_msg_v1_lm_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9163 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_committed);
9169 lustre_dissect_element_msg_v1_lm_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9171 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_transno);
9177 lustre_dissect_element_msg_v1_lm_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9179 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_status);
9185 lustre_dissect_element_msg_v1_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9187 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_flags);
9193 lustre_dissect_element_msg_v1_lm_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9195 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_conn_cnt);
9201 lustre_dissect_element_msg_v1_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9203 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_bufcount);
9209 lustre_dissect_element_msg_v1_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9211 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_buflens);
9217 lustre_dissect_element_msg_v1_lm_buflens(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9220 gboolean extra_padding ;
9223 bufcount=tvb_get_letohl(tvb, offset-4); /* TODO : replace with a macro */
9225 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
9230 for (i=0;i<bufcount;i++) {
9231 offset=lustre_dissect_element_msg_v1_lm_buflens_(tvb, offset, pinfo, tree);
9235 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
9244 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_)
9246 proto_item *item = NULL;
9247 proto_tree *tree = NULL;
9249 guint32 opc ; /* opcode */
9250 guint32 pb_type; /* type : {request, reply, error} */
9256 // if (parent_tree) {
9257 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9258 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v1);
9261 offset=lustre_dissect_element_msg_v1_lm_handle(tvb, offset, pinfo, tree);
9263 offset=lustre_dissect_element_msg_v1_lm_magic(tvb, offset, pinfo, tree);
9265 pb_type = tvb_get_letohl(tvb, offset);
9266 offset=lustre_dissect_element_msg_v1_lm_type(tvb, offset, pinfo, tree);
9268 offset=lustre_dissect_element_msg_v1_lm_version(tvb, offset, pinfo, tree);
9269 opc = tvb_get_letohl(tvb, offset);
9270 offset=lustre_dissect_element_msg_v1_lm_opc(tvb, offset, pinfo, tree);
9272 offset=lustre_dissect_element_msg_v1_lm_last_xid(tvb, offset, pinfo, tree);
9274 offset=lustre_dissect_element_msg_v1_lm_last_committed(tvb, offset, pinfo, tree);
9276 offset=lustre_dissect_element_msg_v1_lm_transno(tvb, offset, pinfo, tree);
9278 offset=lustre_dissect_element_msg_v1_lm_status(tvb, offset, pinfo, tree);
9280 offset=lustre_dissect_element_msg_v1_lm_flags(tvb, offset, pinfo, tree);
9282 offset=lustre_dissect_element_msg_v1_lm_conn_cnt(tvb, offset, pinfo, tree);
9284 offset=lustre_dissect_element_msg_v1_lm_bufcount(tvb, offset, pinfo, tree);
9286 offset=lustre_dissect_element_msg_v1_lm_buflens(tvb, offset, pinfo, tree);
9289 proto_item_set_len(item, offset-old_offset);
9291 /* display some nice infos */
9292 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
9293 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
9295 offset=lustre_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
9300 /* IDL: struct ptlrpc_body { */
9301 /* IDL: struct lustre_handle { */
9302 /* IDL: } pb_handle; */
9303 /* IDL: uint32 pb_type; */
9304 /* IDL: uint32 pb_version; */
9305 /* IDL: uint32 pb_opc; */
9306 /* IDL: uint32 pb_status; */
9307 /* IDL: uint64 pb_last_xid; */
9308 /* IDL: uint64 pb_last_seen; */
9309 /* IDL: uint64 pb_last_committed; */
9310 /* IDL: uint64 pb_transno; */
9311 /* IDL: uint32 pb_flags; */
9312 /* IDL: uint32 pb_op_flags; */
9313 /* IDL: uint32 pb_conn_cnt; */
9314 /* IDL: uint32 pb_timeout; */
9315 /* IDL: uint32 pb_service_time; */
9316 /* IDL: uint32 pb_limit; */
9317 /* IDL: uint64 pb_slv; */
9321 lustre_dissect_element_ptlrpc_body_pb_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9323 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ptlrpc_body_pb_handle);
9329 lustre_dissect_element_ptlrpc_body_pb_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9331 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_type);
9337 lustre_dissect_element_ptlrpc_body_pb_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9339 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_version);
9345 lustre_dissect_element_ptlrpc_body_pb_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9347 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_opc);
9353 lustre_dissect_element_ptlrpc_body_pb_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9355 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_status);
9361 lustre_dissect_element_ptlrpc_body_pb_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9363 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_xid);
9369 lustre_dissect_element_ptlrpc_body_pb_last_seen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9371 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_seen);
9377 lustre_dissect_element_ptlrpc_body_pb_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9379 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_committed);
9385 lustre_dissect_element_ptlrpc_body_pb_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9387 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_transno);
9393 lustre_dissect_element_ptlrpc_body_pb_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9395 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_flags);
9401 lustre_dissect_element_ptlrpc_body_pb_op_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9403 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_op_flags);
9409 lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9411 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_conn_cnt);
9417 lustre_dissect_element_ptlrpc_body_pb_timeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9419 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_timeout);
9425 lustre_dissect_element_ptlrpc_body_pb_service_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9427 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_service_time);
9433 lustre_dissect_element_ptlrpc_body_pb_limit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9435 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_limit);
9441 lustre_dissect_element_ptlrpc_body_pb_slv(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9443 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_slv);
9449 lustre_dissect_element_ptlrpc_body_pb_pre_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9451 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_pre_version);
9457 lustre_dissect_element_ptlrpc_body_pb_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9459 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_padding);
9465 lustre_dissect_element_ptlrpc_body_pb_jobid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_)
9468 /* the lenght of the string is 32 bytes max, with \0 inside */
9469 proto_tree_add_item(parent_tree, hf_lustre_ptlrpc_body_pb_jobid, tvb, offset, 32, TRUE);
9477 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_ )
9479 proto_item *item = NULL;
9480 proto_tree *tree = NULL;
9482 guint32 opc, pb_type, pb_version;
9487 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9488 tree = proto_item_add_subtree(item, ett_lustre_ptlrpc_body);
9491 offset=lustre_dissect_element_ptlrpc_body_pb_handle(tvb, offset, pinfo, tree);
9493 pb_type = tvb_get_letohl(tvb, offset);
9494 //g_print("msg_v2_lm_type_offset = %d \n" , offset) ;
9496 offset=lustre_dissect_element_ptlrpc_body_pb_type(tvb, offset, pinfo, tree);
9498 pb_version = tvb_get_letohl(tvb, offset) & ~LUSTRE_VERSION_MASK;
9499 //g_print("msg_v2_version_offset %d : version == %d \n", offset, pb_version);
9500 offset=lustre_dissect_element_ptlrpc_body_pb_version(tvb, offset, pinfo, tree);
9502 // g_print("msg_v2_opcode_offset %d \n", offset);
9503 opc = tvb_get_letohl(tvb, offset);
9504 offset=lustre_dissect_element_ptlrpc_body_pb_opc(tvb, offset, pinfo, tree);
9506 offset=lustre_dissect_element_ptlrpc_body_pb_status(tvb, offset, pinfo, tree);
9508 offset=lustre_dissect_element_ptlrpc_body_pb_last_xid(tvb, offset, pinfo, tree);
9510 offset=lustre_dissect_element_ptlrpc_body_pb_last_seen(tvb, offset, pinfo, tree);
9512 offset=lustre_dissect_element_ptlrpc_body_pb_last_committed(tvb, offset, pinfo, tree);
9514 offset=lustre_dissect_element_ptlrpc_body_pb_transno(tvb, offset, pinfo, tree);
9516 offset=lustre_dissect_element_ptlrpc_body_pb_flags(tvb, offset, pinfo, tree);
9518 offset=lustre_dissect_element_ptlrpc_body_pb_op_flags(tvb, offset, pinfo, tree);
9520 offset=lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvb, offset, pinfo, tree);
9522 offset=lustre_dissect_element_ptlrpc_body_pb_timeout(tvb, offset, pinfo, tree);
9524 offset=lustre_dissect_element_ptlrpc_body_pb_service_time(tvb, offset, pinfo, tree);
9526 offset=lustre_dissect_element_ptlrpc_body_pb_limit(tvb, offset, pinfo, tree);
9528 offset=lustre_dissect_element_ptlrpc_body_pb_slv(tvb, offset, pinfo, tree);
9530 /* pb_pre_versions */
9531 for(i = 0; i < 4; ++i) {
9532 offset=lustre_dissect_element_ptlrpc_body_pb_pre_version(tvb, offset, pinfo, tree);
9535 for(i = 0; i < 4; ++i) {
9536 offset=lustre_dissect_element_ptlrpc_body_pb_padding(tvb, offset, pinfo, tree);
9539 if (pb_version == LUSTRE_PTLRPC_MSG_VERSION && offset-old_offset < buf_len) {
9540 offset=lustre_dissect_element_ptlrpc_body_pb_jobid(tvb, offset, pinfo, tree);
9543 if (offset-old_offset != buf_len) {
9544 g_print("ptlbody offset-old:%d buf_len:%d\n",
9545 offset-old_offset, buf_len);
9546 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
9549 proto_item_set_len(item, offset-old_offset);
9551 /* display some nice infos */
9552 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
9553 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
9555 /* on utilise parent_tree pour bien distinguer les différents buffers (relatifs à bufcount + buflen), il s'agit d'un choix de présentation */
9556 offset=lustre_opcode_process(tvb, offset, pinfo, parent_tree, opc, pb_type);
9558 sanity_check(tvb,pinfo,offset-old_offset);
9564 /* IDL: struct lustre_msg_v2 { */
9565 /* IDL: uint32 lm_bufcount; */
9566 /* IDL: uint32 lm_secflvr; */
9567 /* IDL: uint32 lm_magic; */
9568 /* IDL: uint32 lm_repsize; */
9569 /* IDL: uint32 lm_cksum; */
9570 /* IDL: uint32 lm_flags; */
9571 /* IDL: uint32 lm_padding_2; */
9572 /* IDL: uint32 lm_padding_3; */
9573 /* IDL: uint32 lm_buflens[0]; */
9577 lustre_dissect_element_msg_v2_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9579 proto_tree_add_item(tree, hf_lustre_lustre_msg_v2_lm_bufcount, tvb, offset, 4, TRUE);
9585 lustre_dissect_element_msg_v2_lm_secflvr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9587 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_secflvr);
9593 lustre_dissect_element_msg_v2_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9595 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_magic);
9601 lustre_dissect_element_msg_v2_lm_repsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9603 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_repsize);
9609 lustre_dissect_element_msg_v2_lm_cksum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9611 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_cksum);
9617 lustre_dissect_element_msg_v2_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9619 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_flags);
9625 lustre_dissect_element_msg_v2_lm_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9627 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_2);
9633 lustre_dissect_element_msg_v2_lm_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9635 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_3);
9643 lustre_dissect_element_msg_v2_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9645 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_buflens);
9651 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_)
9653 proto_item *item = NULL;
9654 proto_tree *tree = NULL;
9658 guint32 buf_len_offset;
9659 guint32 current_buf_len ;
9660 gboolean extra_padding ;
9664 /* to get a light display */
9666 // if (parent_tree) {
9667 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9668 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v2);
9671 bufcount = tvb_get_letohl(tvb,offset);
9672 offset=lustre_dissect_element_msg_v2_lm_bufcount(tvb, offset, pinfo, tree);
9674 offset=lustre_dissect_element_msg_v2_lm_secflvr(tvb, offset, pinfo, tree);
9676 offset=lustre_dissect_element_msg_v2_lm_magic(tvb, offset, pinfo, tree);
9678 offset=lustre_dissect_element_msg_v2_lm_repsize(tvb, offset, pinfo, tree);
9680 offset=lustre_dissect_element_msg_v2_lm_cksum(tvb, offset, pinfo, tree);
9682 offset=lustre_dissect_element_msg_v2_lm_flags(tvb, offset, pinfo, tree);
9684 offset=lustre_dissect_element_msg_v2_lm_padding_2(tvb, offset, pinfo, tree);
9686 offset=lustre_dissect_element_msg_v2_lm_padding_3(tvb, offset, pinfo, tree);
9690 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
9695 buf_len_offset=offset ;
9696 for (i=0;i<bufcount;i++) {
9697 offset=lustre_dissect_element_msg_v2_lm_buflens_(tvb, offset, pinfo, tree);
9702 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
9705 current_buf_len = tvb_get_letohl(tvb, buf_len_offset);
9706 offset=lustre_dissect_struct_ptlrpc_body(tvb,offset, pinfo, tree, hf_lustre_ptlrpc_body_pb, current_buf_len);
9708 proto_item_set_len(item, offset-old_offset);
9715 dissect_lustre(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
9717 if (check_col(pinfo->cinfo, COL_PROTOCOL))
9718 col_set_str(pinfo->cinfo, COL_PROTOCOL, "Lustre");
9721 if (check_col(pinfo->cinfo, COL_INFO))
9722 col_set_str(pinfo->cinfo, COL_INFO, "");
9723 /* guint32 magic_number ; */
9724 /* magic_number = tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET); */
9725 /* switch (magic_number)*/
9727 /* case LUSTRE_MSG_MAGIC_V1:*/
9728 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V1 ");*/
9730 /* case LUSTRE_MSG_MAGIC_V2:*/
9731 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V2 ");*/
9739 guint32 magic_number ;
9741 proto_item *ti = NULL ;
9742 proto_tree * lustre_tree = NULL ;
9744 ti = proto_tree_add_item(tree,proto_lustre,tvb,0,-1,FALSE);
9745 lustre_tree = proto_item_add_subtree(ti,ett_lustre);
9747 magic_number = tvb_get_letohl(tvb, 8);
9749 switch (magic_number){
9750 case LUSTRE_MSG_MAGIC_V1:
9751 /* put some nice info*/
9752 proto_item_append_text(lustre_tree, " V1 ");
9753 offset=lustre_dissect_struct_msg_v1(tvb, offset, pinfo, lustre_tree, proto_lustre ) ;
9755 case LUSTRE_MSG_MAGIC_V2:
9756 /* put some nice info*/
9757 proto_item_append_text(lustre_tree, " V2 ");
9758 offset=lustre_dissect_struct_msg_v2(tvb, offset, pinfo, lustre_tree, proto_lustre ) ;
9766 void proto_register_dcerpc_lustre(void)
9768 static hf_register_info hf[] = {
9769 { &hf_lustre_mdt_body,
9770 { "mdt body", "lustre.mdt_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9771 { &hf_lustre_mdt_body_fid1,
9772 { "Fid1", "lustre.mdt_body.fid1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9773 { &hf_lustre_mdt_body_fid2,
9774 { "Fid2", "lustre.mdt_body.fid2", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9775 { &hf_lustre_mdt_body_handle,
9776 { "Handle", "lustre.mdt_body.handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9777 { &hf_lustre_mdt_body_valid,
9778 { "Valid", "lustre.mdt_body.valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9779 { &hf_lustre_mdt_body_size,
9780 { "Size", "lustre.mdt_body.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9781 { &hf_lustre_mdt_body_mtime,
9782 { "Mtime", "lustre.mdt_body.mtime",FT_ABSOLUTE_TIME,
9783 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9784 { &hf_lustre_mdt_body_atime,
9785 { "Atime", "lustre.mdt_body.atime",FT_ABSOLUTE_TIME,
9786 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9787 { &hf_lustre_mdt_body_ctime,
9788 { "Ctime", "lustre.mdt_body.ctime",FT_ABSOLUTE_TIME,
9789 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9790 { &hf_lustre_mdt_body_blocks,
9791 { "Blocks", "lustre.mdt_body.blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9792 { &hf_lustre_mdt_body_ioepoch,
9793 { "Ioepoch", "lustre.mdt_body.ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9794 { &hf_lustre_mdt_body_ino,
9795 { "Ino", "lustre.mdt_body.ino", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9796 { &hf_lustre_mdt_body_fsuid,
9797 { "Fsuid", "lustre.mdt_body.fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9798 { &hf_lustre_mdt_body_fsgid,
9799 { "Fsgid", "lustre.mdt_body.fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9800 { &hf_lustre_mdt_body_capability,
9801 { "Capability", "lustre.mdt_body.capability", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9802 { &hf_lustre_mdt_body_mode,
9803 { "Mode", "lustre.mdt_body.mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9804 { &hf_lustre_mdt_body_uid,
9805 { "Uid", "lustre.mdt_body.uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9806 { &hf_lustre_mdt_body_gid,
9807 { "Gid", "lustre.mdt_body.gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9808 { &hf_lustre_mdt_body_flags,
9809 { "Flags", "lustre.mdt_body.flags", FT_UINT32, BASE_HEX, VALS(lustre_mds_flags_vals) , 0, "", HFILL }},
9810 { &hf_lustre_mdt_body_rdev,
9811 { "Rdev", "lustre.mdt_body.rdev", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9812 { &hf_lustre_mdt_body_nlink,
9813 { "Nlink", "lustre.mdt_body.nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9814 { &hf_lustre_mdt_body_generation,
9815 { "Generation", "lustre.mdt_body.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9816 { &hf_lustre_mdt_body_suppgid,
9817 { "Suppgid", "lustre.mdt_body.suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9818 { &hf_lustre_mdt_body_eadatasize,
9819 { "Eadatasize", "lustre.mdt_body.eadatasize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9820 { &hf_lustre_mdt_body_aclsize,
9821 { "Aclsize", "lustre.mdt_body.aclsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9822 { &hf_lustre_mdt_body_max_mdsize,
9823 { "Max Mdsize", "lustre.mdt_body.max_mdsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9824 { &hf_lustre_mdt_body_max_cookiesize,
9825 { "Max Cookiesize", "lustre.mdt_body.max_cookiesize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9826 { &hf_lustre_mdt_body_uid_h,
9827 { "Uid H", "lustre.mdt_body.uid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9828 { &hf_lustre_mdt_body_gid_h,
9829 { "Gid H", "lustre.mdt_body.gid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9830 { &hf_lustre_mdt_body_padding_5,
9831 { "Padding 5", "lustre.mdt_body.padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9832 { &hf_lustre_mdt_body_padding_6,
9833 { "Padding 6", "lustre.mdt_body.padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9834 { &hf_lustre_mdt_body_padding_7,
9835 { "Padding 7", "lustre.mdt_body.padding_7", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9836 { &hf_lustre_mdt_body_padding_8,
9837 { "Padding 8", "lustre.mdt_body.padding_8", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9838 { &hf_lustre_mdt_body_padding_9,
9839 { "Padding 9", "lustre.mdt_body.padding_9", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9840 { &hf_lustre_mdt_body_padding_10,
9841 { "Padding 10", "lustre.mdt_body.padding_10", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9843 { &hf_lustre_mdt_rec_setattr,
9844 { "mdt rec setattr", "lustre.mdt_rec_setattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9845 { &hf_lustre_mdt_rec_setattr_sa_opcode,
9846 { "Sa Opcode", "lustre.mdt_rec_setattr.sa_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9847 { &hf_lustre_mdt_rec_setattr_sa_cap,
9848 { "Sa Cap", "lustre.mdt_rec_setattr.sa_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9849 { &hf_lustre_mdt_rec_setattr_sa_fsuid,
9850 { "Sa Fsuid", "lustre.mdt_rec_setattr.sa_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9851 { &hf_lustre_mdt_rec_setattr_sa_fsuid_h,
9852 { "Sa Fsuid H", "lustre.mdt_rec_setattr.sa_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9853 { &hf_lustre_mdt_rec_setattr_sa_fsgid,
9854 { "Sa Fsgid", "lustre.mdt_rec_setattr.sa_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9855 { &hf_lustre_mdt_rec_setattr_sa_fsgid_h,
9856 { "Sa Fsgid H", "lustre.mdt_rec_setattr.sa_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9857 { &hf_lustre_mdt_rec_setattr_sa_suppgid,
9858 { "Sa Suppgid", "lustre.mdt_rec_setattr.sa_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9859 { &hf_lustre_mdt_rec_setattr_sa_suppgid_h,
9860 { "Sa Suppgid H", "lustre.mdt_rec_setattr.sa_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9861 { &hf_lustre_mdt_rec_setattr_sa_padding_1,
9862 { "Sa Padding 1", "lustre.mdt_rec_setattr.sa_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9863 { &hf_lustre_mdt_rec_setattr_sa_padding_1_h,
9864 { "Sa Padding 1 H", "lustre.mdt_rec_setattr.sa_padding_1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9865 { &hf_lustre_mdt_rec_setattr_sa_fid,
9866 { "Sa Fid", "lustre.mdt_rec_setattr.sa_fid", FT_NONE,
9867 BASE_NONE, NULL, 0, "", HFILL } },
9868 { &hf_lustre_mdt_rec_setattr_sa_valid,
9869 { "Sa Valid", "lustre.mdt_rec_setattr.sa_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9870 { &hf_lustre_mdt_rec_setattr_sa_uid,
9871 { "Sa Uid", "lustre.mdt_rec_setattr.sa_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9872 { &hf_lustre_mdt_rec_setattr_sa_gid,
9873 { "Sa Gid", "lustre.mdt_rec_setattr.sa_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9874 { &hf_lustre_mdt_rec_setattr_sa_size,
9875 { "Sa Size", "lustre.mdt_rec_setattr.sa_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9876 { &hf_lustre_mdt_rec_setattr_sa_blocks,
9877 { "Sa Blocks", "lustre.mdt_rec_setattr.sa_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9878 { &hf_lustre_mdt_rec_setattr_sa_mtime,
9879 { "Sa Mtime", "lustre.mdt_rec_setattr.sa_mtime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9880 { &hf_lustre_mdt_rec_setattr_sa_atime,
9881 { "Sa Atime", "lustre.mdt_rec_setattr.sa_atime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9882 { &hf_lustre_mdt_rec_setattr_sa_ctime,
9883 { "Sa Ctime", "lustre.mdt_rec_setattr.sa_ctime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9884 { &hf_lustre_mdt_rec_setattr_sa_attr_flags,
9885 { "Sa Attr Flags", "lustre.mdt_rec_setattr.sa_attr_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9886 { &hf_lustre_mdt_rec_setattr_sa_mode,
9887 { "Sa Mode", "lustre.mdt_rec_setattr.sa_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9888 { &hf_lustre_mdt_rec_setattr_sa_padding_2,
9889 { "Sa Padding 2", "lustre.mdt_rec_setattr.sa_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9890 { &hf_lustre_mdt_rec_setattr_sa_padding_3,
9891 { "Sa Padding 3", "lustre.mdt_rec_setattr.sa_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9892 { &hf_lustre_mdt_rec_setattr_sa_padding_4,
9893 { "Sa Padding 4", "lustre.mdt_rec_setattr.sa_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9894 { &hf_lustre_mdt_rec_setattr_sa_padding_5,
9895 { "Sa Padding 5", "lustre.mdt_rec_setattr.sa_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9897 { &hf_lustre_mdt_rec_create,
9898 { "mdt rec create", "lustre.mdt_rec_create", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9899 { &hf_lustre_mdt_rec_create_cr_opcode,
9900 { "Cr Opcode", "lustre.mdt_rec_create.cr_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9901 { &hf_lustre_mdt_rec_create_cr_cap,
9902 { "Cr Cap", "lustre.mdt_rec_create.cr_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9903 { &hf_lustre_mdt_rec_create_cr_fsuid,
9904 { "Cr Fsuid", "lustre.mdt_rec_create.cr_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9905 { &hf_lustre_mdt_rec_create_cr_fsuid_h,
9906 { "Cr Fsuid H", "lustre.mdt_rec_create.cr_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9907 { &hf_lustre_mdt_rec_create_cr_fsgid,
9908 { "Cr Fsgid", "lustre.mdt_rec_create.cr_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9909 { &hf_lustre_mdt_rec_create_cr_fsgid_h,
9910 { "Cr Fsgid H", "lustre.mdt_rec_create.cr_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9911 { &hf_lustre_mdt_rec_create_cr_suppgid1,
9912 { "Cr Suppgid1", "lustre.mdt_rec_create.cr_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9913 { &hf_lustre_mdt_rec_create_cr_suppgid1_h,
9914 { "Cr Suppgid1 H", "lustre.mdt_rec_create.cr_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9915 { &hf_lustre_mdt_rec_create_cr_suppgid2,
9916 { "Cr Suppgid2", "lustre.mdt_rec_create.cr_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9917 { &hf_lustre_mdt_rec_create_cr_suppgid2_h,
9918 { "Cr Suppgid2 H", "lustre.mdt_rec_create.cr_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9919 { &hf_lustre_mdt_rec_create_cr_fid1,
9920 { "Cr Fid1", "lustre.mdt_rec_create.cr_fid1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9921 { &hf_lustre_mdt_rec_create_cr_fid2,
9922 { "Cr Fid2", "lustre.mdt_rec_create.cr_fid2", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9923 { &hf_lustre_mdt_rec_create_cr_old_handle,
9924 { "Cr Old Handle", "lustre.mdt_rec_create.cr_old_handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
9925 { &hf_lustre_mdt_rec_create_cr_time,
9926 { "Cr Time", "lustre.mdt_rec_create.cr_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9927 { &hf_lustre_mdt_rec_create_cr_rdev,
9928 { "Cr Rdev", "lustre.mdt_rec_create.cr_rdev", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9929 { &hf_lustre_mdt_rec_create_cr_ioepoch,
9930 { "Cr Ioepoch", "lustre.mdt_rec_create.cr_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9931 { &hf_lustre_mdt_rec_create_cr_padding_1,
9932 { "Cr Padding 1", "lustre.mdt_rec_create.cr_padding_1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9933 { &hf_lustre_mdt_rec_create_cr_mode,
9934 { "Cr Mode", "lustre.mdt_rec_create.cr_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9935 { &hf_lustre_mdt_rec_create_cr_bias,
9936 { "Cr Bias", "lustre.mdt_rec_create.cr_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9937 { &hf_lustre_mdt_rec_create_cr_flags_l,
9938 { "Cr Flags L", "lustre.mdt_rec_create.cr_flags_l", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9939 { &hf_lustre_mdt_rec_create_cr_flags_h,
9940 { "Cr Flags H", "lustre.mdt_rec_create.cr_flags_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9941 { &hf_lustre_mdt_rec_create_cr_umask,
9942 { "Cr Umask", "lustre.mdt_rec_create.cr_umask", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
9943 { &hf_lustre_mdt_rec_create_cr_padding_4,
9944 { "Cr Padding 4", "lustre.mdt_rec_create.cr_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9946 { &hf_lustre_mdt_rec_link,
9947 { "mdt rec link", "lustre.mdt_rec_link", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9948 { &hf_lustre_mdt_rec_link_lk_opcode,
9949 { "Lk Opcode", "lustre.mdt_rec_link.lk_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9950 { &hf_lustre_mdt_rec_link_lk_cap,
9951 { "Lk Cap", "lustre.mdt_rec_link.lk_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9952 { &hf_lustre_mdt_rec_link_lk_fsuid,
9953 { "Lk Fsuid", "lustre.mdt_rec_link.lk_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9954 { &hf_lustre_mdt_rec_link_lk_fsuid_h,
9955 { "Lk Fsuid H", "lustre.mdt_rec_link.lk_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9956 { &hf_lustre_mdt_rec_link_lk_fsgid,
9957 { "Lk Fsgid", "lustre.mdt_rec_link.lk_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9958 { &hf_lustre_mdt_rec_link_lk_fsgid_h,
9959 { "Lk Fsgid H", "lustre.mdt_rec_link.lk_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9960 { &hf_lustre_mdt_rec_link_lk_suppgid1,
9961 { "Lk Suppgid1", "lustre.mdt_rec_link.lk_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9962 { &hf_lustre_mdt_rec_link_lk_suppgid1_h,
9963 { "Lk Suppgid1 H", "lustre.mdt_rec_link.lk_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9964 { &hf_lustre_mdt_rec_link_lk_suppgid2,
9965 { "Lk Suppgid2", "lustre.mdt_rec_link.lk_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9966 { &hf_lustre_mdt_rec_link_lk_suppgid2_h,
9967 { "Lk Suppgid2 H", "lustre.mdt_rec_link.lk_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9968 { &hf_lustre_mdt_rec_link_lk_fid1,
9969 { "Lk Fid1", "lustre.mdt_rec_link.lk_fid1", FT_NONE,
9970 BASE_NONE, NULL, 0, "", HFILL } },
9971 { &hf_lustre_mdt_rec_link_lk_fid2,
9972 { "Lk Fid2", "lustre.mdt_rec_link.lk_fid2", FT_NONE,
9973 BASE_NONE, NULL, 0, "", HFILL } },
9974 { &hf_lustre_mdt_rec_link_lk_time,
9975 { "Lk Time", "lustre.mdt_rec_link.lk_time",FT_ABSOLUTE_TIME,
9976 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
9977 { &hf_lustre_mdt_rec_link_lk_padding_1,
9978 { "Lk Padding 1", "lustre.mdt_rec_link.lk_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9979 { &hf_lustre_mdt_rec_link_lk_padding_2,
9980 { "Lk Padding 2", "lustre.mdt_rec_link.lk_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9981 { &hf_lustre_mdt_rec_link_lk_padding_3,
9982 { "Lk Padding 3", "lustre.mdt_rec_link.lk_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9983 { &hf_lustre_mdt_rec_link_lk_padding_4,
9984 { "Lk Padding 4", "lustre.mdt_rec_link.lk_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9985 { &hf_lustre_mdt_rec_link_lk_bias,
9986 { "Lk Bias", "lustre.mdt_rec_link.lk_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9987 { &hf_lustre_mdt_rec_link_lk_padding_5,
9988 { "Lk Padding 5", "lustre.mdt_rec_link.lk_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9989 { &hf_lustre_mdt_rec_link_lk_padding_6,
9990 { "Lk Padding 6", "lustre.mdt_rec_link.lk_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9991 { &hf_lustre_mdt_rec_link_lk_padding_7,
9992 { "Lk Padding 7", "lustre.mdt_rec_link.lk_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9993 { &hf_lustre_mdt_rec_link_lk_padding_8,
9994 { "Lk Padding 8", "lustre.mdt_rec_link.lk_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9995 { &hf_lustre_mdt_rec_link_lk_padding_9,
9996 { "Lk Padding 9", "lustre.mdt_rec_link.lk_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9998 { &hf_lustre_mdt_rec_unlink,
9999 { "mdt rec unlink", "lustre.mdt_rec_unlink", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10000 { &hf_lustre_mdt_rec_unlink_ul_opcode,
10001 { "Ul Opcode", "lustre.mdt_rec_unlink.ul_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
10002 { &hf_lustre_mdt_rec_unlink_ul_cap,
10003 { "Ul Cap", "lustre.mdt_rec_unlink.ul_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10004 { &hf_lustre_mdt_rec_unlink_ul_fsuid,
10005 { "Ul Fsuid", "lustre.mdt_rec_unlink.ul_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10006 { &hf_lustre_mdt_rec_unlink_ul_fsuid_h,
10007 { "Ul Fsuid H", "lustre.mdt_rec_unlink.ul_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10008 { &hf_lustre_mdt_rec_unlink_ul_fsgid,
10009 { "Ul Fsgid", "lustre.mdt_rec_unlink.ul_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10010 { &hf_lustre_mdt_rec_unlink_ul_fsgid_h,
10011 { "Ul Fsgid H", "lustre.mdt_rec_unlink.ul_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10012 { &hf_lustre_mdt_rec_unlink_ul_suppgid1,
10013 { "Ul Suppgid1", "lustre.mdt_rec_unlink.ul_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10014 { &hf_lustre_mdt_rec_unlink_ul_suppgid1_h,
10015 { "Ul Suppgid1 H", "lustre.mdt_rec_unlink.ul_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10016 { &hf_lustre_mdt_rec_unlink_ul_suppgid2,
10017 { "Ul Suppgid2", "lustre.mdt_rec_unlink.ul_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10018 { &hf_lustre_mdt_rec_unlink_ul_suppgid2_h,
10019 { "Ul Suppgid2 H", "lustre.mdt_rec_unlink.ul_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10020 { &hf_lustre_mdt_rec_unlink_ul_fid1,
10021 { "Ul Fid1", "lustre.mdt_rec_unlink.ul_fid1", FT_NONE,
10022 BASE_NONE, NULL, 0, "", HFILL } },
10023 { &hf_lustre_mdt_rec_unlink_ul_fid2,
10024 { "Ul Fid2", "lustre.mdt_rec_unlink.ul_fid2", FT_NONE,
10025 BASE_NONE, NULL, 0, "", HFILL } },
10026 { &hf_lustre_mdt_rec_unlink_ul_time,
10027 { "Ul Time", "lustre.mdt_rec_unlink.ul_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10028 { &hf_lustre_mdt_rec_unlink_ul_padding_2,
10029 { "Ul Padding 2", "lustre.mdt_rec_unlink.ul_padding_2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10030 { &hf_lustre_mdt_rec_unlink_ul_padding_3,
10031 { "Ul Padding 3", "lustre.mdt_rec_unlink.ul_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10032 { &hf_lustre_mdt_rec_unlink_ul_padding_4,
10033 { "Ul Padding 4", "lustre.mdt_rec_unlink.ul_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10034 { &hf_lustre_mdt_rec_unlink_ul_padding_5,
10035 { "Ul Padding 5", "lustre.mdt_rec_unlink.ul_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10036 { &hf_lustre_mdt_rec_unlink_ul_bias,
10037 { "Ul Bias", "lustre.mdt_rec_unlink.ul_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10038 { &hf_lustre_mdt_rec_unlink_ul_mode,
10039 { "Ul Mode", "lustre.mdt_rec_unlink.ul_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10040 { &hf_lustre_mdt_rec_unlink_ul_padding_6,
10041 { "Ul Padding 6", "lustre.mdt_rec_unlink.ul_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10042 { &hf_lustre_mdt_rec_unlink_ul_padding_7,
10043 { "Ul Padding 7", "lustre.mdt_rec_unlink.ul_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10044 { &hf_lustre_mdt_rec_unlink_ul_padding_8,
10045 { "Ul Padding 8", "lustre.mdt_rec_unlink.ul_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10046 { &hf_lustre_mdt_rec_unlink_ul_padding_9,
10047 { "Ul Padding 9", "lustre.mdt_rec_unlink.ul_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10049 { &hf_lustre_mdt_rec_rename,
10050 { "mdt rec rename", "lustre.mdt_rec_rename", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10051 { &hf_lustre_mdt_rec_rename_rn_opcode,
10052 { "Rn Opcode", "lustre.mdt_rec_rename.rn_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
10053 { &hf_lustre_mdt_rec_rename_rn_cap,
10054 { "Rn Cap", "lustre.mdt_rec_rename.rn_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10055 { &hf_lustre_mdt_rec_rename_rn_fsuid,
10056 { "Rn Fsuid", "lustre.mdt_rec_rename.rn_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10057 { &hf_lustre_mdt_rec_rename_rn_fsuid_h,
10058 { "Rn Fsuid H", "lustre.mdt_rec_rename.rn_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10059 { &hf_lustre_mdt_rec_rename_rn_fsgid,
10060 { "Rn Fsgid", "lustre.mdt_rec_rename.rn_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10061 { &hf_lustre_mdt_rec_rename_rn_fsgid_h,
10062 { "Rn Fsgid H", "lustre.mdt_rec_rename.rn_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10063 { &hf_lustre_mdt_rec_rename_rn_suppgid1,
10064 { "Rn Suppgid1", "lustre.mdt_rec_rename.rn_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10065 { &hf_lustre_mdt_rec_rename_rn_suppgid1_h,
10066 { "Rn Suppgid1 H", "lustre.mdt_rec_rename.rn_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10067 { &hf_lustre_mdt_rec_rename_rn_suppgid2,
10068 { "Rn Suppgid2", "lustre.mdt_rec_rename.rn_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10069 { &hf_lustre_mdt_rec_rename_rn_suppgid2_h,
10070 { "Rn Suppgid2 H", "lustre.mdt_rec_rename.rn_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10071 { &hf_lustre_mdt_rec_rename_rn_fid1,
10072 { "Rn Fid1", "lustre.mdt_rec_rename.rn_fid1", FT_NONE,
10073 BASE_NONE, NULL, 0, "", HFILL } },
10074 { &hf_lustre_mdt_rec_rename_rn_fid2,
10075 { "Rn Fid2", "lustre.mdt_rec_rename.rn_fid2", FT_NONE,
10076 BASE_NONE, NULL, 0, "", HFILL } },
10077 { &hf_lustre_mdt_rec_rename_rn_time,
10078 { "Rn Time", "lustre.mdt_rec_rename.rn_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10079 { &hf_lustre_mdt_rec_rename_rn_padding_1,
10080 { "Rn Padding 1", "lustre.mdt_rec_rename.rn_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10081 { &hf_lustre_mdt_rec_rename_rn_padding_2,
10082 { "Rn Padding 2", "lustre.mdt_rec_rename.rn_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10083 { &hf_lustre_mdt_rec_rename_rn_padding_3,
10084 { "Rn Padding 3", "lustre.mdt_rec_rename.rn_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10085 { &hf_lustre_mdt_rec_rename_rn_padding_4,
10086 { "Rn Padding 4", "lustre.mdt_rec_rename.rn_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10087 { &hf_lustre_mdt_rec_rename_rn_bias,
10088 { "Rn Bias", "lustre.mdt_rec_rename.rn_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10089 { &hf_lustre_mdt_rec_rename_rn_mode,
10090 { "Rn Mode", "lustre.mdt_rec_rename.rn_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10091 { &hf_lustre_mdt_rec_rename_rn_padding_5,
10092 { "Rn Padding 5", "lustre.mdt_rec_rename.rn_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10093 { &hf_lustre_mdt_rec_rename_rn_padding_6,
10094 { "Rn Padding 6", "lustre.mdt_rec_rename.rn_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10095 { &hf_lustre_mdt_rec_rename_rn_padding_7,
10096 { "Rn Padding 7", "lustre.mdt_rec_rename.rn_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10097 { &hf_lustre_mdt_rec_rename_rn_padding_8,
10098 { "Rn Padding 8", "lustre.mdt_rec_rename.rn_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10100 { &hf_lustre_mdt_rec_setxattr,
10101 { "mdt rec setxattr", "lustre.mdt_rec_setxattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10102 { &hf_lustre_mdt_rec_setxattr_sx_opcode,
10103 { "Sx Opcode", "lustre.mdt_rec_setxattr.sx_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
10104 { &hf_lustre_mdt_rec_setxattr_sx_cap,
10105 { "Sx Cap", "lustre.mdt_rec_setxattr.sx_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10106 { &hf_lustre_mdt_rec_setxattr_sx_fsuid,
10107 { "Sx Fsuid", "lustre.mdt_rec_setxattr.sx_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10108 { &hf_lustre_mdt_rec_setxattr_sx_fsuid_h,
10109 { "Sx Fsuid H", "lustre.mdt_rec_setxattr.sx_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10110 { &hf_lustre_mdt_rec_setxattr_sx_fsgid,
10111 { "Sx Fsgid", "lustre.mdt_rec_setxattr.sx_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10112 { &hf_lustre_mdt_rec_setxattr_sx_fsgid_h,
10113 { "Sx Fsgid H", "lustre.mdt_rec_setxattr.sx_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10114 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1,
10115 { "Sx Suppgid1", "lustre.mdt_rec_setxattr.sx_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10116 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1_h,
10117 { "Sx Suppgid1 H", "lustre.mdt_rec_setxattr.sx_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10118 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2,
10119 { "Sx Suppgid2", "lustre.mdt_rec_setxattr.sx_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10120 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2_h,
10121 { "Sx Suppgid2 H", "lustre.mdt_rec_setxattr.sx_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10122 { &hf_lustre_mdt_rec_setxattr_sx_fid,
10123 { "Sx Fid", "lustre.mdt_rec_setxattr.sx_fid", FT_NONE,
10124 BASE_NONE, NULL, 0, "", HFILL } },
10125 { &hf_lustre_mdt_rec_setxattr_sx_padding_1,
10126 { "Sx Padding 1", "lustre.mdt_rec_setxattr.sx_padding_1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10127 { &hf_lustre_mdt_rec_setxattr_sx_padding_2,
10128 { "Sx Padding 2", "lustre.mdt_rec_setxattr.sx_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10129 { &hf_lustre_mdt_rec_setxattr_sx_padding_3,
10130 { "Sx Padding 3", "lustre.mdt_rec_setxattr.sx_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10131 { &hf_lustre_mdt_rec_setxattr_sx_valid,
10132 { "Sx Valid", "lustre.mdt_rec_setxattr.sx_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10133 { &hf_lustre_mdt_rec_setxattr_sx_time,
10134 { "Sx Time", "lustre.mdt_rec_setxattr.sx_time",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10135 { &hf_lustre_mdt_rec_setxattr_sx_padding_5,
10136 { "Sx Padding 5", "lustre.mdt_rec_setxattr.sx_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10137 { &hf_lustre_mdt_rec_setxattr_sx_padding_6,
10138 { "Sx Padding 6", "lustre.mdt_rec_setxattr.sx_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10139 { &hf_lustre_mdt_rec_setxattr_sx_padding_7,
10140 { "Sx Padding 7", "lustre.mdt_rec_setxattr.sx_padding_7", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10141 { &hf_lustre_mdt_rec_setxattr_sx_size,
10142 { "Sx Size", "lustre.mdt_rec_setxattr.sx_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10143 { &hf_lustre_mdt_rec_setxattr_sx_flags,
10144 { "Sx Flags", "lustre.mdt_rec_setxattr.sx_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10145 { &hf_lustre_mdt_rec_setxattr_sx_padding_8,
10146 { "Sx Padding 8", "lustre.mdt_rec_setxattr.sx_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10147 { &hf_lustre_mdt_rec_setxattr_sx_padding_9,
10148 { "Sx Padding 9", "lustre.mdt_rec_setxattr.sx_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10149 { &hf_lustre_mdt_rec_setxattr_sx_padding_10,
10150 { "Sx Padding 10", "lustre.mdt_rec_setxattr.sx_padding_10", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10151 { &hf_lustre_mdt_rec_setxattr_sx_padding_11,
10152 { "Sx Padding 11", "lustre.mdt_rec_setxattr.sx_padding_11", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10154 { &hf_lustre_lustre_handle_cookie,
10155 { "Cookie", "lustre.lustre_handle.cookie", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10156 { &hf_lustre_ptlrpc_body_pb_last_committed,
10157 { "Pb Last Committed", "lustre.ptlrpc_body.pb_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10158 { &hf_lustre_ptlrpc_body_pb_version,
10159 { "Pb Version", "lustre.ptlrpc_body.pb_version", FT_UINT32, BASE_DEC, NULL, ~LUSTRE_VERSION_MASK, "", HFILL }},
10160 { &hf_lustre_lustre_msg_v1_lm_bufcount,
10161 { "Lm Bufcount", "lustre.lustre_msg_v1.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10162 { &hf_lustre_obd_ioobj_ioo_id,
10163 { "Ioo Id", "lustre.obd_ioobj.ioo_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10164 { &hf_lustre_ptlrpc_body_pb_slv,
10165 { "Pb Slv", "lustre.ptlrpc_body.pb_slv", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10167 { &hf_lustre_ptlrpc_body_pb_pre_version,
10168 { "Pb Pre-Version", "lustre.ptlrpc_body.pb_pre_version", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10169 { &hf_lustre_ptlrpc_body_pb_padding,
10170 { "Pb Padding", "lustre.ptlrpc_body.pb_padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10171 { &hf_lustre_ptlrpc_body_pb_jobid,
10172 { "Pb JobId", "lustre.ptlrpc_body.pb_jobid", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10174 { &hf_lustre_lustre_msg_v1_lm_handle,
10175 { "Lm Handle", "lustre.lustre_msg_v1.lm_handle", FT_NONE,
10176 BASE_NONE, NULL, 0, "", HFILL } },
10177 { &hf_lustre_ost_lvb_lvb_atime,
10178 { "Lvb Atime", "lustre.ost_lvb.lvb_atime",FT_ABSOLUTE_TIME,
10179 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10180 { &hf_lustre_ptlrpc_body_pb_timeout,
10181 { "Pb Timeout", "lustre.ptlrpc_body.pb_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10182 { &hf_lustre_obd_statfs_os_bavail,
10183 { "Os Bavail", "lustre.obd_statfs.os_bavail", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10184 { &hf_lustre_obd_statfs_os_bsize,
10185 { "Os Bsize", "lustre.obd_statfs.os_bsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10186 { &hf_lustre_lustre_msg_v2_lm_repsize,
10187 { "Lm Repsize", "lustre.lustre_msg_v2.lm_repsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10188 { &hf_lustre_lov_mds_md_v1_lmm_stripe_size,
10189 { "Lmm Stripe Size", "lustre.lov_mds_md_v1.lmm_stripe_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10190 { &hf_lustre_lustre_msg_v1_lm_last_xid,
10191 { "Lm Last Xid", "lustre.lustre_msg_v1.lm_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10192 { &hf_lustre_ll_fid_f_type,
10193 { "F Type", "lustre.ll_fid.f_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10194 { &hf_lustre_lustre_msg_v2_lm_cksum,
10195 { "Lm Cksum", "lustre.lustre_msg_v2.lm_cksum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10196 { &hf_lustre_lustre_msg_v2_lm_buflens,
10197 { "Lm Buflens", "lustre.lustre_msg_v2.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10198 { &hf_lustre_lustre_msg_v1_lm_status,
10199 { "Lm Status", "lustre.lustre_msg_v1.lm_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10200 { &hf_lustre_lustre_msg_v1_lm_type,
10201 { "Lm Type", "lustre.lustre_msg_v1.lm_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
10202 { &hf_lustre_niobuf_remote_len,
10203 { "Len", "lustre.niobuf_remote.len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10204 { &hf_lustre_lov_mds_md_v1_lmm_magic,
10205 { "Lmm Magic", "lustre.lov_mds_md_v1.lmm_magic", FT_UINT32, BASE_HEX, VALS(lustre_lov_magic) , 0, "", HFILL }},
10206 { &hf_lustre_ptlrpc_body_pb_op_flags,
10207 { "Pb Op Flags", "lustre.ptlrpc_body.pb_op_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10208 { &hf_lustre_ost_lvb_lvb_ctime,
10209 { "Lvb Ctime", "lustre.ost_lvb.lvb_ctime",FT_ABSOLUTE_TIME,
10210 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10211 { &hf_lustre_ptlrpc_body_pb_type,
10212 { "Pb Type", "lustre.ptlrpc_body.pb_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
10213 { &hf_lustre_obd_connect_data_ocd_nllg,
10214 { "Ocd Nllg", "lustre.obd_connect_data.ocd_nllg", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10215 { &hf_lustre_obd_connect_data_ocd_nllu,
10216 { "Ocd Nllu", "lustre.obd_connect_data.ocd_nllu", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10217 { &hf_lustre_ll_fid_generation,
10218 { "Generation", "lustre.ll_fid.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10219 { &hf_lustre_ost_lvb_lvb_mtime,
10220 { "Lvb Mtime", "lustre.ost_lvb.lvb_mtime",FT_ABSOLUTE_TIME,
10221 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10222 { &hf_lustre_obd_connect_data_ocd_ibits_known,
10223 { "Ocd Ibits Known", "lustre.obd_connect_data.ocd_ibits_known", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10224 { &hf_lustre_lustre_msg_v2_lm_padding_3,
10225 { "Lm Padding 3", "lustre.lustre_msg_v2.lm_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10226 { &hf_lustre_ptlrpc_body_pb_flags,
10227 { "Pb Flags", "lustre.ptlrpc_body.pb_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10228 { &hf_lustre_obd_statfs_os_spare4,
10229 { "Os Spare4", "lustre.obd_statfs.os_spare4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10230 { &hf_lustre_obd_connect_data_ocd_group,
10231 { "Ocd Group", "lustre.obd_connect_data.ocd_group", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10232 { &hf_lustre_lov_ost_data_v1_l_object_seq,
10233 { "L Object SEQ", "lustre.lov_ost_data_v1.l_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10234 { &hf_lustre_lov_mds_md_v1_lmm_object_seq,
10235 { "Lmm Object SEQ", "lustre.lov_mds_md_v1.lmm_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10236 { &hf_lustre_obd_connect_data_ocd_brw_size,
10237 { "Ocd Brw Size", "lustre.obd_connect_data.ocd_brw_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10238 { &hf_lustre_ptlrpc_body_pb_limit,
10239 { "Pb Limit", "lustre.ptlrpc_body.pb_limit", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10240 { &hf_lustre_obd_statfs_os_maxbytes,
10241 { "Os Maxbytes", "lustre.obd_statfs.os_maxbytes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10242 { &hf_lustre_obd_statfs_os_spare5,
10243 { "Os Spare5", "lustre.obd_statfs.os_spare5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10244 { &hf_lustre_lustre_msg_v2_lm_flags,
10245 { "Lm Flags", "lustre.lustre_msg_v2.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10246 { &hf_lustre_obd_statfs_os_ffree,
10247 { "Os Ffree", "lustre.obd_statfs.os_ffree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10248 { &hf_lustre_obd_statfs_os_files,
10249 { "Os Files", "lustre.obd_statfs.os_files", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10250 { &hf_lustre_lov_mds_md_v1_lmm_stripe_count,
10251 { "Lmm Stripe Count", "lustre.lov_mds_md_v1.lmm_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10252 { &hf_lustre_lustre_msg_v1_lm_flags,
10253 { "Lm Flags", "lustre.lustre_msg_v1.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10254 { &hf_lustre_lustre_msg_v1_lm_last_committed,
10255 { "Lm Last Committed", "lustre.lustre_msg_v1.lm_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10256 { &hf_lustre_obd_statfs_os_spare9,
10257 { "Os Spare9", "lustre.obd_statfs.os_spare9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10258 { &hf_lustre_obd_connect_data_ocd_index,
10259 { "Ocd Index", "lustre.obd_connect_data.ocd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10260 { &hf_lustre_lustre_msg_v1_lm_buflens,
10261 { "Lm Buflens", "lustre.lustre_msg_v1.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10262 { &hf_lustre_obd_statfs_os_spare1,
10263 { "Os Spare1", "lustre.obd_statfs.os_spare1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10264 { &hf_lustre_obd_statfs_os_spare8,
10265 { "Os Spare8", "lustre.obd_statfs.os_spare8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10266 { &hf_lustre_lustre_msg_v1_lm_conn_cnt,
10267 { "Lm Conn Cnt", "lustre.lustre_msg_v1.lm_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10268 { &hf_lustre_ptlrpc_body_pb_transno,
10269 { "Pb Transno", "lustre.ptlrpc_body.pb_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10270 { &hf_lustre_ptlrpc_body_pb_service_time,
10271 { "Pb Service Time", "lustre.ptlrpc_body.pb_service_time",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10272 { &hf_lustre_ptlrpc_body_pb_conn_cnt,
10273 { "Pb Conn Cnt", "lustre.ptlrpc_body.pb_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10274 { &hf_lustre_ptlrpc_body_pb_opc,
10275 { "Pb Opc", "lustre.ptlrpc_body.pb_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
10276 { &hf_lustre_obd_connect_data_ocd_connect_flags,
10277 { "Ocd Connect Flags", "lustre.obd_connect_data.ocd_connect_flags", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10278 { &hf_lustre_lov_ost_data_v1_l_object_id,
10279 { "L Object Id", "lustre.lov_ost_data_v1.l_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10280 { &hf_lustre_lov_ost_data_v1_l_ost_gen,
10281 { "L Ost Gen", "lustre.lov_ost_data_v1.l_ost_gen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10282 { &hf_lustre_obd_statfs_os_bfree,
10283 { "Os Bfree", "lustre.obd_statfs.os_bfree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10284 { &hf_lustre_obd_connect_data_ocd_version,
10285 { "Ocd Version", "lustre.obd_connect_data.ocd_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10286 { &hf_lustre_lov_mds_md_v1_lmm_objects,
10287 { "Lmm Objects", "lustre.lov_mds_md_v1.lmm_objects", FT_NONE,
10288 BASE_NONE, NULL, 0, "", HFILL } },
10289 { &hf_lustre_obd_statfs_os_namelen,
10290 { "Os Namelen", "lustre.obd_statfs.os_namelen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10291 { &hf_lustre_obd_statfs_os_blocks,
10292 { "Os Blocks", "lustre.obd_statfs.os_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10293 { &hf_lustre_lustre_msg_v2_lm_secflvr,
10294 { "Lm Secflvr", "lustre.lustre_msg_v2.lm_secflvr", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10295 { &hf_lustre_lustre_msg_v1_lm_transno,
10296 { "Lm Transno", "lustre.lustre_msg_v1.lm_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10297 { &hf_lustre_lov_mds_md_v1_lmm_pattern,
10298 { "Lmm Pattern", "lustre.lov_mds_md_v1.lmm_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10299 { &hf_lustre_lustre_msg_v1_lm_opc,
10300 { "Lm Opc", "lustre.lustre_msg_v1.lm_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
10301 { &hf_lustre_obd_connect_data_ocd_grant,
10302 { "Ocd Grant", "lustre.obd_connect_data.ocd_grant", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10303 { &hf_lustre_obd_ioobj_ioo_bufcnt,
10304 { "Ioo Bufcnt", "lustre.obd_ioobj.ioo_bufcnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10305 { &hf_lustre_lustre_msg_v1_lm_version,
10306 { "Lm Version", "lustre.lustre_msg_v1.lm_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10307 { &hf_lustre_obd_statfs_os_spare7,
10308 { "Os Spare7", "lustre.obd_statfs.os_spare7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10309 { &hf_lustre_obd_statfs_os_fsid,
10310 { "Os Fsid", "lustre.obd_statfs.os_fsid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10311 { &hf_lustre_obd_connect_data_ocd_cksum_types,
10312 { "Ocd Cksum Types", "lustre.obd_connect_data.ocd_cksum_types", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10313 { &hf_lustre_ost_lvb_lvb_size,
10314 { "Lvb Size", "lustre.ost_lvb.lvb_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10315 { &hf_lustre_obd_statfs_os_type,
10316 { "Os Type", "lustre.obd_statfs.os_type", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10317 { &hf_lustre_obd_statfs_os_spare6,
10318 { "Os Spare6", "lustre.obd_statfs.os_spare6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10319 { &hf_lustre_obd_statfs_os_state,
10320 { "Os State", "lustre.obd_statfs.os_state", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10321 { &hf_lustre_obd_statfs_os_spare3,
10322 { "Os Spare3", "lustre.obd_statfs.os_spare3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10323 { &hf_lustre_lustre_msg_v2_lm_magic,
10324 { "Lm Magic", "lustre.lustre_msg_v2.lm_magic", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10325 { &hf_lustre_lov_mds_md_v1_lmm_object_id,
10326 { "Lmm Object Id", "lustre.lov_mds_md_v1.lmm_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10327 { &hf_lustre_ptlrpc_body_pb_last_seen,
10328 { "Pb Last Seen", "lustre.ptlrpc_body.pb_last_seen", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10329 { &hf_lustre_obd_ioobj_ioo_max_brw, /* TODO : create the
10330 corresponding value_string */
10331 { "Ioo Max BRW Size", "lustre.obd_ioobj.ioo_max_brw", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
10332 { &hf_lustre_ptlrpc_body_pb_last_xid,
10333 { "Pb Last Xid", "lustre.ptlrpc_body.pb_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10334 { &hf_lustre_ptlrpc_body_pb_status,
10335 { "Pb Status", "lustre.ptlrpc_body.pb_status", FT_INT32, BASE_DEC, NULL, 0, "", HFILL }},
10336 { &hf_lustre_niobuf_remote_flags,
10337 { "Flags", "lustre.niobuf_remote.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10338 { &hf_lustre_ll_fid_id,
10339 { "Id", "lustre.ll_fid.id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10340 { &hf_lustre_ost_lvb_lvb_blocks,
10341 { "Lvb Blocks", "lustre.ost_lvb.lvb_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10342 { &hf_lustre_lustre_msg_v2_lm_padding_2,
10343 { "Lm Padding 2", "lustre.lustre_msg_v2.lm_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10344 { &hf_lustre_obd_connect_data_padding1,
10345 { "Padding1", "lustre.obd_connect_data.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10346 { &hf_lustre_lov_ost_data_v1_l_ost_idx,
10347 { "L Ost Idx", "lustre.lov_ost_data_v1.l_ost_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10348 { &hf_lustre_obd_connect_data_padding2,
10349 { "Padding2", "lustre.obd_connect_data.padding2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10350 { &hf_lustre_obd_ioobj_ioo_seq,
10351 { "Ioo Gr", "lustre.obd_ioobj.ioo_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10352 { &hf_lustre_niobuf_remote_offset,
10353 { "Offset", "lustre.niobuf_remote.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10354 { &hf_lustre_obd_statfs_os_spare2,
10355 { "Os Spare2", "lustre.obd_statfs.os_spare2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10356 { &hf_lustre_lustre_msg_v2_lm_bufcount,
10357 { "Lm Bufcount", "lustre.lustre_msg_v2.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10358 { &hf_lustre_ptlrpc_body_pb_handle,
10359 { "Pb Handle", "lustre.ptlrpc_body.pb_handle", FT_NONE,
10360 BASE_NONE, NULL, 0, "", HFILL } },
10361 { &hf_lustre_obd_connect_data_ocd_transno,
10362 { "Ocd Transno", "lustre.obd_connect_data.ocd_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10363 { &hf_lustre_lustre_msg_v1_lm_magic,
10364 { "Lm Magic", "lustre.lustre_msg_v1.lm_magic", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10365 { &hf_lustre_ptlrpc_body_pb,
10366 { "ptl rpc", "lustre.ptlrpc_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10368 { &hf_lustre_obd_uuid,
10369 { "obd uid name", "lustre.obd_uid", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10370 { &hf_lustre_obd_connect_data ,
10371 { "obd connect data", "lustre.obd_connect_data", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10373 { &hf_lustre_ldlm_intent,
10374 { "ldlm intent", "lustre.ldlm_intent", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10376 { &hf_lustre_obd_ioobj,
10377 { "lustre obd ioobj", "lustre.obd_ioobj", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10378 { &hf_lustre_niobuf_remote,
10379 { "lustre niobuf remote", "lustre.niobuf_remote", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10380 { &hf_lustre_ost_key,
10381 { "lustre ost key", "lustre.ost_key", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10382 { &hf_lustre_ost_val,
10383 { "lustre ost val", "lustre.ost_val", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10384 { &hf_lustre_llogd_chunk,
10385 { "lustre llogd chunk", "lustre.llogd_chunk", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10386 { &hf_lustre_llogd_keyword,
10387 { "lustre llogd keyword", "lustre.llogd_keyword", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10388 { &hf_lustre_llogd_client,
10389 { "lustre llogd client", "lustre.llogd_client", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10390 { &hf_lustre_llogd_name,
10391 { "lustre llogd name", "lustre.llogd_name", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10392 { &hf_lustre_llogd_log_hdr,
10393 { "lustre llogd log hdr", "lustre.llogd_log_hdr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10394 { &hf_lustre_llog_logid_rec,
10395 { "lustre llog logid rec", "lustre.llog_logid_rec", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10397 { &hf_lustre_llogd_body,
10398 { "lustre llogd body", "lustre.llogd_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
10400 { "lustre nio", "lustre.nio", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
10401 { &hf_lustre_ost_body,
10402 { "ost body", "lustre.ost_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10403 { &hf_lustre_obd_statfs,
10404 { "obd statfs", "lustre.obd_statfs", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10405 { &hf_lustre_obd_quotactl,
10406 { "obd quotactl", "lustre.obd_quotacl", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10407 { &hf_lustre_quota_adjust_qunit,
10408 { "obd quota adjust qunit", "lustre.quota_adjust_qunit", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
10409 { &hf_lustre_llog_unlink_rec_lur_tail,
10410 { "Lur Tail", "lustre.llog_unlink_rec.lur_tail", FT_NONE,
10411 BASE_NONE, NULL, 0, "", HFILL } },
10412 { &hf_lustre_llog_size_change_rec_lsc_io_epoch,
10413 { "Lsc Io Epoch", "lustre.llog_size_change_rec.lsc_io_epoch", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10414 { &hf_lustre_mgs_target_info_mti_flags,
10415 { "Mti Flags", "lustre.mgs_target_info.mti_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10416 { &hf_lustre_ldlm_reply_lock_policy_res1,
10417 { "Lock Policy Res1", "lustre.ldlm_reply.lock_policy_res1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10418 { &hf_lustre_llogd_body_lgd_len,
10419 { "Lgd Len", "lustre.llogd_body.lgd_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10420 { &hf_lustre_qunit_data_old_qd_id,
10421 { "Qd Id", "lustre.qunit_data_old.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10422 { &hf_lustre_llog_logid_rec_padding1,
10423 { "Padding1", "lustre.llog_logid_rec.padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10424 { &hf_lustre_quota_adjust_qunit_padding1,
10425 { "Padding1", "lustre.quota_adjust_qunit.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10426 { &hf_lustre_llog_size_change_rec_lsc_fid,
10427 { "Lsc Fid", "lustre.llog_size_change_rec.lsc_fid", FT_NONE,
10428 BASE_NONE, NULL, 0, "", HFILL } },
10429 { &hf_lustre_llog_rec_hdr_padding,
10430 { "Padding", "lustre.llog_rec_hdr.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10431 { &hf_lustre_obdo_o_nlink,
10432 { "O Nlink", "lustre.obdo.o_nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10433 { &hf_lustre_ldlm_extent_gid,
10434 { "Gid", "lustre.ldlm_extent.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10435 { &hf_lustre_obdo_o_uid,
10436 { "O Uid", "lustre.obdo.o_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10437 { &hf_lustre_mds_xattr_name,
10438 { "mds xattr name", "lustre.mds_xattr_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10439 { &hf_lustre_lov_mds_md_v1,
10440 { "lov mds md v1", "lustre.lov_mds_md_v1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10441 { &hf_lustre_llog_cookie,
10442 { "llog cookie", "lustre.llog_cookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10443 { &hf_lustre_mds_md_data,
10444 { "mds md data", "lustre.mds_md_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10445 { &hf_lustre_mds_reint_opcode,
10446 { "mds reint opcode", "lustre.mds_reint_opcode", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10447 { &hf_lustre_mds_xattr_eadata,
10448 { "mds xattr eadata", "lustre.mds_xattr_eadata", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10449 { &hf_lustre_reint_name,
10450 { "mds reint name", "lustre.mds_reint_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10451 { &hf_lustre_reint_old_name,
10452 { "mds reint old name", "lustre.mds_reint_old_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10453 { &hf_lustre_reint_new_name,
10454 { "mds reint new name", "lustre.mds_reint_new_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10457 { &hf_lustre_obdo_o_valid,
10458 { "O Valid", "lustre.obdo.o_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10459 { &hf_lustre_ldlm_reply_lock_flags,
10460 { "Lock Flags", "lustre.ldlm_reply.lock_flags", FT_UINT32,BASE_HEX, NULL, 0, "", HFILL }},
10462 {&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 } },
10463 {&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 } },
10464 {&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 } },
10465 {&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 } },
10466 {&hf_lustre_ldlm_fl_cbpending, {"LDLM_FL_CBPENDING", "lustre.ldlm_fl_cbpending", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CBPENDING, "", HFILL } },
10467 {&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 } },
10468 {&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 } },
10469 {&hf_lustre_ldlm_fl_cancel, {"LDLM_FL_CANCEL", "lustre.ldlm_fl_cancel", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CANCEL, "", HFILL } },
10470 {&hf_lustre_ldlm_fl_replay, {"LDLM_FL_REPLAY", "lustre.ldlm_fl_replay", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_REPLAY, "", HFILL } },
10471 {&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 } },
10472 {&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 } },
10473 {&hf_lustre_ldlm_fl_failed, {"LDLM_FL_FAILED", "lustre.ldlm_fl_failed", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_FAILED, "", HFILL } },
10474 {&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 } },
10475 {&hf_lustre_ldlm_fl_canceling, {"LDLM_FL_CANCELING", "lustre.ldlm_fl_canceling", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CANCELING, "", HFILL } },
10476 {&hf_lustre_ldlm_fl_local, {"LDLM_FL_LOCAL", "lustre.ldlm_fl_local", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_LOCAL, "", HFILL } },
10477 {&hf_lustre_ldlm_fl_warn, {"LDLM_FL_WARN", "lustre.ldlm_fl_warn", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_WARN, "", HFILL } },
10478 {&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 } },
10479 {&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 } },
10480 {&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 } },
10481 {&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 } },
10482 {&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 } },
10483 {&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 } },
10484 {&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 } },
10485 {&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 } },
10486 {&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 } },
10487 {&hf_lustre_ldlm_fl_cleaned, {"LDLM_FL_CLEANED", "lustre.ldlm_fl_cleaned", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_CLEANED, "", HFILL } },
10488 {&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 } },
10489 {&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 } },
10490 {&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 } },
10491 {&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 } },
10492 {&hf_lustre_ldlm_fl_ast_discard_data, {"LDLM_AST_DISCARD_DATA", "lustre.ldlm_ast_discard_data", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), LDLM_FL_AST_DISCARD_DATA, "", HFILL } },
10494 { &hf_lustre_obdo_o_misc,
10495 { "O Misc", "lustre.obdo.o_misc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10496 { &hf_lustre_ldlm_request_lock_handle,
10497 { "Lock Handle", "lustre.ldlm_request.lock_handle", FT_NONE,
10498 BASE_NONE, NULL, 0, "", HFILL } },
10499 { &hf_lustre_llog_logid_lgl_oid,
10500 { "Lgl Oid", "lustre.llog_logid.lgl_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10501 { &hf_lustre_ldlm_inodebits_bits,
10502 { "Bits", "lustre.ldlm_inodebits.bits", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10503 { &hf_lustre_llog_log_hdr_llh_count,
10504 { "Llh Count", "lustre.llog_log_hdr.llh_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10505 { &hf_lustre_llog_gen_rec_lgr_tail,
10506 { "Lgr Tail", "lustre.llog_gen_rec.lgr_tail", FT_NONE,
10507 BASE_NONE, NULL, 0, "", HFILL } },
10508 { &hf_lustre_llog_catid_lci_padding3,
10509 { "Lci Padding3", "lustre.llog_catid.lci_padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10510 { &hf_lustre_qunit_data_qd_qunit,
10511 { "Qd Qunit", "lustre.qunit_data.qd_qunit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10512 { &hf_lustre_llog_setattr_rec_padding,
10513 { "Padding", "lustre.llog_setattr_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10514 { &hf_lustre_llog_cookie_lgc_lgl,
10515 { "Lgc Lgl", "lustre.llog_cookie.lgc_lgl", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10516 { &hf_lustre_obd_quotactl_qc_dqinfo,
10517 { "Qc Dqinfo", "lustre.obd_quotactl.qc_dqinfo", FT_NONE,
10518 BASE_NONE, NULL, 0, "", HFILL } },
10519 { &hf_lustre_llog_log_hdr_llh_bitmap,
10520 { "Llh Bitmap", "lustre.llog_log_hdr.llh_bitmap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10521 { &hf_lustre_obd_quotactl_qc_stat,
10522 { "Qc Stat", "lustre.obd_quotactl.qc_stat", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10523 { &hf_lustre_qunit_data_old2_qd_id,
10524 { "Qd Id", "lustre.qunit_data_old2.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10525 { &hf_lustre_llog_logid_rec_padding2,
10526 { "Padding2", "lustre.llog_logid_rec.padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10527 { &hf_lustre_llog_logid_rec_padding5,
10528 { "Padding5", "lustre.llog_logid_rec.padding5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10529 /*-------------------------------------------------------------------------------------------------------------*/
10530 /*all this flags are uint64, but I don't find the way to use something like TFS() with a Uint64*/
10531 /*like TFS() with a Uint64 */
10532 { &hf_lustre_ldlm_intent_opc_open,
10533 { "open", "lustre.ldlm_intent.opc_open", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_OPEN, "", HFILL } },
10534 { &hf_lustre_ldlm_intent_opc_creat,
10535 { "creat", "lustre.ldlm_intent.opc_creat", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_CREAT , "", HFILL } },
10536 { &hf_lustre_ldlm_intent_opc_readdir,
10537 { "readdir", "lustre.ldlm_intent.opc_readdir", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_READDIR , "", HFILL } },
10538 { &hf_lustre_ldlm_intent_opc_getattr,
10539 { "getattr", "lustre.ldlm_intent.opc_getattr", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_GETATTR, "", HFILL } },
10540 { &hf_lustre_ldlm_intent_opc_lookup,
10541 { "lookup", "lustre.ldlm_intent.opc_lookup", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_LOOKUP , "", HFILL } },
10542 { &hf_lustre_ldlm_intent_opc_unlink,
10543 { "unlink", "lustre.ldlm_intent.opc_unlink", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_UNLINK , "", HFILL } },
10544 { &hf_lustre_ldlm_intent_opc_getxattr,
10545 { "getxattr", "lustre.ldlm_intent.opc_getxattr", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_GETXATTR , "", HFILL } },
10546 { &hf_lustre_ldlm_intent_opc_exec,
10547 { "exec", "lustre.ldlm_intent.opc_exec", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_EXEC , "", HFILL } },
10548 { &hf_lustre_ldlm_intent_opc_pin,
10549 { "pin", "lustre.ldlm_intent.opc_pin", FT_BOOLEAN, 32, TFS(&lnet_flags_set_truth), IT_PIN , "", HFILL } },
10550 /*-------------------------------------------------------------------*/
10551 { &hf_lustre_ldlm_intent_opc,
10552 { "intent opcode", "lustre.ldlm_intent.opc", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10553 { &hf_lustre_llog_rec_hdr_lrh_type,
10554 { "Lrh Type", "lustre.llog_rec_hdr.lrh_type", FT_UINT32, BASE_HEX, VALS(lustre_llog_op_type), 0, "", HFILL }},
10555 { &hf_lustre_llog_rec_hdr_lrh_len,
10556 { "Lrh Len", "lustre.llog_rec_hdr.lrh_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10557 { &hf_lustre_llog_setattr_rec_lsr_uid,
10558 { "Lsr Uid", "lustre.llog_setattr_rec.lsr_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10559 { &hf_lustre_lov_desc_ld_padding_1,
10560 { "Ld Padding 1", "lustre.lov_desc.ld_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10561 { &hf_lustre_obdo_o_padding_4,
10562 { "O Padding 4", "lustre.obdo.o_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10563 { &hf_lustre_mgs_target_info_padding,
10564 { "Padding", "lustre.mgs_target_info.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10565 { &hf_lustre_obd_quotactl_qc_dqblk,
10566 { "Qc Dqblk", "lustre.obd_quotactl.qc_dqblk", FT_NONE,
10567 BASE_NONE, NULL, 0, "", HFILL } },
10568 { &hf_lustre_llogd_conn_body_lgdc_gen,
10569 { "Lgdc Gen", "lustre.llogd_conn_body.lgdc_gen", FT_NONE,
10570 BASE_NONE, NULL, 0, "", HFILL } },
10571 { &hf_lustre_llog_log_hdr_llh_tail,
10572 { "Llh Tail", "lustre.llog_log_hdr.llh_tail", FT_NONE,
10573 BASE_NONE, NULL, 0, "", HFILL } },
10574 { &hf_lustre_obdo_o_size,
10575 { "O Size", "lustre.obdo.o_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10576 { &hf_lustre_ldlm_extent_start,
10577 { "Start", "lustre.ldlm_extent.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10578 { &hf_lustre_llog_size_change_rec_lsc_hdr,
10579 { "Lsc Hdr", "lustre.llog_size_change_rec.lsc_hdr", FT_NONE,
10580 BASE_NONE, NULL, 0, "", HFILL } },
10581 { &hf_lustre_llog_logid_lgl_oseq,
10582 { "Lgl SEQ", "lustre.llog_logid.lgl_oseq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10583 { &hf_lustre_llog_cookie_lgc_padding,
10584 { "Lgc Padding", "lustre.llog_cookie.lgc_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10585 { &hf_lustre_qunit_data_old_qd_type,
10586 { "Qd Type", "lustre.qunit_data_old.qd_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10587 { &hf_lustre_ldlm_flock_blocking_export,
10588 { "Blocking Export", "lustre.ldlm_flock.blocking_export", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10589 { &hf_lustre_lov_desc_ld_pattern,
10590 { "Ld Pattern", "lustre.lov_desc.ld_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10591 { &hf_lustre_qunit_data_qd_id,
10592 { "Qd Id", "lustre.qunit_data.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10593 { &hf_lustre_mgs_target_info_mti_fsname,
10594 { "Mti Fsname", "lustre.mgs_target_info.mti_fsname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10595 { &hf_lustre_ldlm_request_lock_flags,
10596 { "Lock Flags", "lustre.ldlm_request.lock_flags", FT_UINT32, BASE_HEX, NULL, 0 , "", HFILL }},
10597 { &hf_lustre_obdo_o_mode,
10598 { "O Mode", "lustre.obdo.o_mode", FT_UINT32, BASE_OCT, NULL, 0, "", HFILL }},
10599 { &hf_lustre_mgs_target_info_mti_svname,
10600 { "Mti Svname", "lustre.mgs_target_info.mti_svname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10601 { &hf_lustre_llogd_body_lgd_logid,
10602 { "Lgd Logid", "lustre.llogd_body.lgd_logid", FT_NONE,
10603 BASE_NONE, NULL, 0, "", HFILL } },
10604 { &hf_lustre_llog_log_hdr_llh_size,
10605 { "Llh Size", "lustre.llog_log_hdr.llh_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10606 { &hf_lustre_obdo_o_handle,
10607 { "O Handle", "lustre.obdo.o_handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10608 { &hf_lustre_obdo_o_atime,
10609 { "O Atime", "lustre.obdo.o_atime",FT_ABSOLUTE_TIME,
10610 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10611 { &hf_lustre_quota_adjust_qunit_qaq_id,
10612 { "Qaq Id", "lustre.quota_adjust_qunit.qaq_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10613 { &hf_lustre_ldlm_lock_desc_l_policy_data,
10614 { "L Policy Data", "lustre.ldlm_lock_desc.l_policy_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10615 { &hf_lustre_obd_quotactl_qc_cmd,
10616 { "Qc Cmd", "lustre.obd_quotactl.qc_cmd", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10617 { &hf_lustre_qunit_data_padding,
10618 { "Padding", "lustre.qunit_data.padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10619 { &hf_lustre_quota_adjust_qunit_qaq_flags,
10620 { "Qaq Flags", "lustre.quota_adjust_qunit.qaq_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10621 { &hf_lustre_ldlm_lock_desc_l_granted_mode,
10622 { "L Granted Mode", "lustre.ldlm_lock_desc.l_granted_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10623 { &hf_lustre_obdo_o_seq,
10624 { "O SEQ", "lustre.obdo.o_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10625 { &hf_lustre_obdo_o_gid,
10626 { "O Gid", "lustre.obdo.o_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10627 { &hf_lustre_llog_catid_lci_logid,
10628 { "Lci Logid", "lustre.llog_catid.lci_logid", FT_NONE,
10629 BASE_NONE, NULL, 0, "", HFILL } },
10630 { &hf_lustre_llog_rec_tail_lrt_index,
10631 { "Lrt Index", "lustre.llog_rec_tail.lrt_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10632 { &hf_lustre_lov_desc_ld_default_stripe_count,
10633 { "Ld Default Stripe Count", "lustre.lov_desc.ld_default_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10634 { &hf_lustre_ldlm_resource_desc_lr_padding,
10635 { "Lr Padding", "lustre.ldlm_resource_desc.lr_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10636 { &hf_lustre_cfg_marker_cm_vers,
10637 { "Cm Vers", "lustre.cfg_marker.cm_vers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10638 { &hf_lustre_llog_unlink_rec_lur_hdr,
10639 { "Lur Hdr", "lustre.llog_unlink_rec.lur_hdr", FT_NONE,
10640 BASE_NONE, NULL, 0, "", HFILL } },
10641 { &hf_lustre_llogd_body_lgd_index,
10642 { "Lgd Index", "lustre.llogd_body.lgd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10643 { &hf_lustre_cfg_marker_cm_tgtname,
10644 { "Cm Tgtname", "lustre.cfg_marker.cm_tgtname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10645 { &hf_lustre_llog_setattr_rec_lsr_ogen,
10646 { "Lsr Ogen", "lustre.llog_setattr_rec.lsr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10647 { &hf_lustre_llog_logid_rec_lid_hdr,
10648 { "Lid Hdr", "lustre.llog_logid_rec.lid_hdr", FT_NONE,
10649 BASE_NONE, NULL, 0, "", HFILL } },
10650 { &hf_lustre_obdo_o_ioepoch,
10651 { "O IOEpoch", "lustre.obdo.o_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10652 { &hf_lustre_ost_body_oa,
10653 { "Oa", "lustre.ost_body.oa", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10654 { &hf_lustre_llog_logid_rec_padding3,
10655 { "Padding3", "lustre.llog_logid_rec.padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10656 { &hf_lustre_llog_log_hdr_llh_flags,
10657 { "Llh Flags", "lustre.llog_log_hdr.llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10658 {&hf_lustre_llog_hdr_llh_flag_zap_when_empty,
10659 {"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 } },
10660 {&hf_lustre_llog_hdr_llh_flag_is_cat,
10661 {"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 } },
10662 {&hf_lustre_llog_hdr_llh_flag_is_play,
10663 {"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 } },
10665 { &hf_lustre_llog_setattr_rec_lsr_oid,
10666 { "Lsr Oid", "lustre.llog_setattr_rec.lsr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10667 { &hf_lustre_llog_size_change_rec_padding,
10668 { "Padding", "lustre.llog_size_change_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10669 { &hf_lustre_mgs_target_info_mti_config_ver,
10670 { "Mti Config Ver", "lustre.mgs_target_info.mti_config_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10671 { &hf_lustre_cfg_marker_cm_createtime,
10672 { "Cm Createtime", "lustre.cfg_marker.cm_createtime",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10673 { &hf_lustre_qunit_data_old_qd_count,
10674 { "Qd Count", "lustre.qunit_data_old.qd_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10675 { &hf_lustre_llog_catid_lci_padding1,
10676 { "Lci Padding1", "lustre.llog_catid.lci_padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10677 { &hf_lustre_lov_desc_ld_active_tgt_count,
10678 { "Ld Active Tgt Count", "lustre.lov_desc.ld_active_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10679 { &hf_lustre_obdo_o_lcookie,
10680 { "O Lcookie", "lustre.obdo.o_lcookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10681 { &hf_lustre_llog_gen_rec_lgr_gen,
10682 { "Lgr Gen", "lustre.llog_gen_rec.lgr_gen", FT_NONE,
10683 BASE_NONE, NULL, 0, "", HFILL } },
10684 { &hf_lustre_obdo_o_id,
10685 { "O Id", "lustre.obdo.o_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10686 { &hf_lustre_mgs_target_info_mti_uuid,
10687 { "Mti Uuid", "lustre.mgs_target_info.mti_uuid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10688 { &hf_lustre_llog_rec_hdr_lrh_index,
10689 { "Lrh Index", "lustre.llog_rec_hdr.lrh_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10690 { &hf_lustre_llog_setattr_rec_lsr_hdr,
10691 { "Lsr Hdr", "lustre.llog_setattr_rec.lsr_hdr", FT_NONE,
10692 BASE_NONE, NULL, 0, "", HFILL } },
10693 { &hf_lustre_mgs_target_info_mti_stripe_index,
10694 { "Mti Stripe Index", "lustre.mgs_target_info.mti_stripe_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10695 { &hf_lustre_llog_gen_conn_cnt,
10696 { "Conn Cnt", "lustre.llog_gen.conn_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10697 { &hf_lustre_obdo_o_padding_6,
10698 { "O Padding 6", "lustre.obdo.o_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10699 { &hf_lustre_llog_cookie_lgc_index,
10700 { "Lgc Index", "lustre.llog_cookie.lgc_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10701 { &hf_lustre_lov_desc_ld_uuid,
10702 { "Ld Uuid", "lustre.lov_desc.ld_uuid", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10703 { &hf_lustre_ldlm_reply_lock_desc,
10704 { "Lock Desc", "lustre.ldlm_reply.lock_desc", FT_NONE,
10705 BASE_NONE, NULL, 0, "", HFILL } },
10706 { &hf_lustre_lov_desc_ld_padding_0,
10707 { "Ld Padding 0", "lustre.lov_desc.ld_padding_0", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10708 { &hf_lustre_llog_unlink_rec_lur_ogen,
10709 { "Lur Ogen", "lustre.llog_unlink_rec.lur_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10710 { &hf_lustre_cfg_marker_cm_flags,
10711 { "Cm Flags", "lustre.cfg_marker.cm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10712 { &hf_lustre_obdo_o_padding_3,
10713 { "O Padding 3", "lustre.obdo.o_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10714 { &hf_lustre_ldlm_request_lock_desc,
10715 { "Lock Desc", "lustre.ldlm_request.lock_desc", FT_NONE,
10716 BASE_NONE, NULL, 0, "", HFILL } },
10717 { &hf_lustre_obdo_o_flags,
10718 { "O Flags", "lustre.obdo.o_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10719 { &hf_lustre_mgs_target_info_mti_params,
10720 { "Mti Params", "lustre.mgs_target_info.mti_params", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10721 { &hf_lustre_llog_logid_lgl_ogen,
10722 { "Lgl Ogen", "lustre.llog_logid.lgl_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10723 { &hf_lustre_cfg_marker_cm_comment,
10724 { "Cm Comment", "lustre.cfg_marker.cm_comment", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10725 { &hf_lustre_llog_unlink_rec_lur_oid,
10726 { "Lur Oid", "lustre.llog_unlink_rec.lur_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10727 { &hf_lustre_qunit_data_qd_count,
10728 { "Qd Count", "lustre.qunit_data.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10729 { &hf_lustre_obdo_o_mtime,
10730 { "O Mtime", "lustre.obdo.o_mtime",FT_ABSOLUTE_TIME,
10731 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10732 { &hf_lustre_obdo_o_blksize,
10733 { "O Blksize", "lustre.obdo.o_blksize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10734 { &hf_lustre_ldlm_res_id_name,
10735 { "Name", "lustre.ldlm_res_id.name", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10736 { &hf_lustre_ldlm_reply_lock_handle,
10737 { "Lock Handle", "lustre.ldlm_reply.lock_handle", FT_NONE,
10738 BASE_NONE, NULL, 0, "", HFILL } },
10739 { &hf_lustre_llogd_body_lgd_saved_index,
10740 { "Lgd Saved Index", "lustre.llogd_body.lgd_saved_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10741 { &hf_lustre_qunit_data_old_qd_isblk,
10742 { "Qd Isblk", "lustre.qunit_data_old.qd_isblk", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10743 { &hf_lustre_obdo_o_blocks,
10744 { "O Blocks", "lustre.obdo.o_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10745 { &hf_lustre_lov_desc_ld_padding_2,
10746 { "Ld Padding 2", "lustre.lov_desc.ld_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10747 { &hf_lustre_llog_logid_rec_lid_tail,
10748 { "Lid Tail", "lustre.llog_logid_rec.lid_tail", FT_NONE,
10749 BASE_NONE, NULL, 0, "", HFILL } },
10750 { &hf_lustre_obdo_o_grant,
10751 { "O Grant", "lustre.obdo.o_grant", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10752 { &hf_lustre_obdo_o_uid_h,
10753 { "O Uid H", "lustre.obdo.o_uid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10754 { &hf_lustre_obdo_o_gid_h,
10755 { "O Gid H", "lustre.obdo.o_gid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10756 { &hf_lustre_quota_adjust_qunit_qaq_iunit_sz,
10757 { "Qaq Iunit Sz", "lustre.quota_adjust_qunit.qaq_iunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10758 { &hf_lustre_llog_unlink_rec_padding,
10759 { "Padding", "lustre.llog_unlink_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10760 { &hf_lustre_ldlm_lock_desc_l_req_mode,
10761 { "L Req Mode", "lustre.ldlm_lock_desc.l_req_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10762 { &hf_lustre_ldlm_extent_end,
10763 { "End", "lustre.ldlm_extent.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10764 { &hf_lustre_llog_gen_rec_lgr_hdr,
10765 { "Lgr Hdr", "lustre.llog_gen_rec.lgr_hdr", FT_NONE,
10766 BASE_NONE, NULL, 0, "", HFILL } },
10767 { &hf_lustre_llogd_body_lgd_llh_flags,
10768 { "Lgd Llh Flags", "lustre.llogd_body.lgd_llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10769 { &hf_lustre_llog_log_hdr_llh_cat_idx,
10770 { "Llh Cat Idx", "lustre.llog_log_hdr.llh_cat_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10771 { &hf_lustre_llog_log_hdr_llh_bitmap_offset,
10772 { "Llh Bitmap Offset", "lustre.llog_log_hdr.llh_bitmap_offset", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10773 { &hf_lustre_ldlm_reply_lock_padding,
10774 { "Lock Padding", "lustre.ldlm_reply.lock_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10775 { &hf_lustre_obd_quotactl_qc_id,
10776 { "Qc Id", "lustre.obd_quotactl.qc_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10777 { &hf_lustre_llog_logid_rec_padding4,
10778 { "Padding4", "lustre.llog_logid_rec.padding4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10779 { &hf_lustre_llog_setattr_rec_lsr_gid,
10780 { "Lsr Gid", "lustre.llog_setattr_rec.lsr_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10781 { &hf_lustre_obd_quotactl_qc_type,
10782 { "Qc Type", "lustre.obd_quotactl.qc_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10783 { &hf_lustre_cfg_marker_padding,
10784 { "Padding", "lustre.cfg_marker.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10785 { &hf_lustre_mgs_target_info_mti_nids,
10786 { "Mti Nids", "lustre.mgs_target_info.mti_nids", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10787 { &hf_lustre_obdo_o_stripe_idx,
10788 { "O Stripe Idx", "lustre.obdo.o_stripe_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10789 { &hf_lustre_llogd_conn_body_lgdc_logid,
10790 { "Lgdc Logid", "lustre.llogd_conn_body.lgdc_logid", FT_NONE,
10791 BASE_NONE, NULL, 0, "", HFILL } },
10792 { &hf_lustre_ldlm_flock_blocking_pid,
10793 { "Blocking Pid", "lustre.ldlm_flock.blocking_pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10794 { &hf_lustre_lov_desc_ld_tgt_count,
10795 { "Ld Tgt Count", "lustre.lov_desc.ld_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10796 { &hf_lustre_llogd_body_lgd_cur_offset,
10797 { "Lgd Cur Offset", "lustre.llogd_body.lgd_cur_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10798 { &hf_lustre_qunit_data_old2_qd_count,
10799 { "Qd Count", "lustre.qunit_data_old2.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10800 { &hf_lustre_opnum,
10801 { "Operation", "lustre.opnum", FT_UINT16, BASE_DEC, NULL, 0, "", HFILL }},
10802 { &hf_lustre_qunit_data_old2_qd_flags,
10803 { "Qd Flags", "lustre.qunit_data_old2.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10804 { &hf_lustre_ldlm_flock_start,
10805 { "Start", "lustre.ldlm_flock.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10806 { &hf_lustre_quota_adjust_qunit_qaq_bunit_sz,
10807 { "Qaq Bunit Sz", "lustre.quota_adjust_qunit.qaq_bunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10808 { &hf_lustre_ldlm_flock_pid,
10809 { "Pid", "lustre.ldlm_flock.pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10810 { &hf_lustre_lov_desc_ld_default_stripe_size,
10811 { "Ld Default Stripe Size", "lustre.lov_desc.ld_default_stripe_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10812 { &hf_lustre_llog_log_hdr_llh_tgtuuid,
10813 { "Llh Tgtuuid", "lustre.llog_log_hdr.llh_tgtuuid", FT_NONE,
10814 BASE_NONE, NULL, 0, "", HFILL } },
10815 { &hf_lustre_cfg_marker_cm_step,
10816 { "Cm Step", "lustre.cfg_marker.cm_step", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10817 { &hf_lustre_mgs_send_param_mgs_param,
10818 { "Mgs Param", "lustre.mgs_send_param.mgs_param", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10819 { &hf_lustre_lov_desc_ld_default_stripe_offset,
10820 { "Ld Default Stripe Offset", "lustre.lov_desc.ld_default_stripe_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10821 { &hf_lustre_ldlm_resource_desc_lr_name,
10822 { "Lr Name", "lustre.ldlm_resource_desc.lr_name", FT_NONE,
10823 BASE_NONE, NULL, 0, "", HFILL } },
10824 { &hf_lustre_llog_rec_tail_lrt_len,
10825 { "Lrt Len", "lustre.llog_rec_tail.lrt_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10826 { &hf_lustre_llog_log_hdr_llh_timestamp,
10827 { "Llh Timestamp", "lustre.llog_log_hdr.llh_timestamp", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10828 { &hf_lustre_llog_catid_lci_padding2,
10829 { "Lci Padding2", "lustre.llog_catid.lci_padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10830 { &hf_lustre_llogd_conn_body_lgdc_ctxt_idx,
10831 { "Lgdc Ctxt Idx", "lustre.llogd_conn_body.lgdc_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10832 { &hf_lustre_cfg_marker_cm_canceltime,
10833 { "Cm Canceltime", "lustre.cfg_marker.cm_canceltime",FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10834 { &hf_lustre_mgs_target_info_mti_lustre_ver,
10835 { "Mti Lustre Ver", "lustre.mgs_target_info.mti_lustre_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10836 { &hf_lustre_obdo_o_parent_ver,
10837 { "O Parent VER", "lustre.obdo.o_parent_ver", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10838 { &hf_lustre_qunit_data_qd_flags,
10839 { "Qd Flags", "lustre.qunit_data.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10840 { &hf_lustre_llog_logid_rec_lid_id,
10841 { "Lid Id", "lustre.llog_logid_rec.lid_id", FT_NONE,
10842 BASE_NONE, NULL, 0, "", HFILL } },
10843 { &hf_lustre_obdo_o_parent_oid,
10844 { "O Parent OID", "lustre.obdo.o_parent_oid", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10845 { &hf_lustre_llog_gen_mnt_cnt,
10846 { "Mnt Cnt", "lustre.llog_gen.mnt_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10847 { &hf_lustre_llog_size_change_rec_lsc_tail,
10848 { "Lsc Tail", "lustre.llog_size_change_rec.lsc_tail", FT_NONE,
10849 BASE_NONE, NULL, 0, "", HFILL } },
10850 { &hf_lustre_obdo_o_padding_5,
10851 { "O Padding 5", "lustre.obdo.o_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10852 { &hf_lustre_ldlm_lock_desc_l_resource,
10853 { "L Resource", "lustre.ldlm_lock_desc.l_resource", FT_NONE,
10854 BASE_NONE, NULL, 0, "", HFILL } },
10855 { &hf_lustre_obdo_o_parent_seq,
10856 { "O Parent SEQ", "lustre.obdo.o_parent_seq", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL }},
10857 { &hf_lustre_ldlm_request_lock_count,
10858 { "Lock Count", "lustre.ldlm_request.lock_count", FT_UINT32, BASE_HEX_DEC, NULL, 0, "", HFILL }},
10859 { &hf_lustre_ldlm_flock_end,
10860 { "End", "lustre.ldlm_flock.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10861 { &hf_lustre_mgs_target_info_mti_nid_count,
10862 { "Mti Nid Count", "lustre.mgs_target_info.mti_nid_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10863 /* -------------------------------------------------------------------- */
10864 { &hf_lustre_mgs_target_info,
10865 { "mgs target info", "lustre.mgs_target_info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10866 { &hf_lustre_mgs_send_param,
10867 { "mgs send param", "lustre.mgs_send_param", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10869 { &hf_lustre_mgs_config_body,
10870 { "mgs config body", "lustre.mgs_config_body", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10871 { &hf_lustre_mgs_config_body_name,
10872 { "mcb name", "lustre.mgs_config_body.name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
10873 { &hf_lustre_mgs_config_body_offset,
10874 { "mcb offset", "lustre.mgs_config_body.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10875 { &hf_lustre_mgs_config_body_type,
10876 { "mcb type", "lustre.mgs_config_body.type", FT_UINT16, BASE_DEC, VALS(lustre_mgs_config_body_types), 0, "", HFILL }},
10877 { &hf_lustre_mgs_config_body_reserved,
10878 { "mcb reserved", "lustre.mgs_config_body.type", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10879 { &hf_lustre_mgs_config_body_bits,
10880 { "mcb bit shift", "lustre.mgs_config_body.type", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10881 { &hf_lustre_mgs_config_body_units,
10882 { "mcb units", "lustre.mgs_config_body.type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10884 { &hf_lustre_mgs_config_res,
10885 { "mgs config res", "lustre.mgs_config_res", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10886 { &hf_lustre_mgs_config_res_offset,
10887 { "mcr offset", "lustre.mgs_config_res.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10888 { &hf_lustre_mgs_config_res_size,
10889 { "mcr size", "lustre.mgs_config_res.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10891 /* -------------------------------------------------------------------- */
10892 { &hf_lustre_ost_lvb,
10893 { "ost lvb data", "lustre.ost_lvb", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10895 { &hf_lustre_obdo_o_ctime,
10896 { "O Ctime", "lustre.obdo.o_ctime",FT_ABSOLUTE_TIME,
10897 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10898 { &hf_lustre_ldlm_reply_lock_policy_res2,
10899 { "Lock Policy Res2", "lustre.ldlm_reply.lock_policy_res2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10900 { &hf_lustre_llogd_body_lgd_ctxt_idx,
10901 { "Lgd Ctxt Idx", "lustre.llogd_body.lgd_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10902 { &hf_lustre_lov_desc_ld_qos_maxage,
10903 { "Ld Qos Maxage", "lustre.lov_desc.ld_qos_maxage", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10904 { &hf_lustre_ldlm_resource_desc_lr_type,
10905 { "Lr Type", "lustre.ldlm_resource_desc.lr_type", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_type_t_vals), 0, "", HFILL }},
10906 { &hf_lustre_llog_setattr_rec_lsr_tail,
10907 { "Lsr Tail", "lustre.llog_setattr_rec.lsr_tail", FT_NONE,
10908 BASE_NONE, NULL, 0, "", HFILL } },
10909 { &hf_lustre_llog_cookie_lgc_subsys,
10910 { "Lgc Subsys", "lustre.llog_cookie.lgc_subsys", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10911 { &hf_lustre_llog_log_hdr_llh_hdr,
10912 { "Llh Hdr", "lustre.llog_log_hdr.llh_hdr", FT_NONE,
10913 BASE_NONE, NULL, 0, "", HFILL } },
10914 { &hf_lustre_llog_log_hdr_llh_reserved,
10915 { "Llh Reserved", "lustre.llog_log_hdr.llh_reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10917 { &hf_lustre_extra_padding,
10918 { "extra padding", "lustre.msg_v2_extra_padding", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10919 { &hf_lustre_ldlm_reply,
10920 { "ldlm reply", "lustre.ldlm_reply", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10921 { &hf_lustre_ldlm_request,
10922 { "ldlm request", "lustre.ldlm_request", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10924 /* add for lustre_user.h */
10925 { &hf_lustre_obd_dqinfo_dqi_valid,
10926 { "Dqi Valid", "lustre.obd_dqinfo.dqi_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10927 { &hf_lustre_obd_dqblk_dqb_isoftlimit,
10928 { "Dqb Isoftlimit", "lustre.obd_dqblk.dqb_isoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10929 { &hf_lustre_obd_dqblk_dqb_bhardlimit,
10930 { "Dqb Bhardlimit", "lustre.obd_dqblk.dqb_bhardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10931 { &hf_lustre_obd_dqblk_dqb_curspace,
10932 { "Dqb Curspace", "lustre.obd_dqblk.dqb_curspace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10933 { &hf_lustre_obd_dqblk_dqb_itime,
10934 { "Dqb Itime", "lustre.obd_dqblk.dqb_itime", FT_ABSOLUTE_TIME,
10935 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10936 { &hf_lustre_obd_dqblk_dqb_valid,
10937 { "Dqb Valid", "lustre.obd_dqblk.dqb_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10938 { &hf_lustre_obd_dqinfo_dqi_igrace,
10939 { "Dqi Igrace", "lustre.obd_dqinfo.dqi_igrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10940 { &hf_lustre_obd_dqinfo_dqi_bgrace,
10941 { "Dqi Bgrace", "lustre.obd_dqinfo.dqi_bgrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10942 { &hf_lustre_obd_dqblk_padding,
10943 { "Padding", "lustre.obd_dqblk.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10944 { &hf_lustre_obd_dqblk_dqb_curinodes,
10945 { "Dqb Curinodes", "lustre.obd_dqblk.dqb_curinodes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10946 { &hf_lustre_obd_dqblk_dqb_bsoftlimit,
10947 { "Dqb Bsoftlimit", "lustre.obd_dqblk.dqb_bsoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10948 { &hf_lustre_obd_dqinfo_dqi_flags,
10949 { "Dqi Flags", "lustre.obd_dqinfo.dqi_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10950 { &hf_lustre_obd_dqblk_dqb_btime,
10951 { "Dqb Btime", "lustre.obd_dqblk.dqb_btime", FT_ABSOLUTE_TIME,
10952 ABSOLUTE_TIME_LOCAL, NULL, 0, "", HFILL } },
10953 { &hf_lustre_obd_dqblk_dqb_ihardlimit,
10954 { "Dqb Ihardlimit", "lustre.obd_dqblk.dqb_ihardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
10957 { &hf_lustre_seq_opc,
10958 { "Seq OPC", "lustre.seq_opc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
10959 { &hf_lustre_seq_range,
10960 { "Seq Range", "lustre.seq_range", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10961 { &hf_lustre_seq_range_start,
10962 { "Seq Range Start", "lustre.seq_range.start", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
10963 { &hf_lustre_seq_range_end,
10964 { "Seq Range End", "lustre.seq_range.end", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
10965 { &hf_lustre_seq_range_index,
10966 { "Seq Range Index", "lustre.seq_range.index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
10967 { &hf_lustre_seq_range_flags,
10968 { "Seq Range Flags", "lustre.seq_range.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
10971 { &hf_lustre_fld_opc,
10972 { "Fld OPC", "lustre.fld_opc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
10973 { &hf_lustre_fld_range,
10974 { "Fld Range", "lustre.fld_range", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10975 { &hf_lustre_fld_range_start,
10976 { "Fld Range Start", "lustre.fld_range.start", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
10977 { &hf_lustre_fld_range_end,
10978 { "Fld Range End", "lustre.fld_range.end", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
10979 { &hf_lustre_fld_range_index,
10980 { "Fld Range Index", "lustre.fld_range.index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
10981 { &hf_lustre_fld_range_flags,
10982 { "Fld Range Flags", "lustre.fld_range.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
10984 /* struct mdt_ioepoch */
10985 { &hf_lustre_mdt_ioepoch,
10986 { "MDT ioepoch", "lustre.mdt_ioepoch", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10987 { &hf_lustre_mdt_ioepoch_handle,
10988 { "Handle", "lustre.mdt_ioepoch.handle", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10989 { &hf_lustre_mdt_ioepoch_ioepoch,
10990 { "ioepoch", "lustre.mdt_ioepoch.ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
10991 { &hf_lustre_mdt_ioepoch_flags,
10992 { "flags", "lustre.mdt_ioepoch.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
10993 { &hf_lustre_mdt_ioepoch_padding,
10994 { "Padding", "lustre.mdt_ioepoch.padding", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
10996 /* struct lustre_capa */
10998 { "Capability", "lustre.capa", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
10999 { &hf_lustre_capa_fid,
11000 { "Capa fid", "lustre.capa.fid", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11001 { &hf_lustre_capa_opc,
11002 { "Capa opc", "lustre.capa.opc", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL } },
11003 { &hf_lustre_capa_uid,
11004 { "Capa uid", "lustre.capa.uid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11005 { &hf_lustre_capa_gid,
11006 { "Capa gid", "lustre.capa.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL } },
11007 { &hf_lustre_capa_flags,
11008 { "Capa flags", "lustre.capa.flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11009 { &hf_lustre_capa_keyid,
11010 { "Capa keyid", "lustre.capa.keyid", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL } },
11011 { &hf_lustre_capa_timeout,
11012 { "Capa timeout", "lustre.capa.timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11013 { &hf_lustre_capa_expiry,
11014 { "Capa expiry", "lustre.capa.expiry", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL } },
11015 { &hf_lustre_capa_hmac,
11016 { "Capa hmac", "lustre.capa.hmac", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11020 { "ACL", "lustre.acl", FT_NONE, BASE_NONE, NULL, 0, "", HFILL } },
11024 static gint *ett[] = {
11026 &ett_lustre_lustre_handle_cookie,
11027 &ett_lustre_lustre_msg_v1,
11028 &ett_lustre_lustre_handle_v1,
11029 &ett_lustre_lustre_msg_v2,
11030 &ett_lustre_ptlrpc_body,
11031 &ett_lustre_lustre_handle_v2,
11032 &ett_lustre_obd_connect_data,
11033 &ett_lustre_lov_mds_md_v1,
11034 &ett_lustre_lov_ost_data_v1,
11035 &ett_lustre_obd_statfs,
11036 &ett_lustre_obd_ioobj,
11037 &ett_lustre_niobuf_remote,
11038 &ett_lustre_ost_lvb,
11039 &ett_lustre_ll_fid,
11040 &ett_lustre_obd_quotactl,
11041 &ett_lustre_obd_dqinfo,
11042 &ett_lustre_obd_dqblk,
11043 &ett_lustre_quota_adjust_qunit,
11044 &ett_lustre_mdt_body,
11045 &ett_lustre_mdt_rec_setattr,
11046 &ett_lustre_mdt_rec_create,
11047 &ett_lustre_mdt_rec_link,
11048 &ett_lustre_mdt_rec_unlink,
11049 &ett_lustre_mdt_rec_rename,
11050 &ett_lustre_mdt_rec_setxattr,
11051 &ett_lustre_lov_desc,
11052 &ett_lustre_obd_uuid,
11053 &ett_lustre_ldlm_res_id,
11054 &ett_lustre_ldlm_extent,
11055 &ett_lustre_ldlm_inodebits,
11056 &ett_lustre_ldlm_flock,
11057 &ett_lustre_ldlm_intent_opc,
11058 &ett_lustre_ldlm_resource_desc,
11059 &ett_lustre_ldlm_lock_desc,
11060 &ett_lustre_ldlm_request,
11061 &ett_lustre_lustre_handle,
11062 &ett_lustre_ldlm_reply,
11063 &ett_lustre_mgs_send_param,
11064 &ett_lustre_mgs_target_info,
11065 &ett_lustre_mgs_config_body,
11066 &ett_lustre_mgs_config_res,
11067 &ett_lustre_cfg_marker,
11068 &ett_lustre_llog_catid,
11069 &ett_lustre_llog_logid,
11070 &ett_lustre_lov_mds_md,
11071 &ett_lustre_llog_rec_hdr,
11072 &ett_lustre_llog_rec_tail,
11073 &ett_lustre_llog_logid_rec,
11074 &ett_lustre_llog_unlink_rec,
11075 &ett_lustre_llog_setattr_rec,
11076 &ett_lustre_llog_size_change_rec,
11077 &ett_lustre_llog_gen,
11078 &ett_lustre_llog_gen_rec,
11079 &ett_lustre_llog_log_hdr,
11080 &ett_lustre_llog_cookie,
11081 &ett_lustre_llogd_body,
11082 &ett_lustre_llogd_conn_body,
11084 &ett_lustre_ost_body,
11085 &ett_lustre_qunit_data,
11086 &ett_lustre_qunit_data_old2,
11087 &ett_lustre_qunit_data_old,
11088 &ett_lustre_ldlm_lock_flags,
11089 &ett_lustre_llog_log_llh_flags,
11090 &ett_lustre_seq_range,
11091 &ett_lustre_fld_range,
11092 &ett_lustre_mdt_ioepoch,
11097 proto_lustre = proto_register_protocol("Lustre", "lustre", "lustre");
11098 proto_register_field_array(proto_lustre, hf, array_length (hf));
11099 proto_register_subtree_array(ett, array_length(ett));
11103 void proto_reg_handoff_lustre(void)
11105 dissector_handle_t lustre_handle;
11106 lustre_handle=create_dissector_handle(dissect_lustre, proto_lustre);
11107 /* we use Lustre only if we get ptl_index = One of this code (we have removed the bulk code) */
11108 /* in LNET we test if the message is a put or not before adding an lnet.ptl_index value */
11109 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
11110 dissector_add("lnet.ptl_index", CONNMGR_REQUEST_PORTAL , lustre_handle);
11111 dissector_add("lnet.ptl_index", CONNMGR_REPLY_PORTAL , lustre_handle);
11112 dissector_add("lnet.ptl_index", OSC_REPLY_PORTAL , lustre_handle);
11113 dissector_add("lnet.ptl_index", OST_IO_PORTAL , lustre_handle);
11114 dissector_add("lnet.ptl_index", OST_CREATE_PORTAL , lustre_handle);
11115 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
11116 dissector_add("lnet.ptl_index", MDS_REQUEST_PORTAL , lustre_handle);
11117 dissector_add("lnet.ptl_index", LDLM_CB_REQUEST_PORTAL , lustre_handle);
11118 dissector_add("lnet.ptl_index", LDLM_CB_REPLY_PORTAL , lustre_handle);
11119 dissector_add("lnet.ptl_index", LDLM_CANCEL_REQUEST_PORTAL, lustre_handle);
11120 dissector_add("lnet.ptl_index", LDLM_CANCEL_REPLY_PORTAL , lustre_handle);
11121 dissector_add("lnet.ptl_index", MDS_SETATTR_PORTAL , lustre_handle);
11122 dissector_add("lnet.ptl_index", MDS_READPAGE_PORTAL , lustre_handle);
11123 dissector_add("lnet.ptl_index", MGC_REPLY_PORTAL , lustre_handle);
11124 dissector_add("lnet.ptl_index", MGS_REQUEST_PORTAL , lustre_handle);
11125 dissector_add("lnet.ptl_index", MGS_REPLY_PORTAL , lustre_handle);
11126 dissector_add("lnet.ptl_index", OST_REQUEST_PORTAL , lustre_handle);
11127 dissector_add("lnet.ptl_index", FLD_REQUEST_PORTAL, lustre_handle);
11128 dissector_add("lnet.ptl_index", SEQ_METADATA_PORTAL, lustre_handle);
11129 dissector_add("lnet.ptl_index", SEQ_DATA_PORTAL, lustre_handle);
11130 dissector_add("lnet.ptl_index", SEQ_CONTROLLER_PORTAL, lustre_handle);