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>
40 #include "lustre_dlm_flags.h"
42 const true_false_string lnet_flags_set_truth = { "Set", "Unset" };
44 /* --------------------------------------------------------------------------------------- */
45 /* def and macro to know where we are the the lustre payload */
46 #define LUSTRE_MAGIC_OFFSET 8
47 #define LUSTRE_MSG_MAGIC_V1 0x0BD00BD0
48 #define LUSTRE_MSG_MAGIC_V2 0x0BD00BD3
50 #define LUSTRE_BUFCOUNT_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 0 : 60)
51 #define LUSTRE_BUFCOUNT ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) \
52 ? (tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)) : ((tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF))) )
53 /* remark : BUFLENOFF don't have the same meaning if it's for v1 or v2
54 * v1 : LUSTRE_BUFLEN_OFF = offset buflen[0] - 4 bytes.
55 * v2 : LUSTRE_BUFLEN_OFF = offset buflen[0]
57 #define LUSTRE_BUFLEN_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 32 : 60)
59 /* LUSTRE_BUFFER_LEN(buffnum) */
60 #define LUSTRE_BUFFER_LEN(_n) (LUSTRE_BUFCOUNT <= (_n) ? 0 \
61 : tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+\
62 sizeof(guint32)*(_n)))
64 #define LUSTRE_REQ_REC_OFF 1 /* normal request record offset */
65 #define LUSTRE_REPLY_REC_OFF 1 /* normal reply record offset */
67 #define LUSTRE_DLM_INTENT_IT_OFF 2 /* intent lock it offset */
68 #define LUSTRE_DLM_INTENT_REC_OFF 3 /* intent lock record offset */
69 #define LUSTRE_DLM_LOCKREPLY_OFF 1 /* lockrep offset */
70 #define LUSTRE_DLM_REPLY_REC_OFF 2 /* reply record offset */
71 /* --------------------------------------------------------------------------------------- */
74 #define LUSTRE_PTLRPC_MSG_VERSION 0x00000003
75 #define LUSTRE_VERSION_MASK 0xffff0000
76 #define LUSTRE_OBD_VERSION 0x00010000
77 #define LUSTRE_MDS_VERSION 0x00020000
78 #define LUSTRE_OST_VERSION 0x00030000
79 #define LUSTRE_DLM_VERSION 0x00040000
80 #define LUSTRE_LOG_VERSION 0x00050000
81 #define LUSTRE_MGS_VERSION 0x00060000
85 #define LOV_MAGIC_V1 0x0BD10BD0
86 #define LOV_MAGIC LOV_MAGIC_V1
87 #define LOV_MAGIC_JOIN_V1 0x0BD20BD0
89 /* defined in lustre/include/lustre/lustre_idl.h */
91 CONNMGR_REQUEST_PORTAL = 1,
92 CONNMGR_REPLY_PORTAL = 2,
93 OSC_REQUEST_PORTAL = 3,
97 OST_CREATE_PORTAL = 7,
99 MDC_REQUEST_PORTAL = 9,
100 MDC_REPLY_PORTAL = 10,
101 MDC_BULK_PORTAL = 11,
102 MDS_REQUEST_PORTAL = 12,
103 MDS_REPLY_PORTAL = 13,
104 MDS_BULK_PORTAL = 14,
105 LDLM_CB_REQUEST_PORTAL = 15,
106 LDLM_CB_REPLY_PORTAL = 16,
107 LDLM_CANCEL_REQUEST_PORTAL = 17,
108 LDLM_CANCEL_REPLY_PORTAL = 18,
109 PTLBD_REQUEST_PORTAL = 19,
110 PTLBD_REPLY_PORTAL = 20,
111 PTLBD_BULK_PORTAL = 21,
112 MDS_SETATTR_PORTAL = 22,
113 MDS_READPAGE_PORTAL = 23,
115 MGC_REPLY_PORTAL = 25,
116 MGS_REQUEST_PORTAL = 26,
117 MGS_REPLY_PORTAL = 27,
118 OST_REQUEST_PORTAL = 28,
119 FLD_REQUEST_PORTAL = 29,
120 SEQ_METADATA_PORTAL = 30,
121 SEQ_DATA_PORTAL = 31,
122 SEQ_CONTROLLER_PORTAL = 32,
126 static const value_string portal_indices[] = {
127 { CONNMGR_REQUEST_PORTAL, "CONNMGR_REQUEST_PORTAL"},
128 { CONNMGR_REPLY_PORTAL , "CONNMGR_REPLY_PORTAL"},
129 { OSC_REQUEST_PORTAL , "OSC_REQUEST_PORTAL(obsolete)"},
130 { OSC_REPLY_PORTAL , "OSC_REPLY_PORTAL"},
131 { OSC_BULK_PORTAL , "OSC_BULK_PORTAL(obsolete)"},
132 { OST_IO_PORTAL , "OST_IO_PORTAL"},
133 { OST_CREATE_PORTAL , "OST_CREATE_PORTAL"},
134 { OST_BULK_PORTAL , "OST_BULK_PORTAL"},
135 { MDC_REQUEST_PORTAL , "MDC_REQUEST_PORTAL(obsolete)"},
136 { MDC_REPLY_PORTAL , "MDC_REPLY_PORTAL"},
137 { MDC_BULK_PORTAL , "MDC_BULK_PORTAL(obsolete)"},
138 { MDS_REQUEST_PORTAL , "MDS_REQUEST_PORTAL"},
139 { MDS_REPLY_PORTAL , "MDS_REPLY_PORTAL(obsolete)"},
140 { MDS_BULK_PORTAL , "MDS_BULK_PORTAL"},
141 { LDLM_CB_REQUEST_PORTAL , "LDLM_CB_REQUEST_PORTAL"},
142 { LDLM_CB_REPLY_PORTAL , "LDLM_CB_REPLY_PORTAL"},
143 { LDLM_CANCEL_REQUEST_PORTAL , "LDLM_CANCEL_REQUEST_PORTAL"},
144 { LDLM_CANCEL_REPLY_PORTAL , "LDLM_CANCEL_REPLY_PORTAL"},
145 { PTLBD_REQUEST_PORTAL , "PTLBD_REQUEST_PORTAL(obsolete)"},
146 { PTLBD_REPLY_PORTAL , "PTLBD_REPLY_PORTAL(obsolete)"},
147 { PTLBD_BULK_PORTAL , "PTLBD_BULK_PORTAL(obsolete)"},
148 { MDS_SETATTR_PORTAL , "MDS_SETATTR_PORTAL"},
149 { MDS_READPAGE_PORTAL , "MDS_READPAGE_PORTAL"},
150 { MDS_MDS_PORTAL, "MDS_MDS_PORTAL"},
151 { MGC_REPLY_PORTAL , "MGC_REPLY_PORTAL"},
152 { MGS_REQUEST_PORTAL , "MGS_REQUEST_PORTAL"},
153 { MGS_REPLY_PORTAL , "MGS_REPLY_PORTAL"},
154 { OST_REQUEST_PORTAL , "OST_REQUEST_PORTAL"},
155 { FLD_REQUEST_PORTAL , "FLD_REQUEST_PORTAL"},
156 { SEQ_METADATA_PORTAL, "SEQ_METADATA_PORTAL"},
157 { SEQ_DATA_PORTAL, "SEQ_DATA_PORTAL"},
158 { SEQ_CONTROLLER_PORTAL, "SEQ_CONTROLLER_PORTAL"},
159 { MGS_BULK_PORTAL, "MGS_BULK_PORTAL"}
163 OST_REPLY = 0, /* reply ? */
177 /* OST_SAN_READ = 14, deprecated */
178 /* OST_SAN_WRITE = 15, deprecated */
183 OST_QUOTA_ADJUST_QUNIT = 20,
194 #define OBD_FIRST_OPC OBD_PING
196 /* must be coherent with same declaration
197 * in lustre/include/lustre/lustre_idl.h
201 MDS_GETATTR_NAME = 34,
212 MDS_DONE_WRITING = 45,
221 MDS_HSM_STATE_GET = 54,
222 MDS_HSM_STATE_SET = 55,
224 MDS_HSM_PROGRESS = 57,
225 MDS_HSM_REQUEST = 58,
226 MDS_HSM_CT_REGISTER = 59,
227 MDS_HSM_CT_UNREGISTER = 60,
228 MDS_SWAP_LAYOUTS = 61,
232 #define IT_OPEN 0x0001
233 #define IT_CREAT 0x0002
234 #define IT_READDIR 0x0004
235 #define IT_GETATTR 0x0008
236 #define IT_LOOKUP 0x0010
237 #define IT_UNLINK 0x0020
238 #define IT_GETXATTR 0x0040
239 #define IT_EXEC 0x0080
240 #define IT_PIN 0x0100
244 #define MDS_FIRST_OPC MDS_GETATTR
245 #define LDLM_FIRST_OPC LDLM_ENQUEUE
264 LDLM_BL_CALLBACK = 104,
265 LDLM_CP_CALLBACK = 105,
266 LDLM_GL_CALLBACK = 106,
269 #define LDLM_FIRST_OPC LDLM_ENQUEUE
274 SEQ_FIRST_OPC = SEQ_QUERY
280 FLD_FIRST_OPC = FLD_QUERY
283 #define LDLM_ENQUEUE (101)
284 #define LDLM_CONVERT (102)
285 #define LDLM_CANCEL (103)
286 #define LDLM_BL_CALLBACK (104)
287 #define LDLM_CP_CALLBACK (105)
288 #define LDLM_GL_CALLBACK (106)
289 #define LCK_MINMODE (0)
296 #define LCK_GROUP (64)
297 #define LDLM_PLAIN (10)
298 #define LDLM_EXTENT (11)
299 #define LDLM_FLOCK (12)
300 #define LDLM_IBITS (13)
301 //#define MGS_CONNECT (250)
302 #define OBD_PING (400)
305 * Opcodes for mountconf (mgs and mgc)
310 MGS_EXCEPTION, /* node died, etc. */
311 MGS_TARGET_REG, /* whenever target starts up */
317 #define MGS_FIRST_OPC MGS_CONNECT
321 LLOG_ORIGIN_HANDLE_CREATE = 501,
322 LLOG_ORIGIN_HANDLE_NEXT_BLOCK = 502,
323 LLOG_ORIGIN_HANDLE_READ_HEADER = 503,
324 LLOG_ORIGIN_HANDLE_WRITE_REC = 504,
325 LLOG_ORIGIN_HANDLE_CLOSE = 505,
326 LLOG_ORIGIN_CONNECT = 506,
327 LLOG_CATINFO = 507, /* for lfs catinfo */
328 LLOG_ORIGIN_HANDLE_PREV_BLOCK = 508,
329 LLOG_ORIGIN_HANDLE_DESTROY = 509, /* for destroy llog object*/
333 #define LLOG_FIRST_OPC LLOG_ORIGIN_HANDLE_CREATE
334 /*flag for the LLOG*/
335 #define LLOG_OP_MAGIC 0x10600000
336 #define LLOG_OP_MASK 0xfff00000
339 LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000,
340 OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00,
341 OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000,
342 MDS_UNLINK_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_UNLINK,
343 MDS_SETATTR_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_SETATTR,
344 OBD_CFG_REC = LLOG_OP_MAGIC | 0x20000,
345 PTL_CFG_REC = LLOG_OP_MAGIC | 0x30000, /* obsolete */
346 LLOG_GEN_REC = LLOG_OP_MAGIC | 0x40000,
347 LLOG_JOIN_REC = LLOG_OP_MAGIC | 0x50000, /* obsolete */
348 LLOG_HDR_MAGIC = LLOG_OP_MAGIC | 0x45539,
349 LLOG_LOGID_MAGIC = LLOG_OP_MAGIC | 0x4553b,
353 /*defined in lustre/include/lustre/lustre_idl.h*/
354 #define LLOG_F_ZAP_WHEN_EMPTY 0x1
355 #define LLOG_F_IS_CAT 0x2
356 #define LLOG_F_IS_PLAIN 0x4
358 #define PTL_RPC_MSG_REQUEST 4711
359 #define PTL_RPC_MSG_ERR 4712
360 #define PTL_RPC_MSG_REPLY 4713
363 /* Ett declarations */
364 static gint ett_lustre_llog_log_llh_flags = -1 ;
365 static gint ett_lustre = -1;
366 static gint ett_lustre_lustre_handle_cookie = -1;
367 static gint ett_lustre_lustre_msg_v1 = -1;
368 static gint ett_lustre_lustre_handle_v1 = -1;
369 static gint ett_lustre_lustre_msg_v2 = -1;
370 static gint ett_lustre_ptlrpc_body = -1;
371 static gint ett_lustre_lustre_handle_v2 = -1;
372 static gint ett_lustre_obd_connect_data = -1;
373 static gint ett_lustre_lov_mds_md_v1 = -1;
374 static gint ett_lustre_lov_ost_data_v1 = -1;
375 static gint ett_lustre_obd_statfs = -1;
376 static gint ett_lustre_obd_ioobj = -1;
377 static gint ett_lustre_niobuf_remote = -1;
378 static gint ett_lustre_ost_lvb = -1;
379 static gint ett_lustre_ll_fid = -1;
380 static gint ett_lustre_mdt_body = -1;
381 static gint ett_lustre_mdt_rec_setattr = -1;
382 static gint ett_lustre_mdt_rec_create = -1;
383 static gint ett_lustre_mdt_rec_link = -1;
384 static gint ett_lustre_mdt_rec_unlink = -1;
385 static gint ett_lustre_mdt_rec_rename = -1;
386 static gint ett_lustre_mdt_rec_setxattr = -1;
387 static gint ett_lustre_obd_quotactl = -1;
388 static gint ett_lustre_obd_dqinfo = -1;
389 static gint ett_lustre_obd_dqblk = -1;
390 static gint ett_lustre_quota_adjust_qunit = -1;
391 static gint ett_lustre_lov_desc = -1;
392 static gint ett_lustre_obd_uuid = -1;
393 static gint ett_lustre_ldlm_res_id = -1;
394 static gint ett_lustre_ldlm_extent = -1;
395 static gint ett_lustre_ldlm_inodebits = -1;
396 static gint ett_lustre_ldlm_flock = -1;
397 static gint ett_lustre_ldlm_intent_opc = -1;
398 static gint ett_lustre_ldlm_resource_desc = -1;
399 static gint ett_lustre_ldlm_lock_desc = -1;
400 static gint ett_lustre_ldlm_request = -1;
401 static gint ett_lustre_lustre_handle = -1;
402 static gint ett_lustre_ldlm_reply = -1;
403 static gint ett_lustre_mgs_send_param = -1;
404 static gint ett_lustre_mgs_target_info = -1;
405 static gint ett_lustre_mgs_config_body = -1;
406 static gint ett_lustre_mgs_config_res = -1;
407 static gint ett_lustre_cfg_marker = -1;
408 static gint ett_lustre_llog_catid = -1;
409 static gint ett_lustre_llog_rec_hdr = -1;
410 static gint ett_lustre_llog_logid_rec = -1;
411 static gint ett_lustre_llog_logid = -1;
412 static gint ett_lustre_llog_rec_tail = -1;
413 static gint ett_lustre_lov_mds_md = -1;
414 static gint ett_lustre_llog_unlink_rec = -1;
415 static gint ett_lustre_llog_setattr_rec = -1;
416 static gint ett_lustre_llog_size_change_rec = -1;
417 static gint ett_lustre_llog_gen_rec = -1;
418 static gint ett_lustre_llog_log_hdr = -1;
419 static gint ett_lustre_llog_cookie = -1;
420 static gint ett_lustre_llogd_body = -1;
421 static gint ett_lustre_llogd_conn_body = -1;
422 static gint ett_lustre_llog_gen = -1;
423 static gint ett_lustre_obdo = -1;
424 static gint ett_lustre_ost_body = -1;
425 static gint ett_lustre_qunit_data = -1;
426 static gint ett_lustre_qunit_data_old2 = -1;
427 static gint ett_lustre_qunit_data_old = -1;
428 static gint ett_lustre_ldlm_lock_flags = -1 ;
429 static gint ett_lustre_seq_range = -1;
430 static gint ett_lustre_fld_range = -1;
431 static gint ett_lustre_mdt_ioepoch = -1;
432 static gint ett_lustre_capa = -1;
433 static gint ett_lustre_acl = -1;
435 /* -----------------------------------------------*/
436 /* Header field declarations */
437 static int hf_lustre_ptlrpc_body_pb = -1 ;
438 static int hf_lustre_ost_body = -1 ;
439 static int hf_lustre_obd_statfs = -1 ;
440 static int hf_lustre_obd_quotactl = -1 ;
441 static int hf_lustre_quota_adjust_qunit = -1 ;
442 static int hf_lustre_extra_padding = -1 ;
443 static int hf_lustre_ldlm_reply = -1 ;
444 static int hf_lustre_ldlm_request = -1 ;
445 static int hf_lustre_obd_uuid = -1 ;
446 static int hf_lustre_obd_connect_data = -1 ;
447 static int hf_lustre_ldlm_intent = -1;
448 static int hf_lustre_obd_ioobj = -1 ;
449 static int hf_lustre_niobuf_remote = -1 ;
450 static int hf_lustre_ost_key = -1 ;
451 static int hf_lustre_nio= -1 ;
452 static int hf_lustre_ost_val= -1;
453 static int hf_lustre_llogd_body = -1;
454 static int hf_lustre_llogd_log_hdr= -1;
455 static int hf_lustre_llog_logid_rec =-1 ;
456 static int hf_lustre_llogd_chunk= -1;
457 static int hf_lustre_llogd_keyword= -1;
458 static int hf_lustre_llogd_client= -1;
459 static int hf_lustre_llogd_name= -1;
461 static int hf_lustre_mds_xattr_name = -1;
462 static int hf_lustre_lov_mds_md_v1= -1;
463 static int hf_lustre_llog_cookie= -1;
464 static int hf_lustre_mds_md_data= -1;
465 static int hf_lustre_mds_reint_opcode= -1;
466 static int hf_lustre_mds_xattr_eadata = -1;
468 static int hf_lustre_reint_name= -1;
469 static int hf_lustre_reint_old_name= -1;
470 static int hf_lustre_reint_new_name= -1;
472 static int hf_lustre_mgs_target_info = -1 ;
473 static int hf_lustre_mgs_send_param = -1;
475 static int hf_lustre_mgs_config_body = -1;
476 static int hf_lustre_mgs_config_body_name = -1;
477 static int hf_lustre_mgs_config_body_offset = -1;
478 static int hf_lustre_mgs_config_body_type = -1;
479 static int hf_lustre_mgs_config_body_reserved = -1;
480 static int hf_lustre_mgs_config_body_bits = -1;
481 static int hf_lustre_mgs_config_body_units = -1;
483 static int hf_lustre_mgs_config_res = -1;
484 static int hf_lustre_mgs_config_res_offset = -1;
485 static int hf_lustre_mgs_config_res_size = -1;
487 static int hf_lustre_ost_lvb = -1 ;
489 #define hf_lustre_ldlm_ast_discard_data hf_lustre_ldlm_fl_ast_discard_data
491 static int hf_lustre_mdt_body = -1 ;
492 static int hf_lustre_mdt_body_fid1 = -1;
493 static int hf_lustre_mdt_body_fid2 = -1;
494 static int hf_lustre_mdt_body_handle = -1;
495 static int hf_lustre_mdt_body_valid = -1;
496 static int hf_lustre_mdt_body_size = -1;
497 static int hf_lustre_mdt_body_mtime = -1;
498 static int hf_lustre_mdt_body_atime = -1;
499 static int hf_lustre_mdt_body_ctime = -1;
500 static int hf_lustre_mdt_body_blocks = -1;
501 static int hf_lustre_mdt_body_ioepoch = -1;
502 static int hf_lustre_mdt_body_ino = -1;
503 static int hf_lustre_mdt_body_fsuid = -1;
504 static int hf_lustre_mdt_body_fsgid = -1;
505 static int hf_lustre_mdt_body_capability = -1;
506 static int hf_lustre_mdt_body_mode = -1;
507 static int hf_lustre_mdt_body_uid = -1;
508 static int hf_lustre_mdt_body_gid = -1;
509 static int hf_lustre_mdt_body_flags = -1;
510 static int hf_lustre_mdt_body_rdev = -1;
511 static int hf_lustre_mdt_body_nlink = -1;
512 static int hf_lustre_mdt_body_generation = -1;
513 static int hf_lustre_mdt_body_suppgid = -1;
514 static int hf_lustre_mdt_body_eadatasize = -1;
515 static int hf_lustre_mdt_body_aclsize = -1;
516 static int hf_lustre_mdt_body_max_mdsize = -1;
517 static int hf_lustre_mdt_body_max_cookiesize = -1;
518 static int hf_lustre_mdt_body_uid_h = -1;
519 static int hf_lustre_mdt_body_gid_h = -1;
520 static int hf_lustre_mdt_body_padding_5 = -1;
521 static int hf_lustre_mdt_body_padding_6 = -1;
522 static int hf_lustre_mdt_body_padding_7 = -1;
523 static int hf_lustre_mdt_body_padding_8 = -1;
524 static int hf_lustre_mdt_body_padding_9 = -1;
525 static int hf_lustre_mdt_body_padding_10 = -1;
527 static int hf_lustre_mdt_rec_setattr = -1 ;
528 static int hf_lustre_mdt_rec_setattr_sa_opcode = -1;
529 static int hf_lustre_mdt_rec_setattr_sa_cap = -1;
530 static int hf_lustre_mdt_rec_setattr_sa_fsuid = -1;
531 static int hf_lustre_mdt_rec_setattr_sa_fsuid_h = -1;
532 static int hf_lustre_mdt_rec_setattr_sa_fsgid = -1;
533 static int hf_lustre_mdt_rec_setattr_sa_fsgid_h = -1;
534 static int hf_lustre_mdt_rec_setattr_sa_suppgid = -1;
535 static int hf_lustre_mdt_rec_setattr_sa_suppgid_h = -1;
536 static int hf_lustre_mdt_rec_setattr_sa_padding_1 = -1;
537 static int hf_lustre_mdt_rec_setattr_sa_padding_1_h = -1;
538 static int hf_lustre_mdt_rec_setattr_sa_fid = -1;
539 static int hf_lustre_mdt_rec_setattr_sa_valid = -1;
540 static int hf_lustre_mdt_rec_setattr_sa_uid = -1;
541 static int hf_lustre_mdt_rec_setattr_sa_gid = -1;
542 static int hf_lustre_mdt_rec_setattr_sa_size = -1;
543 static int hf_lustre_mdt_rec_setattr_sa_blocks = -1;
544 static int hf_lustre_mdt_rec_setattr_sa_mtime = -1;
545 static int hf_lustre_mdt_rec_setattr_sa_atime = -1;
546 static int hf_lustre_mdt_rec_setattr_sa_ctime = -1;
547 static int hf_lustre_mdt_rec_setattr_sa_attr_flags = -1;
548 static int hf_lustre_mdt_rec_setattr_sa_mode = -1;
549 static int hf_lustre_mdt_rec_setattr_sa_padding_2 = -1;
550 static int hf_lustre_mdt_rec_setattr_sa_padding_3 = -1;
551 static int hf_lustre_mdt_rec_setattr_sa_padding_4 = -1;
552 static int hf_lustre_mdt_rec_setattr_sa_padding_5 = -1;
554 static int hf_lustre_mdt_rec_create = -1 ;
555 static int hf_lustre_mdt_rec_create_cr_opcode = -1;
556 static int hf_lustre_mdt_rec_create_cr_cap = -1;
557 static int hf_lustre_mdt_rec_create_cr_fsuid = -1;
558 static int hf_lustre_mdt_rec_create_cr_fsuid_h = -1;
559 static int hf_lustre_mdt_rec_create_cr_fsgid = -1;
560 static int hf_lustre_mdt_rec_create_cr_fsgid_h = -1;
561 static int hf_lustre_mdt_rec_create_cr_suppgid1 = -1;
562 static int hf_lustre_mdt_rec_create_cr_suppgid1_h = -1;
563 static int hf_lustre_mdt_rec_create_cr_suppgid2 = -1;
564 static int hf_lustre_mdt_rec_create_cr_suppgid2_h = -1;
565 static int hf_lustre_mdt_rec_create_cr_fid1 = -1;
566 static int hf_lustre_mdt_rec_create_cr_fid2 = -1;
567 static int hf_lustre_mdt_rec_create_cr_old_handle = -1;
568 static int hf_lustre_mdt_rec_create_cr_time = -1;
569 static int hf_lustre_mdt_rec_create_cr_rdev = -1;
570 static int hf_lustre_mdt_rec_create_cr_ioepoch = -1;
571 static int hf_lustre_mdt_rec_create_cr_padding_1 = -1;
572 static int hf_lustre_mdt_rec_create_cr_mode = -1;
573 static int hf_lustre_mdt_rec_create_cr_bias = -1;
574 static int hf_lustre_mdt_rec_create_cr_flags_l = -1;
575 static int hf_lustre_mdt_rec_create_cr_flags_h = -1;
576 static int hf_lustre_mdt_rec_create_cr_umask = -1;
577 static int hf_lustre_mdt_rec_create_cr_padding_4 = -1;
579 static int hf_lustre_mdt_rec_link = -1 ;
580 static int hf_lustre_mdt_rec_link_lk_opcode = -1;
581 static int hf_lustre_mdt_rec_link_lk_cap = -1;
582 static int hf_lustre_mdt_rec_link_lk_fsuid = -1;
583 static int hf_lustre_mdt_rec_link_lk_fsuid_h = -1;
584 static int hf_lustre_mdt_rec_link_lk_fsgid = -1;
585 static int hf_lustre_mdt_rec_link_lk_fsgid_h = -1;
586 static int hf_lustre_mdt_rec_link_lk_suppgid1 = -1;
587 static int hf_lustre_mdt_rec_link_lk_suppgid1_h = -1;
588 static int hf_lustre_mdt_rec_link_lk_suppgid2 = -1;
589 static int hf_lustre_mdt_rec_link_lk_suppgid2_h = -1;
590 static int hf_lustre_mdt_rec_link_lk_fid1 = -1;
591 static int hf_lustre_mdt_rec_link_lk_fid2 = -1;
592 static int hf_lustre_mdt_rec_link_lk_time = -1;
593 static int hf_lustre_mdt_rec_link_lk_padding_1 = -1;
594 static int hf_lustre_mdt_rec_link_lk_padding_2 = -1;
595 static int hf_lustre_mdt_rec_link_lk_padding_3 = -1;
596 static int hf_lustre_mdt_rec_link_lk_padding_4 = -1;
597 static int hf_lustre_mdt_rec_link_lk_bias = -1;
598 static int hf_lustre_mdt_rec_link_lk_padding_5 = -1;
599 static int hf_lustre_mdt_rec_link_lk_padding_6 = -1;
600 static int hf_lustre_mdt_rec_link_lk_padding_7 = -1;
601 static int hf_lustre_mdt_rec_link_lk_padding_8 = -1;
602 static int hf_lustre_mdt_rec_link_lk_padding_9 = -1;
604 static int hf_lustre_mdt_rec_unlink = -1 ;
605 static int hf_lustre_mdt_rec_unlink_ul_opcode = -1;
606 static int hf_lustre_mdt_rec_unlink_ul_cap = -1;
607 static int hf_lustre_mdt_rec_unlink_ul_fsuid = -1;
608 static int hf_lustre_mdt_rec_unlink_ul_fsuid_h = -1;
609 static int hf_lustre_mdt_rec_unlink_ul_fsgid = -1;
610 static int hf_lustre_mdt_rec_unlink_ul_fsgid_h = -1;
611 static int hf_lustre_mdt_rec_unlink_ul_suppgid1 = -1;
612 static int hf_lustre_mdt_rec_unlink_ul_suppgid1_h = -1;
613 static int hf_lustre_mdt_rec_unlink_ul_suppgid2 = -1;
614 static int hf_lustre_mdt_rec_unlink_ul_suppgid2_h = -1;
615 static int hf_lustre_mdt_rec_unlink_ul_fid1 = -1;
616 static int hf_lustre_mdt_rec_unlink_ul_fid2 = -1;
617 static int hf_lustre_mdt_rec_unlink_ul_time = -1;
618 static int hf_lustre_mdt_rec_unlink_ul_padding_2 = -1;
619 static int hf_lustre_mdt_rec_unlink_ul_padding_3 = -1;
620 static int hf_lustre_mdt_rec_unlink_ul_padding_4 = -1;
621 static int hf_lustre_mdt_rec_unlink_ul_padding_5 = -1;
622 static int hf_lustre_mdt_rec_unlink_ul_bias = -1;
623 static int hf_lustre_mdt_rec_unlink_ul_mode = -1;
624 static int hf_lustre_mdt_rec_unlink_ul_padding_6 = -1;
625 static int hf_lustre_mdt_rec_unlink_ul_padding_7 = -1;
626 static int hf_lustre_mdt_rec_unlink_ul_padding_8 = -1;
627 static int hf_lustre_mdt_rec_unlink_ul_padding_9 = -1;
629 static int hf_lustre_mdt_rec_rename = -1 ;
630 static int hf_lustre_mdt_rec_rename_rn_opcode = -1;
631 static int hf_lustre_mdt_rec_rename_rn_cap = -1;
632 static int hf_lustre_mdt_rec_rename_rn_fsuid = -1;
633 static int hf_lustre_mdt_rec_rename_rn_fsuid_h = -1;
634 static int hf_lustre_mdt_rec_rename_rn_fsgid = -1;
635 static int hf_lustre_mdt_rec_rename_rn_fsgid_h = -1;
636 static int hf_lustre_mdt_rec_rename_rn_suppgid1 = -1;
637 static int hf_lustre_mdt_rec_rename_rn_suppgid1_h = -1;
638 static int hf_lustre_mdt_rec_rename_rn_suppgid2 = -1;
639 static int hf_lustre_mdt_rec_rename_rn_suppgid2_h = -1;
640 static int hf_lustre_mdt_rec_rename_rn_fid1 = -1;
641 static int hf_lustre_mdt_rec_rename_rn_fid2 = -1;
642 static int hf_lustre_mdt_rec_rename_rn_time = -1;
643 static int hf_lustre_mdt_rec_rename_rn_padding_1 = -1;
644 static int hf_lustre_mdt_rec_rename_rn_padding_2 = -1;
645 static int hf_lustre_mdt_rec_rename_rn_padding_3 = -1;
646 static int hf_lustre_mdt_rec_rename_rn_padding_4 = -1;
647 static int hf_lustre_mdt_rec_rename_rn_bias = -1;
648 static int hf_lustre_mdt_rec_rename_rn_mode = -1;
649 static int hf_lustre_mdt_rec_rename_rn_padding_5 = -1;
650 static int hf_lustre_mdt_rec_rename_rn_padding_6 = -1;
651 static int hf_lustre_mdt_rec_rename_rn_padding_7 = -1;
652 static int hf_lustre_mdt_rec_rename_rn_padding_8 = -1;
654 static int hf_lustre_mdt_rec_setxattr = -1 ;
655 static int hf_lustre_mdt_rec_setxattr_sx_opcode = -1;
656 static int hf_lustre_mdt_rec_setxattr_sx_cap = -1;
657 static int hf_lustre_mdt_rec_setxattr_sx_fsuid = -1;
658 static int hf_lustre_mdt_rec_setxattr_sx_fsuid_h = -1;
659 static int hf_lustre_mdt_rec_setxattr_sx_fsgid = -1;
660 static int hf_lustre_mdt_rec_setxattr_sx_fsgid_h = -1;
661 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1 = -1;
662 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1_h = -1;
663 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2 = -1;
664 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2_h = -1;
665 static int hf_lustre_mdt_rec_setxattr_sx_fid = -1;
666 static int hf_lustre_mdt_rec_setxattr_sx_padding_1 = -1;
667 static int hf_lustre_mdt_rec_setxattr_sx_padding_2 = -1;
668 static int hf_lustre_mdt_rec_setxattr_sx_padding_3 = -1;
669 static int hf_lustre_mdt_rec_setxattr_sx_valid = -1;
670 static int hf_lustre_mdt_rec_setxattr_sx_time = -1;
671 static int hf_lustre_mdt_rec_setxattr_sx_padding_5 = -1;
672 static int hf_lustre_mdt_rec_setxattr_sx_padding_6 = -1;
673 static int hf_lustre_mdt_rec_setxattr_sx_padding_7 = -1;
674 static int hf_lustre_mdt_rec_setxattr_sx_size = -1;
675 static int hf_lustre_mdt_rec_setxattr_sx_flags = -1;
676 static int hf_lustre_mdt_rec_setxattr_sx_padding_8 = -1;
677 static int hf_lustre_mdt_rec_setxattr_sx_padding_9 = -1;
678 static int hf_lustre_mdt_rec_setxattr_sx_padding_10 = -1;
679 static int hf_lustre_mdt_rec_setxattr_sx_padding_11 = -1;
681 static int hf_lustre_seq_opc = -1;
682 static int hf_lustre_seq_range = -1;
683 static int hf_lustre_seq_range_start = -1;
684 static int hf_lustre_seq_range_end = -1;
685 static int hf_lustre_seq_range_index = -1;
686 static int hf_lustre_seq_range_flags = -1;
688 static int hf_lustre_fld_opc = -1;
689 static int hf_lustre_fld_range = -1;
690 static int hf_lustre_fld_range_start = -1;
691 static int hf_lustre_fld_range_end = -1;
692 static int hf_lustre_fld_range_index = -1;
693 static int hf_lustre_fld_range_flags = -1;
695 static int hf_lustre_mdt_ioepoch = -1;
696 static int hf_lustre_mdt_ioepoch_handle = -1;
697 static int hf_lustre_mdt_ioepoch_ioepoch = -1;
698 static int hf_lustre_mdt_ioepoch_flags = -1;
699 static int hf_lustre_mdt_ioepoch_padding = -1;
701 static int hf_lustre_capa = -1;
702 static int hf_lustre_capa_fid = -1;
703 static int hf_lustre_capa_opc = -1;
704 static int hf_lustre_capa_uid = -1;
705 static int hf_lustre_capa_gid = -1;
706 static int hf_lustre_capa_flags = -1;
707 static int hf_lustre_capa_keyid = -1;
708 static int hf_lustre_capa_timeout = -1;
709 static int hf_lustre_capa_expiry = -1;
710 static int hf_lustre_capa_hmac = -1;
712 static int hf_lustre_acl = -1;
714 static int hf_lustre_lustre_handle_cookie = -1;
715 static int hf_lustre_ptlrpc_body_pb_last_committed = -1;
716 static int hf_lustre_ptlrpc_body_pb_version = -1;
717 static int hf_lustre_lustre_msg_v1_lm_bufcount = -1;
718 static int hf_lustre_obd_ioobj_ioo_id = -1;
719 static int hf_lustre_ptlrpc_body_pb_slv = -1;
720 static int hf_lustre_ptlrpc_body_pb_pre_version = -1;
721 static int hf_lustre_ptlrpc_body_pb_padding = -1;
722 static int hf_lustre_ptlrpc_body_pb_jobid = -1;
723 static int hf_lustre_lustre_msg_v1_lm_handle = -1;
724 static int hf_lustre_ost_lvb_lvb_atime = -1;
725 static int hf_lustre_ptlrpc_body_pb_timeout = -1;
726 static int hf_lustre_obd_statfs_os_bavail = -1;
727 static int hf_lustre_obd_statfs_os_bsize = -1;
728 static int hf_lustre_lustre_msg_v2_lm_repsize = -1;
729 static int hf_lustre_lov_mds_md_v1_lmm_stripe_size = -1;
730 static int hf_lustre_lustre_msg_v1_lm_last_xid = -1;
731 static int hf_lustre_ll_fid_f_type = -1;
732 static int hf_lustre_lustre_msg_v2_lm_cksum = -1;
733 static int hf_lustre_lustre_msg_v2_lm_buflens = -1;
734 static int hf_lustre_lustre_msg_v1_lm_status = -1;
735 static int hf_lustre_lustre_msg_v1_lm_type = -1;
736 static int hf_lustre_niobuf_remote_len = -1;
737 static int hf_lustre_lov_mds_md_v1_lmm_magic = -1;
738 static int hf_lustre_ptlrpc_body_pb_op_flags = -1;
739 static int hf_lustre_ost_lvb_lvb_ctime = -1;
740 static int hf_lustre_ptlrpc_body_pb_type = -1;
741 static int hf_lustre_obd_connect_data_ocd_nllg = -1;
742 static int hf_lustre_obd_connect_data_ocd_nllu = -1;
743 static int hf_lustre_ll_fid_generation = -1;
744 static int hf_lustre_ost_lvb_lvb_mtime = -1;
745 static int hf_lustre_obd_connect_data_ocd_ibits_known = -1;
746 static int hf_lustre_lustre_msg_v2_lm_padding_3 = -1;
747 static int hf_lustre_ptlrpc_body_pb_flags = -1;
748 static int hf_lustre_obd_statfs_os_spare4 = -1;
749 static int hf_lustre_obd_connect_data_ocd_group = -1;
750 static int hf_lustre_lov_ost_data_v1_l_object_seq = -1;
751 static int hf_lustre_lov_mds_md_v1_lmm_object_seq = -1;
752 static int hf_lustre_obd_connect_data_ocd_brw_size = -1;
753 static int hf_lustre_ptlrpc_body_pb_limit = -1;
754 static int hf_lustre_obd_statfs_os_maxbytes = -1;
755 static int hf_lustre_obd_statfs_os_spare5 = -1;
756 static int hf_lustre_lustre_msg_v2_lm_flags = -1;
757 static int hf_lustre_obd_statfs_os_ffree = -1;
758 static int hf_lustre_obd_statfs_os_files = -1;
759 static int hf_lustre_lov_mds_md_v1_lmm_stripe_count = -1;
760 static int hf_lustre_lustre_msg_v1_lm_flags = -1;
761 static int hf_lustre_lustre_msg_v1_lm_last_committed = -1;
762 static int hf_lustre_obd_statfs_os_spare9 = -1;
763 static int hf_lustre_obd_connect_data_ocd_index = -1;
764 static int hf_lustre_opnum = -1;
765 static int hf_lustre_lustre_msg_v1_lm_buflens = -1;
766 static int hf_lustre_obd_statfs_os_spare1 = -1;
767 static int hf_lustre_obd_statfs_os_spare8 = -1;
768 static int hf_lustre_lustre_msg_v1_lm_conn_cnt = -1;
769 static int hf_lustre_ptlrpc_body_pb_transno = -1;
770 static int hf_lustre_ptlrpc_body_pb_service_time = -1;
771 static int hf_lustre_ptlrpc_body_pb_conn_cnt = -1;
772 static int hf_lustre_ptlrpc_body_pb_opc = -1;
773 static int hf_lustre_obd_connect_data_ocd_connect_flags = -1;
774 static int hf_lustre_lov_ost_data_v1_l_object_id = -1;
775 static int hf_lustre_lov_ost_data_v1_l_ost_gen = -1;
776 static int hf_lustre_obd_statfs_os_bfree = -1;
777 static int hf_lustre_obd_connect_data_ocd_version = -1;
778 static int hf_lustre_lov_mds_md_v1_lmm_objects = -1;
779 static int hf_lustre_obd_statfs_os_namelen = -1;
780 static int hf_lustre_obd_statfs_os_blocks = -1;
781 static int hf_lustre_lustre_msg_v2_lm_secflvr = -1;
782 static int hf_lustre_lustre_msg_v1_lm_transno = -1;
783 static int hf_lustre_lov_mds_md_v1_lmm_pattern = -1;
784 static int hf_lustre_lustre_msg_v1_lm_opc = -1;
785 static int hf_lustre_obd_connect_data_ocd_grant = -1;
786 static int hf_lustre_obd_ioobj_ioo_bufcnt = -1;
787 static int hf_lustre_lustre_msg_v1_lm_version = -1;
788 static int hf_lustre_obd_statfs_os_spare7 = -1;
789 static int hf_lustre_obd_statfs_os_fsid = -1;
790 static int hf_lustre_obd_connect_data_ocd_cksum_types = -1;
791 static int hf_lustre_ost_lvb_lvb_size = -1;
792 static int hf_lustre_obd_statfs_os_type = -1;
793 static int hf_lustre_obd_statfs_os_spare6 = -1;
794 static int hf_lustre_obd_statfs_os_state = -1;
795 static int hf_lustre_obd_statfs_os_spare3 = -1;
796 static int hf_lustre_lustre_msg_v2_lm_magic = -1;
797 static int hf_lustre_lov_mds_md_v1_lmm_object_id = -1;
798 static int hf_lustre_ptlrpc_body_pb_last_seen = -1;
799 static int hf_lustre_obd_ioobj_ioo_max_brw = -1;
800 static int hf_lustre_ptlrpc_body_pb_last_xid = -1;
801 static int hf_lustre_ptlrpc_body_pb_status = -1;
802 static int hf_lustre_niobuf_remote_flags = -1;
803 static int hf_lustre_ll_fid_id = -1;
804 static int hf_lustre_ost_lvb_lvb_blocks = -1;
805 static int hf_lustre_lustre_msg_v2_lm_padding_2 = -1;
806 static int hf_lustre_obd_connect_data_padding1 = -1;
807 static int hf_lustre_lov_ost_data_v1_l_ost_idx = -1;
808 static int hf_lustre_obd_connect_data_padding2 = -1;
809 static int hf_lustre_obd_ioobj_ioo_seq = -1;
810 static int hf_lustre_niobuf_remote_offset=-1;
811 static int hf_lustre_obd_statfs_os_spare2 = -1;
812 static int hf_lustre_lustre_msg_v2_lm_bufcount = -1;
813 static int hf_lustre_ptlrpc_body_pb_handle = -1;
814 static int hf_lustre_obd_connect_data_ocd_transno = -1;
815 static int hf_lustre_lustre_msg_v1_lm_magic = -1;
816 static int hf_lustre_llog_unlink_rec_lur_tail = -1;
817 static int hf_lustre_llog_size_change_rec_lsc_io_epoch = -1;
818 static int hf_lustre_mgs_target_info_mti_flags = -1;
819 static int hf_lustre_ldlm_reply_lock_policy_res1 = -1;
820 static int hf_lustre_llogd_body_lgd_len = -1;
821 static int hf_lustre_qunit_data_old_qd_id = -1;
822 static int hf_lustre_llog_logid_rec_padding1 = -1;
823 static int hf_lustre_quota_adjust_qunit_padding1 = -1;
824 static int hf_lustre_llog_size_change_rec_lsc_fid = -1;
825 static int hf_lustre_llog_rec_hdr_padding = -1;
826 static int hf_lustre_obdo_o_nlink = -1;
827 static int hf_lustre_ldlm_extent_gid = -1;
828 static int hf_lustre_obdo_o_uid = -1;
829 static int hf_lustre_obdo_o_valid = -1;
830 static int hf_lustre_ldlm_reply_lock_flags = -1;
831 static int hf_lustre_obdo_o_misc = -1;
833 static int hf_lustre_ldlm_request_lock_handle = -1;
834 static int hf_lustre_llog_logid_lgl_oid = -1;
835 static int hf_lustre_ldlm_inodebits_bits = -1;
836 static int hf_lustre_llog_log_hdr_llh_count = -1;
837 static int hf_lustre_llog_gen_rec_lgr_tail = -1;
838 static int hf_lustre_llog_catid_lci_padding3 = -1;
839 static int hf_lustre_qunit_data_qd_qunit = -1;
840 static int hf_lustre_llog_setattr_rec_padding = -1;
841 static int hf_lustre_llog_cookie_lgc_lgl = -1;
842 static int hf_lustre_obd_quotactl_qc_dqinfo = -1;
843 static int hf_lustre_llog_log_hdr_llh_bitmap = -1;
844 static int hf_lustre_obd_quotactl_qc_stat = -1;
845 static int hf_lustre_qunit_data_old2_qd_id = -1;
846 static int hf_lustre_llog_logid_rec_padding2 = -1;
847 static int hf_lustre_llog_logid_rec_padding5 = -1;
848 static int hf_lustre_ldlm_intent_opc = -1;
849 static int hf_lustre_llog_rec_hdr_lrh_type = -1;
850 static int hf_lustre_llog_rec_hdr_lrh_len = -1;
851 static int hf_lustre_llog_setattr_rec_lsr_uid = -1;
852 static int hf_lustre_lov_desc_ld_padding_1 = -1;
853 static int hf_lustre_obdo_o_padding_4 = -1;
854 static int hf_lustre_mgs_target_info_padding = -1;
855 static int hf_lustre_obd_quotactl_qc_dqblk = -1;
856 static int hf_lustre_llogd_conn_body_lgdc_gen = -1;
857 static int hf_lustre_llog_log_hdr_llh_tail = -1;
858 static int hf_lustre_obdo_o_size = -1;
859 static int hf_lustre_ldlm_extent_start = -1;
860 static int hf_lustre_llog_size_change_rec_lsc_hdr = -1;
861 static int hf_lustre_llog_logid_lgl_oseq = -1;
862 static int hf_lustre_llog_cookie_lgc_padding = -1;
863 static int hf_lustre_qunit_data_old_qd_type = -1;
864 static int hf_lustre_ldlm_flock_blocking_export = -1;
865 static int hf_lustre_lov_desc_ld_pattern = -1;
866 static int hf_lustre_qunit_data_qd_id = -1;
867 static int hf_lustre_mgs_target_info_mti_fsname = -1;
868 static int hf_lustre_ldlm_request_lock_flags = -1;
869 static int hf_lustre_obdo_o_mode = -1;
870 static int hf_lustre_mgs_target_info_mti_svname = -1;
871 static int hf_lustre_llogd_body_lgd_logid = -1;
872 static int hf_lustre_llog_log_hdr_llh_size = -1;
873 static int hf_lustre_obdo_o_handle = -1;
874 static int hf_lustre_obdo_o_atime = -1;
875 static int hf_lustre_quota_adjust_qunit_qaq_id = -1;
876 static int hf_lustre_ldlm_lock_desc_l_policy_data = -1;
877 static int hf_lustre_obd_quotactl_qc_cmd = -1;
878 static int hf_lustre_qunit_data_padding = -1;
879 static int hf_lustre_quota_adjust_qunit_qaq_flags = -1;
880 static int hf_lustre_ldlm_lock_desc_l_granted_mode = -1;
881 static int hf_lustre_obdo_o_seq = -1;
882 static int hf_lustre_obdo_o_gid = -1;
883 static int hf_lustre_llog_catid_lci_logid = -1;
884 static int hf_lustre_llog_rec_tail_lrt_index = -1;
885 static int hf_lustre_lov_desc_ld_default_stripe_count = -1;
886 static int hf_lustre_ldlm_resource_desc_lr_padding = -1;
887 static int hf_lustre_cfg_marker_cm_vers = -1;
888 static int hf_lustre_llog_unlink_rec_lur_hdr = -1;
889 static int hf_lustre_llogd_body_lgd_index = -1;
890 static int hf_lustre_cfg_marker_cm_tgtname = -1;
891 static int hf_lustre_llog_setattr_rec_lsr_ogen = -1;
892 static int hf_lustre_llog_logid_rec_lid_hdr = -1;
893 static int hf_lustre_obdo_o_ioepoch = -1;
894 static int hf_lustre_ost_body_oa = -1;
895 static int hf_lustre_llog_logid_rec_padding3 = -1;
896 static int hf_lustre_llog_log_hdr_llh_flags = -1;
897 static int hf_lustre_llog_setattr_rec_lsr_oid = -1;
898 static int hf_lustre_llog_size_change_rec_padding = -1;
899 static int hf_lustre_mgs_target_info_mti_config_ver = -1;
900 static int hf_lustre_cfg_marker_cm_createtime = -1;
901 static int hf_lustre_qunit_data_old_qd_count = -1;
902 static int hf_lustre_llog_catid_lci_padding1 = -1;
903 static int hf_lustre_lov_desc_ld_active_tgt_count = -1;
904 static int hf_lustre_obdo_o_lcookie = -1;
905 static int hf_lustre_llog_gen_rec_lgr_gen = -1;
906 static int hf_lustre_obdo_o_id = -1;
907 static int hf_lustre_mgs_target_info_mti_uuid = -1;
908 static int hf_lustre_llog_rec_hdr_lrh_index = -1;
909 static int hf_lustre_llog_setattr_rec_lsr_hdr = -1;
910 static int hf_lustre_mgs_target_info_mti_stripe_index = -1;
911 static int hf_lustre_llog_gen_conn_cnt = -1;
912 static int hf_lustre_obdo_o_padding_6 = -1;
913 static int hf_lustre_llog_cookie_lgc_index = -1;
914 static int hf_lustre_lov_desc_ld_uuid = -1;
915 static int hf_lustre_ldlm_reply_lock_desc = -1;
916 static int hf_lustre_lov_desc_ld_padding_0 = -1;
917 static int hf_lustre_llog_unlink_rec_lur_ogen = -1;
918 static int hf_lustre_cfg_marker_cm_flags = -1;
919 static int hf_lustre_obdo_o_padding_3 = -1;
920 static int hf_lustre_ldlm_request_lock_desc = -1;
921 static int hf_lustre_obdo_o_flags = -1;
922 static int hf_lustre_mgs_target_info_mti_params = -1;
923 static int hf_lustre_llog_logid_lgl_ogen = -1;
924 static int hf_lustre_cfg_marker_cm_comment = -1;
925 static int hf_lustre_llog_unlink_rec_lur_oid = -1;
926 static int hf_lustre_qunit_data_qd_count = -1;
927 static int hf_lustre_obdo_o_mtime = -1;
928 static int hf_lustre_obdo_o_blksize = -1;
929 static int hf_lustre_ldlm_res_id_name = -1;
930 static int hf_lustre_ldlm_reply_lock_handle = -1;
931 static int hf_lustre_llogd_body_lgd_saved_index = -1;
932 static int hf_lustre_qunit_data_old_qd_isblk = -1;
933 static int hf_lustre_obdo_o_blocks = -1;
934 static int hf_lustre_lov_desc_ld_padding_2 = -1;
935 static int hf_lustre_llog_logid_rec_lid_tail = -1;
936 static int hf_lustre_obdo_o_grant = -1;
937 static int hf_lustre_obdo_o_uid_h = -1;
938 static int hf_lustre_obdo_o_gid_h = -1;
939 static int hf_lustre_quota_adjust_qunit_qaq_iunit_sz = -1;
940 static int hf_lustre_llog_unlink_rec_padding = -1;
941 static int hf_lustre_ldlm_lock_desc_l_req_mode = -1;
942 static int hf_lustre_ldlm_extent_end = -1;
943 static int hf_lustre_llog_gen_rec_lgr_hdr = -1;
944 static int hf_lustre_llogd_body_lgd_llh_flags = -1;
945 static int hf_lustre_llog_log_hdr_llh_cat_idx = -1;
946 static int hf_lustre_llog_log_hdr_llh_bitmap_offset=-1;
947 static int hf_lustre_ldlm_reply_lock_padding = -1;
948 static int hf_lustre_obd_quotactl_qc_id = -1;
949 static int hf_lustre_llog_logid_rec_padding4 = -1;
950 static int hf_lustre_llog_setattr_rec_lsr_gid = -1;
951 static int hf_lustre_obd_quotactl_qc_type = -1;
952 static int hf_lustre_cfg_marker_padding = -1;
953 static int hf_lustre_mgs_target_info_mti_nids = -1;
954 static int hf_lustre_obdo_o_stripe_idx = -1;
955 static int hf_lustre_llogd_conn_body_lgdc_logid = -1;
956 static int hf_lustre_ldlm_flock_blocking_pid = -1;
957 static int hf_lustre_lov_desc_ld_tgt_count = -1;
958 static int hf_lustre_llogd_body_lgd_cur_offset=-1;
959 static int hf_lustre_qunit_data_old2_qd_count = -1;
960 static int hf_lustre_qunit_data_old2_qd_flags = -1;
961 static int hf_lustre_ldlm_flock_start = -1;
962 static int hf_lustre_quota_adjust_qunit_qaq_bunit_sz = -1;
963 static int hf_lustre_ldlm_flock_pid = -1;
964 static int hf_lustre_lov_desc_ld_default_stripe_size = -1;
965 static int hf_lustre_llog_log_hdr_llh_tgtuuid = -1;
966 static int hf_lustre_cfg_marker_cm_step = -1;
967 static int hf_lustre_mgs_send_param_mgs_param = -1;
968 static int hf_lustre_lov_desc_ld_default_stripe_offset=-1;
969 static int hf_lustre_ldlm_resource_desc_lr_name = -1;
970 static int hf_lustre_llog_rec_tail_lrt_len = -1;
971 static int hf_lustre_llog_log_hdr_llh_timestamp = -1;
972 static int hf_lustre_llog_catid_lci_padding2 = -1;
973 static int hf_lustre_llogd_conn_body_lgdc_ctxt_idx = -1;
974 static int hf_lustre_cfg_marker_cm_canceltime = -1;
975 static int hf_lustre_mgs_target_info_mti_lustre_ver = -1;
976 static int hf_lustre_obdo_o_parent_ver = -1;
977 static int hf_lustre_qunit_data_qd_flags = -1;
978 static int hf_lustre_llog_logid_rec_lid_id = -1;
979 static int hf_lustre_obdo_o_parent_oid = -1;
980 static int hf_lustre_llog_gen_mnt_cnt = -1;
981 static int hf_lustre_llog_size_change_rec_lsc_tail = -1;
982 static int hf_lustre_obdo_o_padding_5 = -1;
983 static int hf_lustre_ldlm_lock_desc_l_resource = -1;
984 static int hf_lustre_obdo_o_parent_seq = -1;
985 static int hf_lustre_ldlm_request_lock_count = -1;
986 static int hf_lustre_ldlm_flock_end = -1;
987 static int hf_lustre_mgs_target_info_mti_nid_count = -1;
988 static int hf_lustre_obdo_o_ctime = -1;
989 static int hf_lustre_ldlm_reply_lock_policy_res2 = -1;
990 static int hf_lustre_llogd_body_lgd_ctxt_idx = -1;
991 static int hf_lustre_lov_desc_ld_qos_maxage = -1;
992 static int hf_lustre_ldlm_resource_desc_lr_type = -1;
993 static int hf_lustre_llog_setattr_rec_lsr_tail = -1;
994 static int hf_lustre_llog_cookie_lgc_subsys = -1;
995 static int hf_lustre_llog_log_hdr_llh_hdr = -1;
996 static int hf_lustre_llog_log_hdr_llh_reserved = -1;
998 /* Header field declarations for field from lustre_user.h*/
999 static int hf_lustre_obd_dqinfo_dqi_valid = -1;
1000 static int hf_lustre_obd_dqblk_dqb_isoftlimit = -1;
1001 static int hf_lustre_obd_dqblk_dqb_bhardlimit = -1;
1002 static int hf_lustre_obd_dqblk_dqb_curspace = -1;
1003 static int hf_lustre_obd_dqblk_dqb_itime = -1;
1004 static int hf_lustre_obd_dqblk_dqb_valid = -1;
1005 static int hf_lustre_obd_dqinfo_dqi_igrace = -1;
1006 static int hf_lustre_obd_dqinfo_dqi_bgrace = -1;
1007 static int hf_lustre_obd_dqblk_padding = -1;
1008 static int hf_lustre_obd_dqblk_dqb_curinodes = -1;
1009 static int hf_lustre_obd_dqblk_dqb_bsoftlimit = -1;
1010 static int hf_lustre_obd_dqinfo_dqi_flags = -1;
1011 static int hf_lustre_obd_dqblk_dqb_btime = -1;
1012 static int hf_lustre_obd_dqblk_dqb_ihardlimit = -1;
1013 static int hf_lustre_ldlm_intent_opc_open = -1 ;
1014 static int hf_lustre_ldlm_intent_opc_creat = -1;
1015 static int hf_lustre_ldlm_intent_opc_readdir = -1;
1016 static int hf_lustre_ldlm_intent_opc_getattr = -1;
1017 static int hf_lustre_ldlm_intent_opc_lookup = -1;
1018 static int hf_lustre_ldlm_intent_opc_unlink = -1;
1019 static int hf_lustre_ldlm_intent_opc_getxattr = -1;
1020 static int hf_lustre_ldlm_intent_opc_exec = -1;
1021 static int hf_lustre_ldlm_intent_opc_pin = -1;
1022 static int hf_lustre_llog_hdr_llh_flag_zap_when_empty = -1;
1023 static int hf_lustre_llog_hdr_llh_flag_is_cat = -1;
1024 static int hf_lustre_llog_hdr_llh_flag_is_play = -1;
1025 /* --------------------------------------------------------------------*/
1028 /* proto declaration */
1029 static gint proto_lustre = -1;
1031 typedef int (dissect_func)(
1032 tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree,
1035 static dissect_func dissect_uint64, dissect_uint32, dissect_uint16, dissect_uint8;
1038 #include "lustre_dlm_flags_wshark.c"
1041 static int ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_) ;
1042 static int add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_) ;
1045 /* ======================================================================== */
1046 /*the value_string*/
1047 const value_string lustre_ldlm_opcode[] = {
1048 { IT_OPEN , "IT_OPEN "},
1049 { IT_CREAT , "IT_CREAT "},
1050 { IT_READDIR , "IT_READDIR "},
1051 { IT_GETATTR , "IT_GETATTR "},
1052 { IT_LOOKUP , "IT_LOOKUP "},
1053 { IT_UNLINK , "IT_UNLINK "},
1054 { IT_GETXATTR, "IT_GETXATTR"},
1055 { IT_EXEC , "IT_EXEC "},
1056 { IT_PIN , "IT_PIN "},
1060 const value_string lustre_lov_magic[] = {
1061 { LOV_MAGIC_V1, "LOV_MAGIC_V1" },
1065 const value_string lustre_llog_op_type[] = {
1066 {LLOG_PAD_MAGIC ,"LLOG_PAD_MAGIC "},
1067 {OST_SZ_REC ,"OST_SZ_REC "},
1068 {OST_RAID1_REC ,"OST_RAID1_REC "},
1069 {MDS_UNLINK_REC ,"MDS_UNLINK_REC "},
1070 {MDS_SETATTR_REC ,"MDS_SETATTR_REC "},
1071 {OBD_CFG_REC ,"OBD_CFG_REC "},
1072 {PTL_CFG_REC ,"PTL_CFG_REC "},
1073 {LLOG_GEN_REC ,"LLOG_GEN_REC "},
1074 {LLOG_JOIN_REC ,"LLOG_JOIN_REC "},
1075 {LLOG_HDR_MAGIC ,"LLOG_HDR_MAGIC "},
1076 {LLOG_LOGID_MAGIC ,"LLOG_LOGID_MAGIC"},
1080 const value_string lustre_llog_hdr_llh_flags[]= {
1081 {LLOG_F_ZAP_WHEN_EMPTY , "LLOhdr_llh_G_F_ZAP_WHEN_EMPTY"},
1082 {LLOG_F_IS_CAT , "LLOhdr_llh_G_F_IS_CAT"},
1083 {LLOG_F_IS_PLAIN , "LLOG_F_IS_PLAIN"},
1087 const value_string lustre_mds_flags_vals[] = {
1088 {0x1, "LUSTRE_BFLAG_UNCOMMITTED_WRITES"},
1089 {0x80000000, "LUSTRE_BFLAG_EXT_FLAGS"}, /* == EXT3_RESERVED_FL */
1090 {0x00000008, "LUSTRE_SYNC_FL "}, /* Synchronous updates */
1091 {0x00000010, "LUSTRE_IMMUTABLE_FL "}, /* Immutable file */
1092 {0x00000020, "LUSTRE_APPEND_FL "}, /* writes to file may only append */
1093 {0x00000080, "LUSTRE_NOATIME_FL "}, /* do not update atime */
1094 {0x00010000, "LUSTRE_DIRSYNC_FL "}, /* dirsync behaviour (dir only) */
1098 const value_string lustre_mgs_config_body_types[] = {
1106 const value_string lustre_LMTypes[] = {
1107 { PTL_RPC_MSG_REQUEST, "request"},
1108 { PTL_RPC_MSG_ERR , "error"},
1109 { PTL_RPC_MSG_REPLY , "reply"},
1113 const value_string lustre_mds_reint_t_vals[] = {
1114 { REINT_SETATTR, "REINT_SETATTR" },
1115 { REINT_CREATE, "REINT_CREATE" },
1116 { REINT_LINK, "REINT_LINK" },
1117 { REINT_UNLINK, "REINT_UNLINK" },
1118 { REINT_RENAME, "REINT_RENAME" },
1119 { REINT_OPEN, "REINT_OPEN" },
1120 { REINT_SETXATTR, "REINT_SETXATTR" },
1123 const value_string lustre_op_codes[] = {
1126 {1 , "OST_GETATTR"},
1127 {2 , "OST_SETATTR"},
1131 {6 , "OST_DESTROY"},
1132 {7 , "OST_GET_INFO"},
1133 {8 , "OST_CONNECT"},
1134 {9 , "OST_DISCONNECT"},
1138 {13 , "OST_STATFS"},
1139 {14 , "OST_SAN_READ(deprecated)"},
1140 {15 , "OST_SAN_WRITE(deprecated)"},
1142 {17 , "OST_SET_INFO"},
1143 {18 , "OST_QUOTACHECK"},
1144 {19 , "OST_QUOTACTL"},
1145 {20 , "OST_LAST_OPC"},
1147 {33 , "MDS_GETATTR"},
1148 {34 , "MDS_GETATTR_NAME"},
1151 {37 , "MDS_READPAGE"},
1152 {38 , "MDS_CONNECT"},
1153 {39 , "MDS_DISCONNECT"},
1154 {40 , "MDS_GETSTATUS"},
1155 {41 , "MDS_STATFS"},
1159 {45 , "MDS_DONE_WRITING"},
1160 {46 , "MDS_SET_INFO"},
1161 {47 , "MDS_QUOTACHECK"},
1162 {48 , "MDS_QUOTACTL"},
1163 {49 , "MDS_GETXATTR"},
1164 {50 , "MDS_SETXATTR"},
1165 {51 , "MDS_WRITEPAGE"},
1166 {52 , "MDS_IS_SUBDIR"},
1167 {53 , "MDS_GET_INFO"},
1168 {54 , "MDS_HSM_STATE_GET"},
1169 {55 , "MDS_HSM_STATE_SET"},
1170 {56 , "MDS_HSM_ACTION"},
1171 {57 , "MDS_HSM_PROGRESS"},
1172 {58 , "MDS_HSM_REQUEST"},
1173 {59 , "MDS_HSM_CT_REGISTER"},
1174 {60 , "MDS_HSM_CT_UNREGISTER"},
1175 {61 , "MDS_SWAP_LAYOUTS"},
1176 {62 , "MDS_LAST_OPC"},
1178 {101 , "LDLM_ENQUEUE"},
1179 {102 , "LDLM_CONVERT"},
1180 {103 , "LDLM_CANCEL"},
1181 {104 , "LDLM_BL_CALLBACK"},
1182 {105 , "LDLM_CP_CALLBACK"},
1183 {106 , "LDLM_GL_CALLBACK"},
1184 {107 , "LDLM_LAST_OPC"},
1186 {250 , "MGS_CONNECT"},
1187 {251 , "MGS_DISCONNECT"},
1188 {252 , "MGS_EXCEPTION"},
1189 {253 , "MGS_TARGET_REG"},
1190 {254 , "MGS_TARGET_DEL"},
1191 {255 , "MGS_SET_INFO"},
1192 {256 , "MGS_CONFIG_READ"},
1193 {257 , "MGS_LAST_OPC"},
1196 {401 , "OBD_LOG_CANCEL"},
1197 {402 , "OBD_QC_CALLBACK"},
1198 {403 , "OBD_LAST_OPC"},
1200 { 501, "LLOG_ORIGIN_HANDLE_CREATE"},
1201 { 502, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK"},
1202 { 503, "LLOG_ORIGIN_HANDLE_READ_HEADER"},
1203 { 504, "LLOG_ORIGIN_HANDLE_WRITE_REC"},
1204 { 505, "LLOG_ORIGIN_HANDLE_CLOSE"},
1205 { 506, "LLOG_ORIGIN_CONNECT"},
1206 { 507, "LLOG_CATINFO"},
1207 { 508, "LLOG_ORIGIN_HANDLE_PREV_BLOCK"},
1208 { 509, "LLOG_ORIGIN_HANDLE_DESTROY"},
1209 /* SEQ RPC opcodes */
1210 { 700, "SEQ_QUERY"},
1211 { 701, "SEQ_LAST_OPC"},
1212 /* FLD RPC opcodes */
1213 { 900, "FLD_QUERY"},
1214 { 901, "FLD_LAST_OPC"},
1217 /*const value_string lustre_ldlm_mode_t_vals[] = {*/
1218 /* { LCK_MINMODE, "MINMODE" },*/
1219 /* { LCK_EX, "EX" },*/
1220 /* { LCK_PW, "PW" },*/
1221 /* { LCK_PR, "PR" },*/
1222 /* { LCK_CW, "CW" },*/
1223 /* { LCK_CR, "CR" },*/
1224 /* { LCK_NL, "NL" },*/
1225 /* { LCK_GROUP, "GROUP" },*/
1229 /* detailled version the information came from : http://wiki.lustre.org/images/e/e5/LustreInternals_Architecture.pdf */
1230 const value_string lustre_ldlm_mode_t_vals[] = {
1231 { LCK_MINMODE, "MINMODE" },
1232 { LCK_EX, "Exclusive" },
1233 { LCK_PW, "Protected Write" },
1234 { LCK_PR, "Protected Read" },
1235 { LCK_CW, "Concurrent Write" },
1236 { LCK_CR, "Concurrent Read" },
1238 { LCK_GROUP, "GROUP" },
1242 const value_string lustre_ldlm_type_t_vals[] = {
1243 { LDLM_PLAIN, "LDLM_PLAIN" },
1244 { LDLM_EXTENT,"LDLM_EXTENT" },
1245 { LDLM_FLOCK, "LDLM_FLOCK" },
1246 { LDLM_IBITS, "LDLM_IBITS" },
1251 const value_string lustre_llog_cmd_t_vals[] = {
1252 { LLOG_ORIGIN_HANDLE_CREATE, "LLOG_ORIGIN_HANDLE_CREATE" },
1253 { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK" },
1254 { LLOG_ORIGIN_HANDLE_READ_HEADER, "LLOG_ORIGIN_HANDLE_READ_HEADER" },
1255 { LLOG_ORIGIN_HANDLE_WRITE_REC, "LLOG_ORIGIN_HANDLE_WRITE_REC" },
1256 { LLOG_ORIGIN_HANDLE_CLOSE, "LLOG_ORIGIN_HANDLE_CLOSE" },
1257 { LLOG_ORIGIN_CONNECT, "LLOG_ORIGIN_CONNECT" },
1258 { LLOG_CATINFO, "LLOG_CATINFO" },
1259 { LLOG_ORIGIN_HANDLE_PREV_BLOCK, "LLOG_ORIGIN_HANDLE_PREV_BLOCK" },
1260 { LLOG_ORIGIN_HANDLE_DESTROY, "LLOG_ORIGIN_HANDLE_DESTROY" },
1264 #ifndef ENABLE_STATIC
1265 const gchar version[] = VERSION;
1267 /* Start the functions we need for the plugin stuff */
1270 plugin_register(void)
1272 extern void proto_register_dcerpc_lustre(void);
1274 proto_register_dcerpc_lustre();
1278 plugin_reg_handoff(void)
1280 extern void proto_reg_handoff_lustre(void);
1282 proto_reg_handoff_lustre();
1287 /* ------------------------------------------------------------------- */
1288 /* display functions */
1289 /* ------------------------------------------------------------------- */
1290 /* display str in left corner and in COL */
1291 /* TODO : do we need to use inline here ?*/
1292 /* @gint col : the col where we add the information */
1293 inline static void display_info_str(proto_item *pi, column_info *cinfo, gint col, const gchar* str)
1296 proto_item_append_text(pi, str);
1299 if (check_col(cinfo, col))
1300 col_append_str(cinfo, col, str);
1304 * Need to be (re)written
1306 static void display_info_fstr(proto_item *pi, column_info *cinfo, gint col, const char* format, const gchar * str){
1309 //va_start(ap, format);
1310 proto_item_append_text(pi, format, str);
1315 if (check_col(cinfo, col)){
1317 // va_start(ap, format);
1318 col_append_fstr(cinfo, col, format, str);
1325 /* ------------------------------ basic dissect functions ------------------------ */
1328 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1330 proto_tree_add_item(tree, hfindex, tvb, offset, 8, TRUE);
1336 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1338 proto_tree_add_item(tree, hfindex, tvb, offset, 4, TRUE);
1344 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1346 proto_tree_add_item(tree, hfindex, tvb, offset, 2, TRUE);
1352 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1354 proto_tree_add_item(tree, hfindex, tvb, offset, 1, TRUE);
1357 /* ------------------------------------------------------------------------- */
1359 /* dissect raw data */
1361 lustre_dissect_element_data(tvbuff_t *tvb _U_, int offset _U_,
1362 packet_info *pinfo _U_, proto_tree *parent_tree _U_,
1363 int hf_index _U_, guint32 buf_num)
1365 proto_item *item = NULL;
1370 old_offset = offset;
1372 data_len = LUSTRE_BUFFER_LEN(buf_num);
1376 proto_tree_add_item(parent_tree, hf_index, tvb, offset, data_len, TRUE);
1379 proto_item_set_len(item, offset-old_offset);
1380 offset = add_extra_padding(tvb, offset, pinfo, parent_tree);
1386 lustre_dissect_struct_hmac(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1387 proto_tree *parent_tree _U_, int hf_index _U_, int max_length)
1391 proto_item *item = NULL;
1393 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 0, TRUE);
1394 for (i=0; i < max_length; ++i) {
1395 val = tvb_get_guint8(tvb, offset+i);
1396 proto_item_append_text(item, (i) ? "%02x" : ": %#02x", val);
1399 offset += max_length;
1400 proto_item_set_len(item, max_length);
1404 /* ------------------------------------------------------------------------ */
1408 /* IDL: struct lustre_handle { */
1409 /* IDL: uint64 cookie; */
1413 lustre_dissect_element_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1415 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_handle_cookie);
1421 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_)
1423 proto_item *item = NULL;
1424 proto_tree *tree = NULL;
1430 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1431 tree = proto_item_add_subtree(item, ett_lustre_lustre_handle_cookie);
1434 offset=lustre_dissect_element_handle_cookie(tvb, offset, pinfo, tree);
1437 proto_item_set_len(item, offset-old_offset);
1442 /* IDL: struct obd_connect_data { */
1443 /* IDL: uint64 ocd_connect_flags; */
1444 /* IDL: uint32 ocd_version; */
1445 /* IDL: uint32 ocd_grant; */
1446 /* IDL: uint32 ocd_index; */
1447 /* IDL: uint32 ocd_brw_size; */
1448 /* IDL: uint64 ocd_ibits_known; */
1449 /* IDL: uint32 ocd_nllu; */
1450 /* IDL: uint32 ocd_nllg; */
1451 /* IDL: uint64 ocd_transno; */
1452 /* IDL: uint32 ocd_group; */
1453 /* IDL: uint32 ocd_cksum_types; */
1454 /* IDL: uint64 padding1; */
1455 /* IDL: uint64 padding2; */
1459 lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1461 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_connect_flags);
1467 lustre_dissect_element_obd_connect_data_ocd_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1469 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_version);
1475 lustre_dissect_element_obd_connect_data_ocd_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1477 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_grant);
1483 lustre_dissect_element_obd_connect_data_ocd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1485 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_index);
1491 lustre_dissect_element_obd_connect_data_ocd_brw_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1493 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_brw_size);
1499 lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1501 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_ibits_known);
1507 lustre_dissect_element_obd_connect_data_ocd_nllu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1509 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllu);
1515 lustre_dissect_element_obd_connect_data_ocd_nllg(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1517 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllg);
1523 lustre_dissect_element_obd_connect_data_ocd_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1525 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_transno);
1531 lustre_dissect_element_obd_connect_data_ocd_group(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1533 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_group);
1539 lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1541 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_cksum_types);
1547 lustre_dissect_element_obd_connect_data_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1549 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding1);
1555 lustre_dissect_element_obd_connect_data_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1557 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding2);
1563 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_)
1565 proto_item *item = NULL;
1566 proto_tree *tree = NULL;
1574 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1575 tree = proto_item_add_subtree(item, ett_lustre_obd_connect_data);
1578 offset=lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvb, offset, pinfo, tree);
1580 offset=lustre_dissect_element_obd_connect_data_ocd_version(tvb, offset, pinfo, tree);
1582 offset=lustre_dissect_element_obd_connect_data_ocd_grant(tvb, offset, pinfo, tree);
1584 offset=lustre_dissect_element_obd_connect_data_ocd_index(tvb, offset, pinfo, tree);
1586 offset=lustre_dissect_element_obd_connect_data_ocd_brw_size(tvb, offset, pinfo, tree);
1588 offset=lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvb, offset, pinfo, tree);
1590 offset=lustre_dissect_element_obd_connect_data_ocd_nllu(tvb, offset, pinfo, tree);
1592 offset=lustre_dissect_element_obd_connect_data_ocd_nllg(tvb, offset, pinfo, tree);
1594 offset=lustre_dissect_element_obd_connect_data_ocd_transno(tvb, offset, pinfo, tree);
1596 offset=lustre_dissect_element_obd_connect_data_ocd_group(tvb, offset, pinfo, tree);
1598 offset=lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvb, offset, pinfo, tree);
1600 offset=lustre_dissect_element_obd_connect_data_padding1(tvb, offset, pinfo, tree);
1602 offset=lustre_dissect_element_obd_connect_data_padding2(tvb, offset, pinfo, tree);
1605 proto_item_set_len(item, offset-old_offset);
1611 /* IDL: struct lov_ost_data_v1 { */
1612 /* IDL: uint64 l_object_id; */
1613 /* IDL: uint64 l_object_seq; */
1614 /* IDL: uint32 l_ost_gen; */
1615 /* IDL: uint32 l_ost_idx; */
1619 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_)
1621 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_id);
1627 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_)
1629 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_seq);
1635 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_)
1637 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_gen);
1643 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_)
1645 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_idx);
1651 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_)
1653 proto_item *item = NULL;
1654 proto_tree *tree = NULL;
1662 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1663 tree = proto_item_add_subtree(item, ett_lustre_lov_ost_data_v1);
1666 offset=lustre_dissect_element_lov_ost_data_v1_l_object_id(tvb, offset, pinfo, tree);
1668 offset=lustre_dissect_element_lov_ost_data_v1_l_object_seq(tvb, offset, pinfo, tree);
1670 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvb, offset, pinfo, tree);
1672 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvb, offset, pinfo, tree);
1675 proto_item_set_len(item, offset-old_offset);
1680 /* IDL: struct lov_mds_md_v1 { */
1681 /* IDL: uint32 lmm_magic; */
1682 /* IDL: uint32 lmm_pattern; */
1683 /* IDL: uint64 lmm_object_id; */
1684 /* IDL: uint64 lmm_object_seq; */
1685 /* IDL: uint32 lmm_stripe_size; */
1686 /* IDL: uint32 lmm_stripe_count; */
1687 /* IDL: struct lov_ost_data_v1 { */
1688 /* IDL: } lmm_objects[0]; <-- en fait on en a lmm_stripe_count */
1692 lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1694 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_magic);
1700 lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1702 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_pattern);
1708 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_)
1710 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_id);
1716 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_)
1718 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_seq);
1724 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_)
1726 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_size);
1732 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_)
1734 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_count);
1740 lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1742 offset=lustre_dissect_struct_lov_ost_data_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1_lmm_objects);
1747 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)
1750 /*g_print("num = %d", num);*/
1751 for (i = 0; i < num; i++){
1752 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvb, offset, pinfo, tree);
1761 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_)
1763 proto_item *item = NULL;
1764 proto_tree *tree = NULL;
1767 guint32 stripe_count ;
1773 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1774 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_v1);
1777 offset=lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvb, offset, pinfo, tree);
1779 offset=lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvb, offset, pinfo, tree);
1781 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvb, offset, pinfo, tree);
1783 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_seq(tvb, offset, pinfo, tree);
1785 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvb, offset, pinfo, tree);
1787 stripe_count = tvb_get_letohl(tvb,offset);
1788 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvb, offset, pinfo, tree);
1790 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvb, offset, pinfo, tree, stripe_count);
1793 proto_item_set_len(item, offset-old_offset);
1799 lustre_dissect_struct_lov_mds_md(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_,
1800 proto_tree *parent_tree _U_,
1801 int hf_index _U_, int buff_num _U_)
1805 if(LUSTRE_BUFFER_LEN(buff_num) == 0)
1808 magic=tvb_get_letohl(tvb, offset); /* TODO : replace this with a macro */
1811 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,parent_tree,
1815 offset=lustre_dissect_element_data(tvb, offset, pinfo, parent_tree,
1816 hf_lustre_extra_padding, buff_num);
1825 /* IDL: struct obd_statfs { */
1826 /* IDL: uint64 os_type; */
1827 /* IDL: uint64 os_blocks; */
1828 /* IDL: uint64 os_bfree; */
1829 /* IDL: uint64 os_bavail; */
1830 /* IDL: uint64 os_files; */
1831 /* IDL: uint64 os_ffree; */
1832 /* IDL: uint8 os_fsid[40]; */
1833 /* IDL: uint32 os_bsize; */
1834 /* IDL: uint32 os_namelen; */
1835 /* IDL: uint64 os_maxbytes; */
1836 /* IDL: uint32 os_state; */
1837 /* IDL: uint32 os_spare1; */
1838 /* IDL: uint32 os_spare2; */
1839 /* IDL: uint32 os_spare3; */
1840 /* IDL: uint32 os_spare4; */
1841 /* IDL: uint32 os_spare5; */
1842 /* IDL: uint32 os_spare6; */
1843 /* IDL: uint32 os_spare7; */
1844 /* IDL: uint32 os_spare8; */
1845 /* IDL: uint32 os_spare9; */
1849 lustre_dissect_element_obd_statfs_os_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1851 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_type);
1857 lustre_dissect_element_obd_statfs_os_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1859 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_blocks);
1865 lustre_dissect_element_obd_statfs_os_bfree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1867 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bfree);
1873 lustre_dissect_element_obd_statfs_os_bavail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1875 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bavail);
1881 lustre_dissect_element_obd_statfs_os_files(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1883 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_files);
1889 lustre_dissect_element_obd_statfs_os_ffree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1891 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_ffree);
1897 lustre_dissect_element_obd_statfs_os_fsid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1899 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_fsid);
1905 lustre_dissect_element_obd_statfs_os_fsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1908 for (i = 0; i < 40; i++)
1909 offset=lustre_dissect_element_obd_statfs_os_fsid_(tvb, offset, pinfo, tree);
1917 lustre_dissect_element_obd_statfs_os_bsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1919 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bsize);
1925 lustre_dissect_element_obd_statfs_os_namelen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1927 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_namelen);
1933 lustre_dissect_element_obd_statfs_os_maxbytes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1935 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_maxbytes);
1941 lustre_dissect_element_obd_statfs_os_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1943 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_state);
1949 lustre_dissect_element_obd_statfs_os_spare1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1951 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare1);
1957 lustre_dissect_element_obd_statfs_os_spare2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1959 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare2);
1965 lustre_dissect_element_obd_statfs_os_spare3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1967 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare3);
1973 lustre_dissect_element_obd_statfs_os_spare4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1975 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare4);
1981 lustre_dissect_element_obd_statfs_os_spare5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1983 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare5);
1989 lustre_dissect_element_obd_statfs_os_spare6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1991 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare6);
1997 lustre_dissect_element_obd_statfs_os_spare7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1999 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare7);
2005 lustre_dissect_element_obd_statfs_os_spare8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2007 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare8);
2013 lustre_dissect_element_obd_statfs_os_spare9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2015 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare9);
2021 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_)
2023 proto_item *item = NULL;
2024 proto_tree *tree = NULL;
2032 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2033 tree = proto_item_add_subtree(item, ett_lustre_obd_statfs);
2036 offset=lustre_dissect_element_obd_statfs_os_type(tvb, offset, pinfo, tree);
2038 offset=lustre_dissect_element_obd_statfs_os_blocks(tvb, offset, pinfo, tree);
2040 offset=lustre_dissect_element_obd_statfs_os_bfree(tvb, offset, pinfo, tree);
2042 offset=lustre_dissect_element_obd_statfs_os_bavail(tvb, offset, pinfo, tree);
2044 offset=lustre_dissect_element_obd_statfs_os_files(tvb, offset, pinfo, tree);
2046 offset=lustre_dissect_element_obd_statfs_os_ffree(tvb, offset, pinfo, tree);
2048 offset=lustre_dissect_element_obd_statfs_os_fsid(tvb, offset, pinfo, tree);
2050 offset=lustre_dissect_element_obd_statfs_os_bsize(tvb, offset, pinfo, tree);
2052 offset=lustre_dissect_element_obd_statfs_os_namelen(tvb, offset, pinfo, tree);
2054 offset=lustre_dissect_element_obd_statfs_os_maxbytes(tvb, offset, pinfo, tree);
2056 offset=lustre_dissect_element_obd_statfs_os_state(tvb, offset, pinfo, tree);
2058 offset=lustre_dissect_element_obd_statfs_os_spare1(tvb, offset, pinfo, tree);
2060 offset=lustre_dissect_element_obd_statfs_os_spare2(tvb, offset, pinfo, tree);
2062 offset=lustre_dissect_element_obd_statfs_os_spare3(tvb, offset, pinfo, tree);
2064 offset=lustre_dissect_element_obd_statfs_os_spare4(tvb, offset, pinfo, tree);
2066 offset=lustre_dissect_element_obd_statfs_os_spare5(tvb, offset, pinfo, tree);
2068 offset=lustre_dissect_element_obd_statfs_os_spare6(tvb, offset, pinfo, tree);
2070 offset=lustre_dissect_element_obd_statfs_os_spare7(tvb, offset, pinfo, tree);
2072 offset=lustre_dissect_element_obd_statfs_os_spare8(tvb, offset, pinfo, tree);
2074 offset=lustre_dissect_element_obd_statfs_os_spare9(tvb, offset, pinfo, tree);
2077 proto_item_set_len(item, offset-old_offset);
2082 /* IDL: struct obd_ioobj { */
2083 /* IDL: uint64 ioo_id; */
2084 /* IDL: uint64 ioo_seq; */
2085 /* IDL: uint32 ioo_max_brw; */
2086 /* IDL: uint32 ioo_bufcnt; */
2090 lustre_dissect_element_obd_ioobj_ioo_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2092 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_id);
2098 lustre_dissect_element_obd_ioobj_ioo_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2100 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_seq);
2106 lustre_dissect_element_obd_ioobj_ioo_max_brw(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2108 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_max_brw);
2114 lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2116 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_bufcnt);
2122 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_)
2124 proto_item *item = NULL;
2125 proto_tree *tree = NULL;
2133 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2134 tree = proto_item_add_subtree(item, ett_lustre_obd_ioobj);
2137 offset=lustre_dissect_element_obd_ioobj_ioo_id(tvb, offset, pinfo, tree);
2139 offset=lustre_dissect_element_obd_ioobj_ioo_seq(tvb, offset, pinfo, tree);
2141 offset=lustre_dissect_element_obd_ioobj_ioo_max_brw(tvb, offset, pinfo, tree);
2143 offset=lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvb, offset, pinfo, tree);
2146 proto_item_set_len(item, offset-old_offset);
2151 /* IDL: struct niobuf_remote { */
2152 /* IDL: uint64 offset; */
2153 /* IDL: uint32 len; */
2154 /* IDL: uint32 flags; */
2158 lustre_dissect_element_niobuf_remote_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2160 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_offset);
2166 lustre_dissect_element_niobuf_remote_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2168 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_len);
2174 lustre_dissect_element_niobuf_remote_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2176 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_flags);
2182 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_)
2184 proto_item *item = NULL;
2185 proto_tree *tree = NULL;
2193 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2194 tree = proto_item_add_subtree(item, ett_lustre_niobuf_remote);
2197 offset=lustre_dissect_element_niobuf_remote_offset(tvb, offset, pinfo, tree);
2199 offset=lustre_dissect_element_niobuf_remote_len(tvb, offset, pinfo, tree);
2201 offset=lustre_dissect_element_niobuf_remote_flags(tvb, offset, pinfo, tree);
2204 proto_item_set_len(item, offset-old_offset);
2209 /* IDL: struct ost_lvb { */
2210 /* IDL: uint64 lvb_size; */
2211 /* IDL: uint64 lvb_mtime; */
2212 /* IDL: uint64 lvb_atime; */
2213 /* IDL: uint64 lvb_ctime; */
2214 /* IDL: uint64 lvb_blocks; */
2218 lustre_dissect_element_ost_lvb_lvb_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2220 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_size);
2226 lustre_dissect_element_ost_lvb_lvb_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2230 ns.secs = tvb_get_letohl(tvb,offset);
2232 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_mtime, tvb, offset, 8, &ns );
2238 lustre_dissect_element_ost_lvb_lvb_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2242 ns.secs = tvb_get_letohl(tvb,offset);
2244 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_atime, tvb, offset, 8, &ns );
2251 lustre_dissect_element_ost_lvb_lvb_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2255 ns.secs = tvb_get_letohl(tvb,offset);
2257 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_ctime, tvb, offset, 8, &ns );
2264 lustre_dissect_element_ost_lvb_lvb_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2266 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_blocks);
2272 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_)
2274 proto_item *item = NULL;
2275 proto_tree *tree = NULL;
2283 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2284 tree = proto_item_add_subtree(item, ett_lustre_ost_lvb);
2287 offset=lustre_dissect_element_ost_lvb_lvb_size(tvb, offset, pinfo, tree);
2289 offset=lustre_dissect_element_ost_lvb_lvb_mtime(tvb, offset, pinfo, tree);
2291 offset=lustre_dissect_element_ost_lvb_lvb_atime(tvb, offset, pinfo, tree);
2293 offset=lustre_dissect_element_ost_lvb_lvb_ctime(tvb, offset, pinfo, tree);
2295 offset=lustre_dissect_element_ost_lvb_lvb_blocks(tvb, offset, pinfo, tree);
2298 proto_item_set_len(item, offset-old_offset);
2304 /* IDL: struct ll_fid { */
2305 /* IDL: uint64 id; */
2306 /* IDL: uint32 generation; */
2307 /* IDL: uint32 f_type; */
2311 lustre_dissect_element_ll_fid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2313 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ll_fid_id);
2319 lustre_dissect_element_ll_fid_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2321 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_generation);
2327 lustre_dissect_element_ll_fid_f_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2329 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_f_type);
2335 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_)
2337 proto_item *item = NULL;
2338 proto_tree *tree = NULL;
2344 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2345 tree = proto_item_add_subtree(item, ett_lustre_ll_fid);
2348 offset=lustre_dissect_element_ll_fid_id(tvb, offset, pinfo, tree);
2350 offset=lustre_dissect_element_ll_fid_generation(tvb, offset, pinfo, tree);
2352 offset=lustre_dissect_element_ll_fid_f_type(tvb, offset, pinfo, tree);
2355 proto_item_set_len(item, offset-old_offset);
2360 /* IDL: struct obd_dqinfo { */
2361 /* IDL: uint64 dqi_bgrace; */
2362 /* IDL: uint64 dqi_igrace; */
2363 /* IDL: uint32 dqi_flags; */
2364 /* IDL: uint32 dqi_valid; */
2368 lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2370 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_bgrace);
2376 lustre_dissect_element_obd_dqinfo_dqi_igrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2378 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_igrace);
2384 lustre_dissect_element_obd_dqinfo_dqi_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2386 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_flags);
2392 lustre_dissect_element_obd_dqinfo_dqi_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2394 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_valid);
2400 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_)
2402 proto_item *item = NULL;
2403 proto_tree *tree = NULL;
2408 old_offset = offset;
2411 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2412 tree = proto_item_add_subtree(item, ett_lustre_obd_dqinfo);
2415 offset = lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvb, offset, pinfo, tree);
2417 offset = lustre_dissect_element_obd_dqinfo_dqi_igrace(tvb, offset, pinfo, tree);
2419 offset = lustre_dissect_element_obd_dqinfo_dqi_flags(tvb, offset, pinfo, tree);
2421 offset = lustre_dissect_element_obd_dqinfo_dqi_valid(tvb, offset, pinfo, tree);
2424 proto_item_set_len(item, offset-old_offset);
2429 /* IDL: struct obd_dqblk { */
2430 /* IDL: uint64 dqb_bhardlimit; */
2431 /* IDL: uint64 dqb_bsoftlimit; */
2432 /* IDL: uint64 dqb_curspace; */
2433 /* IDL: uint64 dqb_ihardlimit; */
2434 /* IDL: uint64 dqb_isoftlimit; */
2435 /* IDL: uint64 dqb_curinodes; */
2436 /* IDL: uint64 dqb_btime; */
2437 /* IDL: uint64 dqb_itime; */
2438 /* IDL: uint32 dqb_valid; */
2439 /* IDL: uint32 padding; */
2443 lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2445 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bhardlimit);
2451 lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2453 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bsoftlimit);
2459 lustre_dissect_element_obd_dqblk_dqb_curspace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2461 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curspace);
2467 lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2469 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_ihardlimit);
2475 lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2477 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_isoftlimit);
2483 lustre_dissect_element_obd_dqblk_dqb_curinodes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2485 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curinodes);
2491 lustre_dissect_element_obd_dqblk_dqb_btime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2496 ns.secs = tvb_get_letohl(tvb,offset);
2498 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_btime, tvb, offset, 8, &ns );
2504 lustre_dissect_element_obd_dqblk_dqb_itime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2508 ns.secs = tvb_get_letohl(tvb,offset);
2510 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_itime, tvb, offset, 8, &ns );
2517 lustre_dissect_element_obd_dqblk_dqb_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2519 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_valid);
2525 lustre_dissect_element_obd_dqblk_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2527 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_padding);
2533 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_)
2535 proto_item *item = NULL;
2536 proto_tree *tree = NULL;
2541 old_offset = offset;
2544 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2545 tree = proto_item_add_subtree(item, ett_lustre_obd_dqblk);
2548 offset = lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvb, offset, pinfo, tree);
2550 offset = lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvb, offset, pinfo, tree);
2552 offset = lustre_dissect_element_obd_dqblk_dqb_curspace(tvb, offset, pinfo, tree);
2554 offset = lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvb, offset, pinfo, tree);
2556 offset = lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvb, offset, pinfo, tree);
2558 offset = lustre_dissect_element_obd_dqblk_dqb_curinodes(tvb, offset, pinfo, tree);
2560 offset = lustre_dissect_element_obd_dqblk_dqb_btime(tvb, offset, pinfo, tree);
2562 offset = lustre_dissect_element_obd_dqblk_dqb_itime(tvb, offset, pinfo, tree);
2564 offset = lustre_dissect_element_obd_dqblk_dqb_valid(tvb, offset, pinfo, tree);
2566 offset = lustre_dissect_element_obd_dqblk_padding(tvb, offset, pinfo, tree);
2569 proto_item_set_len(item, offset-old_offset);
2575 /* IDL: struct obd_quotactl { */
2576 /* IDL: uint32 qc_cmd; */
2577 /* IDL: uint32 qc_type; */
2578 /* IDL: uint32 qc_id; */
2579 /* IDL: uint32 qc_stat; */
2580 /* IDL: struct obd_dqinfo { */
2581 /* IDL: } qc_dqinfo; */
2582 /* IDL: struct obd_dqblk { */
2583 /* IDL: } qc_dqblk; */
2587 lustre_dissect_element_obd_quotactl_qc_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2589 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_cmd);
2595 lustre_dissect_element_obd_quotactl_qc_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2597 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_type);
2603 lustre_dissect_element_obd_quotactl_qc_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2605 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_id);
2611 lustre_dissect_element_obd_quotactl_qc_stat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2613 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_stat);
2621 lustre_dissect_element_obd_quotactl_qc_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2623 offset=lustre_dissect_struct_obd_dqblk(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqblk);
2628 lustre_dissect_element_obd_quotactl_qc_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2630 offset=lustre_dissect_struct_obd_dqinfo(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqinfo);
2635 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_)
2637 proto_item *item = NULL;
2638 proto_tree *tree = NULL;
2644 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2645 tree = proto_item_add_subtree(item, ett_lustre_obd_quotactl);
2648 offset=lustre_dissect_element_obd_quotactl_qc_cmd(tvb, offset, pinfo, tree);
2650 offset=lustre_dissect_element_obd_quotactl_qc_type(tvb, offset, pinfo, tree);
2652 offset=lustre_dissect_element_obd_quotactl_qc_id(tvb, offset, pinfo, tree);
2654 offset=lustre_dissect_element_obd_quotactl_qc_stat(tvb, offset, pinfo, tree);
2656 offset=lustre_dissect_element_obd_quotactl_qc_dqinfo(tvb, offset, pinfo, tree);
2658 offset=lustre_dissect_element_obd_quotactl_qc_dqblk(tvb, offset, pinfo, tree);
2661 proto_item_set_len(item, offset-old_offset);
2667 /* IDL: struct quota_adjust_qunit { */
2668 /* IDL: uint32 qaq_flags; */
2669 /* IDL: uint32 qaq_id; */
2670 /* IDL: uint64 qaq_bunit_sz; */
2671 /* IDL: uint64 qaq_iunit_sz; */
2672 /* IDL: uint64 padding1; */
2676 lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2678 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_flags);
2684 lustre_dissect_element_quota_adjust_qunit_qaq_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2686 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_id);
2692 lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2694 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_bunit_sz);
2700 lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2702 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_iunit_sz);
2708 lustre_dissect_element_quota_adjust_qunit_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2710 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_padding1);
2716 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_)
2718 proto_item *item = NULL;
2719 proto_tree *tree = NULL;
2727 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2728 tree = proto_item_add_subtree(item, ett_lustre_quota_adjust_qunit);
2731 offset=lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvb, offset, pinfo, tree);
2733 offset=lustre_dissect_element_quota_adjust_qunit_qaq_id(tvb, offset, pinfo, tree);
2735 offset=lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvb, offset, pinfo, tree);
2737 offset=lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvb, offset, pinfo, tree);
2739 offset=lustre_dissect_element_quota_adjust_qunit_padding1(tvb, offset, pinfo, tree);
2742 proto_item_set_len(item, offset-old_offset);
2747 /* IDL: struct mdt_body { */
2748 /* IDL: struct lu_fid { */
2750 /* IDL: struct lu_fid { */
2752 /* IDL: struct lustre_handle { */
2753 /* IDL: } handle; */
2754 /* IDL: uint64 valid; */
2755 /* IDL: uint64 size; */
2756 /* IDL: uint64 mtime; */
2757 /* IDL: uint64 atime; */
2758 /* IDL: uint64 ctime; */
2759 /* IDL: uint64 blocks; */
2760 /* IDL: uint64 ioepoch; */
2761 /* IDL: uint64 ino; */
2762 /* IDL: uint32 fsuid; */
2763 /* IDL: uint32 fsgid; */
2764 /* IDL: uint32 capability; */
2765 /* IDL: uint32 mode; */
2766 /* IDL: uint32 uid; */
2767 /* IDL: uint32 gid; */
2768 /* IDL: uint32 flags; */
2769 /* IDL: uint32 rdev; */
2770 /* IDL: uint32 nlink; */
2771 /* IDL: uint32 generation; */
2772 /* IDL: uint32 suppgid; */
2773 /* IDL: uint32 eadatasize; */
2774 /* IDL: uint32 aclsize; */
2775 /* IDL: uint32 max_mdsize; */
2776 /* IDL: uint32 max_cookiesize; */
2777 /* IDL: uint32 uid_h; */
2778 /* IDL: uint32 gid_h; */
2779 /* IDL: uint32 padding_5; */
2780 /* IDL: uint64 padding_6; */
2781 /* IDL: uint64 padding_7; */
2782 /* IDL: uint64 padding_8; */
2783 /* IDL: uint64 padding_9; */
2784 /* IDL: uint64 padding_10; */
2788 lustre_dissect_element_mdt_body_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2790 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid1);
2795 lustre_dissect_element_mdt_body_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2797 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid2);
2802 lustre_dissect_element_mdt_body_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2804 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
2810 lustre_dissect_element_mdt_body_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2812 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_valid);
2818 lustre_dissect_element_mdt_body_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2820 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_size);
2826 lustre_dissect_element_mdt_body_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2830 ns.secs = tvb_get_letohl(tvb,offset);
2832 proto_tree_add_time(tree, hf_lustre_mdt_body_mtime, tvb, offset, 8, &ns );
2838 lustre_dissect_element_mdt_body_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2842 ns.secs = tvb_get_letohl(tvb,offset);
2844 proto_tree_add_time(tree, hf_lustre_mdt_body_atime, tvb, offset, 8, &ns );
2851 lustre_dissect_element_mdt_body_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2855 ns.secs = tvb_get_letohl(tvb,offset);
2857 proto_tree_add_time(tree, hf_lustre_mdt_body_ctime, tvb, offset, 8, &ns );
2863 lustre_dissect_element_mdt_body_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2865 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_blocks);
2871 lustre_dissect_element_mdt_body_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2873 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ioepoch);
2879 lustre_dissect_element_mdt_body_ino(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2881 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ino);
2887 lustre_dissect_element_mdt_body_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2889 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsuid);
2895 lustre_dissect_element_mdt_body_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2897 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsgid);
2903 lustre_dissect_element_mdt_body_capability(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2905 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_capability);
2911 lustre_dissect_element_mdt_body_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2913 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_mode);
2919 lustre_dissect_element_mdt_body_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2921 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid);
2927 lustre_dissect_element_mdt_body_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2929 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid);
2935 lustre_dissect_element_mdt_body_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2937 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_flags);
2943 lustre_dissect_element_mdt_body_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2945 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_rdev);
2951 lustre_dissect_element_mdt_body_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2953 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_nlink);
2959 lustre_dissect_element_mdt_body_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2961 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_generation);
2967 lustre_dissect_element_mdt_body_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2969 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_suppgid);
2975 lustre_dissect_element_mdt_body_eadatasize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2977 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_eadatasize);
2983 lustre_dissect_element_mdt_body_aclsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2985 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_aclsize);
2991 lustre_dissect_element_mdt_body_max_mdsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2993 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_mdsize);
2999 lustre_dissect_element_mdt_body_max_cookiesize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3001 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_cookiesize);
3007 lustre_dissect_element_mdt_body_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3009 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid_h);
3015 lustre_dissect_element_mdt_body_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3017 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid_h);
3023 lustre_dissect_element_mdt_body_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3025 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_5);
3031 lustre_dissect_element_mdt_body_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3033 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_6);
3039 lustre_dissect_element_mdt_body_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3041 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_7);
3047 lustre_dissect_element_mdt_body_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3049 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_8);
3055 lustre_dissect_element_mdt_body_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3057 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_9);
3063 lustre_dissect_element_mdt_body_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3065 offset= dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_10);
3071 lustre_dissect_struct_mdt_body(tvbuff_t *tvb _U_, int offset _U_,
3072 packet_info *pinfo _U_,
3073 proto_tree *parent_tree _U_,
3076 proto_item *item = NULL;
3077 proto_tree *tree = NULL;
3084 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3085 tree = proto_item_add_subtree(item, ett_lustre_mdt_body);
3088 offset=lustre_dissect_element_mdt_body_fid1(tvb, offset, pinfo, tree);
3090 offset=lustre_dissect_element_mdt_body_fid2(tvb, offset, pinfo, tree);
3092 offset=lustre_dissect_element_mdt_body_handle(tvb, offset, pinfo, tree);
3094 offset=lustre_dissect_element_mdt_body_valid(tvb, offset, pinfo, tree);
3096 offset=lustre_dissect_element_mdt_body_size(tvb, offset, pinfo, tree);
3098 offset=lustre_dissect_element_mdt_body_mtime(tvb, offset, pinfo, tree);
3100 offset=lustre_dissect_element_mdt_body_atime(tvb, offset, pinfo, tree);
3102 offset=lustre_dissect_element_mdt_body_ctime(tvb, offset, pinfo, tree);
3104 offset=lustre_dissect_element_mdt_body_blocks(tvb, offset, pinfo, tree);
3106 offset=lustre_dissect_element_mdt_body_ioepoch(tvb, offset, pinfo, tree);
3108 offset=lustre_dissect_element_mdt_body_ino(tvb, offset, pinfo, tree);
3110 offset=lustre_dissect_element_mdt_body_fsuid(tvb, offset, pinfo, tree);
3112 offset=lustre_dissect_element_mdt_body_fsgid(tvb, offset, pinfo, tree);
3114 offset=lustre_dissect_element_mdt_body_capability(tvb, offset, pinfo, tree);
3116 offset=lustre_dissect_element_mdt_body_mode(tvb, offset, pinfo, tree);
3118 offset=lustre_dissect_element_mdt_body_uid(tvb, offset, pinfo, tree);
3120 offset=lustre_dissect_element_mdt_body_gid(tvb, offset, pinfo, tree);
3122 offset=lustre_dissect_element_mdt_body_flags(tvb, offset, pinfo, tree);
3124 offset=lustre_dissect_element_mdt_body_rdev(tvb, offset, pinfo, tree);
3126 offset=lustre_dissect_element_mdt_body_nlink(tvb, offset, pinfo, tree);
3128 offset=lustre_dissect_element_mdt_body_generation(tvb, offset, pinfo, tree);
3130 offset=lustre_dissect_element_mdt_body_suppgid(tvb, offset, pinfo, tree);
3132 offset=lustre_dissect_element_mdt_body_eadatasize(tvb, offset, pinfo, tree);
3134 offset=lustre_dissect_element_mdt_body_aclsize(tvb, offset, pinfo, tree);
3136 offset=lustre_dissect_element_mdt_body_max_mdsize(tvb, offset, pinfo, tree);
3138 offset=lustre_dissect_element_mdt_body_max_cookiesize(tvb, offset, pinfo, tree);
3140 offset=lustre_dissect_element_mdt_body_uid_h(tvb, offset, pinfo, tree);
3142 offset=lustre_dissect_element_mdt_body_gid_h(tvb, offset, pinfo, tree);
3144 offset=lustre_dissect_element_mdt_body_padding_5(tvb, offset, pinfo, tree);
3146 offset=lustre_dissect_element_mdt_body_padding_6(tvb, offset, pinfo, tree);
3148 offset=lustre_dissect_element_mdt_body_padding_7(tvb, offset, pinfo, tree);
3150 offset=lustre_dissect_element_mdt_body_padding_8(tvb, offset, pinfo, tree);
3152 offset=lustre_dissect_element_mdt_body_padding_9(tvb, offset, pinfo, tree);
3154 offset=lustre_dissect_element_mdt_body_padding_10(tvb, offset, pinfo, tree);
3157 proto_item_set_len(item, offset-old_offset);
3162 /* I don't find where this struct appear on wire.. need to search mdc_setattr_pack() */
3163 /* IDL: struct mdt_rec_setattr { */
3164 /* IDL: uint32 sa_opcode; */
3165 /* IDL: uint32 sa_cap; */
3166 /* IDL: uint32 sa_fsuid; */
3167 /* IDL: uint32 sa_fsuid_h; */
3168 /* IDL: uint32 sa_fsgid; */
3169 /* IDL: uint32 sa_fsgid_h; */
3170 /* IDL: uint32 sa_suppgid; */
3171 /* IDL: uint32 sa_suppgid_h; */
3172 /* IDL: uint32 sa_padding_1; */
3173 /* IDL: uint32 sa_padding_1_h; */
3174 /* IDL: struct lu_fid { */
3175 /* IDL: } sa_fid; */
3176 /* IDL: uint64 sa_valid; */
3177 /* IDL: uint32 sa_uid; */
3178 /* IDL: uint32 sa_gid; */
3179 /* IDL: uint64 sa_size; */
3180 /* IDL: uint64 sa_blocks; */
3181 /* IDL: uint64 sa_mtime; */
3182 /* IDL: uint64 sa_atime; */
3183 /* IDL: uint64 sa_ctime; */
3184 /* IDL: uint32 sa_attr_flags; */
3185 /* IDL: uint32 sa_mode; */
3186 /* IDL: uint32 sa_padding_2; */
3187 /* IDL: uint32 sa_padding_3; */
3188 /* IDL: uint32 sa_padding_4; */
3189 /* IDL: uint32 sa_padding_5; */
3193 lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3195 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_opcode);
3201 lustre_dissect_element_mdt_rec_setattr_sa_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3203 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_cap);
3209 lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3211 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid);
3217 lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3219 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid_h);
3225 lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3227 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid);
3233 lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3235 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid_h);
3241 lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3243 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid);
3249 lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3251 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid_h);
3257 lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3259 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1);
3265 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_)
3267 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1_h);
3273 lustre_dissect_element_mdt_rec_setattr_sa_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3275 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setattr_sa_fid);
3281 lustre_dissect_element_mdt_rec_setattr_sa_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3283 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_valid);
3289 lustre_dissect_element_mdt_rec_setattr_sa_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3291 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_uid);
3297 lustre_dissect_element_mdt_rec_setattr_sa_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3299 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_gid);
3305 lustre_dissect_element_mdt_rec_setattr_sa_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3307 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_size);
3313 lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3315 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_blocks);
3321 lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3326 ns.secs = tvb_get_letohl(tvb,offset);
3328 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_mtime, tvb, offset, 8, &ns );
3334 lustre_dissect_element_mdt_rec_setattr_sa_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3338 ns.secs = tvb_get_letohl(tvb,offset);
3340 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_atime, tvb, offset, 8, &ns );
3346 lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3350 ns.secs = tvb_get_letohl(tvb,offset);
3352 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_ctime, tvb, offset, 8, &ns );
3358 lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3360 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_attr_flags);
3366 lustre_dissect_element_mdt_rec_setattr_sa_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3368 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_mode);
3374 lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3376 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_2);
3382 lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3384 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_3);
3390 lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3392 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_4);
3398 lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3400 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_5);
3406 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_)
3408 proto_item *item = NULL;
3409 proto_tree *tree = NULL;
3418 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3419 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setattr);
3421 sa_opcode=tvb_get_letohl(tvb,offset);
3422 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sa_opcode, lustre_mds_reint_t_vals, "Unknown sa_opc"));
3424 offset=lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvb, offset, pinfo, tree);
3426 offset=lustre_dissect_element_mdt_rec_setattr_sa_cap(tvb, offset, pinfo, tree);
3428 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvb, offset, pinfo, tree);
3430 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvb, offset, pinfo, tree);
3432 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvb, offset, pinfo, tree);
3434 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvb, offset, pinfo, tree);
3436 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvb, offset, pinfo, tree);
3438 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvb, offset, pinfo, tree);
3440 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvb, offset, pinfo, tree);
3442 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1_h(tvb, offset, pinfo, tree);
3444 offset=lustre_dissect_element_mdt_rec_setattr_sa_fid(tvb, offset, pinfo, tree);
3446 offset=lustre_dissect_element_mdt_rec_setattr_sa_valid(tvb, offset, pinfo, tree);
3448 offset=lustre_dissect_element_mdt_rec_setattr_sa_uid(tvb, offset, pinfo, tree);
3450 offset=lustre_dissect_element_mdt_rec_setattr_sa_gid(tvb, offset, pinfo, tree);
3452 offset=lustre_dissect_element_mdt_rec_setattr_sa_size(tvb, offset, pinfo, tree);
3454 offset=lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvb, offset, pinfo, tree);
3456 offset=lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvb, offset, pinfo, tree);
3458 offset=lustre_dissect_element_mdt_rec_setattr_sa_atime(tvb, offset, pinfo, tree);
3460 offset=lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvb, offset, pinfo, tree);
3462 offset=lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvb, offset, pinfo, tree);
3464 offset=lustre_dissect_element_mdt_rec_setattr_sa_mode(tvb, offset, pinfo, tree);
3466 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvb, offset, pinfo, tree);
3468 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvb, offset, pinfo, tree);
3470 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvb, offset, pinfo, tree);
3472 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvb, offset, pinfo, tree);
3475 proto_item_set_len(item, offset-old_offset);
3480 /* IDL: struct mdt_rec_create { */
3481 /* IDL: uint32 cr_opcode; */
3482 /* IDL: uint32 cr_cap; */
3483 /* IDL: uint32 cr_fsuid; */
3484 /* IDL: uint32 cr_fsuid_h; */
3485 /* IDL: uint32 cr_fsgid; */
3486 /* IDL: uint32 cr_fsgid_h; */
3487 /* IDL: uint32 cr_suppgid1; */
3488 /* IDL: uint32 cr_suppgid1_h; */
3489 /* IDL: uint32 cr_suppgid2; */
3490 /* IDL: uint32 cr_suppgid2_h; */
3491 /* IDL: struct lu_fid { */
3492 /* IDL: } cr_fid1; */
3493 /* IDL: struct lu_fid { */
3494 /* IDL: } cr_fid2; */
3495 /* IDL: struct lustre_handle { */
3496 /* IDL: } cr_old_handle; */
3497 /* IDL: uint64 cr_time; */
3498 /* IDL: uint64 cr_rdev; */
3499 /* IDL: uint64 cr_ioepoch; */
3500 /* IDL: uint64 cr_padding_1; */
3501 /* IDL: uint32 cr_mode; */
3502 /* IDL: uint32 cr_bias; */
3503 /* IDL: uint32 cr_flags_l; */
3504 /* IDL: uint32 cr_flags_h; */
3505 /* IDL: uint32 cr_umask; */
3506 /* IDL: uint32 cr_padding_4; */
3510 lustre_dissect_element_mdt_rec_create_cr_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3512 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_opcode);
3518 lustre_dissect_element_mdt_rec_create_cr_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3520 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_cap);
3526 lustre_dissect_element_mdt_rec_create_cr_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3528 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid);
3534 lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3536 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid_h);
3542 lustre_dissect_element_mdt_rec_create_cr_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3544 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid);
3550 lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3552 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid_h);
3558 lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3560 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1);
3566 lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3568 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1_h);
3574 lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3576 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid2);
3582 lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3584 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid2_h);
3590 lustre_dissect_element_mdt_rec_create_cr_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3592 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid1);
3597 lustre_dissect_element_mdt_rec_create_cr_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3599 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid2);
3604 lustre_dissect_element_mdt_rec_create_cr_old_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3606 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_old_handle);
3611 lustre_dissect_element_mdt_rec_create_cr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3615 ns.secs = tvb_get_letohl(tvb,offset);
3617 proto_tree_add_time(tree, hf_lustre_mdt_rec_create_cr_time, tvb, offset, 8, &ns );
3624 lustre_dissect_element_mdt_rec_create_cr_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3626 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_rdev);
3632 lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3634 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_ioepoch);
3640 lustre_dissect_element_mdt_rec_create_cr_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3642 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_1);
3648 lustre_dissect_element_mdt_rec_create_cr_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3650 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_mode);
3656 lustre_dissect_element_mdt_rec_create_cr_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3658 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_bias);
3664 lustre_dissect_element_mdt_rec_create_cr_flags_l(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3666 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_l);
3672 lustre_dissect_element_mdt_rec_create_cr_flags_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3674 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_h);
3680 lustre_dissect_element_mdt_rec_create_cr_umask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3682 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_umask);
3688 lustre_dissect_element_mdt_rec_create_cr_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3690 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_4);
3696 lustre_dissect_struct_mdt_rec_create(tvbuff_t *tvb _U_, int offset _U_,
3697 packet_info *pinfo _U_,
3698 proto_tree *parent_tree _U_,
3701 proto_item *item = NULL;
3702 proto_tree *tree = NULL;
3709 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3710 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_create);
3712 cr_opcode=tvb_get_letohl(tvb,offset);
3713 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(cr_opcode, lustre_mds_reint_t_vals, "Unknown cr_opc"));
3715 offset=lustre_dissect_element_mdt_rec_create_cr_opcode(tvb, offset, pinfo, tree);
3717 offset=lustre_dissect_element_mdt_rec_create_cr_cap(tvb, offset, pinfo, tree);
3719 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid(tvb, offset, pinfo, tree);
3721 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvb, offset, pinfo, tree);
3723 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid(tvb, offset, pinfo, tree);
3725 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvb, offset, pinfo, tree);
3727 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvb, offset, pinfo, tree);
3729 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvb, offset, pinfo, tree);
3731 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvb, offset, pinfo, tree);
3733 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvb, offset, pinfo, tree);
3735 offset=lustre_dissect_element_mdt_rec_create_cr_fid1(tvb, offset, pinfo, tree);
3737 offset=lustre_dissect_element_mdt_rec_create_cr_fid2(tvb, offset, pinfo, tree);
3739 offset=lustre_dissect_element_mdt_rec_create_cr_old_handle(tvb, offset, pinfo, tree);
3741 offset=lustre_dissect_element_mdt_rec_create_cr_time(tvb, offset, pinfo, tree);
3743 offset=lustre_dissect_element_mdt_rec_create_cr_rdev(tvb, offset, pinfo, tree);
3745 offset=lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvb, offset, pinfo, tree);
3747 offset=lustre_dissect_element_mdt_rec_create_cr_padding_1(tvb, offset, pinfo, tree);
3749 offset=lustre_dissect_element_mdt_rec_create_cr_mode(tvb, offset, pinfo, tree);
3751 offset=lustre_dissect_element_mdt_rec_create_cr_bias(tvb, offset, pinfo, tree);
3753 offset=lustre_dissect_element_mdt_rec_create_cr_flags_l(tvb, offset, pinfo, tree);
3755 offset=lustre_dissect_element_mdt_rec_create_cr_flags_h(tvb, offset, pinfo, tree);
3757 offset=lustre_dissect_element_mdt_rec_create_cr_umask(tvb, offset, pinfo, tree);
3759 offset=lustre_dissect_element_mdt_rec_create_cr_padding_4(tvb, offset, pinfo, tree);
3761 proto_item_set_len(item, offset-old_offset);
3766 /* TODO : find where this structure appear ! */
3767 /* IDL: struct mdt_rec_link { */
3768 /* IDL: uint32 lk_opcode; */
3769 /* IDL: uint32 lk_cap; */
3770 /* IDL: uint32 lk_fsuid; */
3771 /* IDL: uint32 lk_fsuid_h; */
3772 /* IDL: uint32 lk_fsgid; */
3773 /* IDL: uint32 lk_fsgid_h; */
3774 /* IDL: uint32 lk_suppgid1; */
3775 /* IDL: uint32 lk_suppgid1_h; */
3776 /* IDL: uint32 lk_suppgid2; */
3777 /* IDL: uint32 lk_suppgid2_h; */
3778 /* IDL: struct lu_fid { */
3779 /* IDL: } lk_fid1; */
3780 /* IDL: struct lu_fid { */
3781 /* IDL: } lk_fid2; */
3782 /* IDL: uint64 lk_time; */
3783 /* IDL: uint64 lk_padding_1; */
3784 /* IDL: uint64 lk_padding_2; */
3785 /* IDL: uint64 lk_padding_3; */
3786 /* IDL: uint64 lk_padding_4; */
3787 /* IDL: uint32 lk_bias; */
3788 /* IDL: uint32 lk_padding_5; */
3789 /* IDL: uint32 lk_padding_6; */
3790 /* IDL: uint32 lk_padding_7; */
3791 /* IDL: uint32 lk_padding_8; */
3792 /* IDL: uint32 lk_padding_9; */
3796 lustre_dissect_element_mdt_rec_link_lk_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3798 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_opcode);
3804 lustre_dissect_element_mdt_rec_link_lk_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3806 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_cap);
3812 lustre_dissect_element_mdt_rec_link_lk_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3814 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid);
3820 lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3822 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid_h);
3828 lustre_dissect_element_mdt_rec_link_lk_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3830 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid);
3836 lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3838 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid_h);
3844 lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3846 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1);
3852 lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3854 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1_h);
3860 lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3862 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2);
3868 lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3870 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2_h);
3876 lustre_dissect_element_mdt_rec_link_lk_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3878 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid1);
3883 lustre_dissect_element_mdt_rec_link_lk_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3885 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid2);
3890 lustre_dissect_element_mdt_rec_link_lk_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3894 ns.secs = tvb_get_letohl(tvb,offset);
3896 proto_tree_add_time(tree, hf_lustre_mdt_rec_link_lk_time, tvb, offset, 8, &ns );
3902 lustre_dissect_element_mdt_rec_link_lk_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3904 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_1);
3910 lustre_dissect_element_mdt_rec_link_lk_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3912 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_2);
3918 lustre_dissect_element_mdt_rec_link_lk_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3920 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_3);
3926 lustre_dissect_element_mdt_rec_link_lk_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3928 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_4);
3934 lustre_dissect_element_mdt_rec_link_lk_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3936 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_bias);
3942 lustre_dissect_element_mdt_rec_link_lk_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3944 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_5);
3950 lustre_dissect_element_mdt_rec_link_lk_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3952 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_6);
3958 lustre_dissect_element_mdt_rec_link_lk_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3960 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_7);
3966 lustre_dissect_element_mdt_rec_link_lk_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3968 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_8);
3974 lustre_dissect_element_mdt_rec_link_lk_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3976 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_9);
3982 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_)
3984 proto_item *item = NULL;
3985 proto_tree *tree = NULL;
3994 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3995 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_link);
3997 lk_opcode=tvb_get_letohl(tvb,offset);
3998 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lk_opcode, lustre_mds_reint_t_vals, "Unknown lk_opc"));
4000 offset=lustre_dissect_element_mdt_rec_link_lk_opcode(tvb, offset, pinfo, tree);
4002 offset=lustre_dissect_element_mdt_rec_link_lk_cap(tvb, offset, pinfo, tree);
4004 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid(tvb, offset, pinfo, tree);
4006 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvb, offset, pinfo, tree);
4008 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid(tvb, offset, pinfo, tree);
4010 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvb, offset, pinfo, tree);
4012 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvb, offset, pinfo, tree);
4014 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvb, offset, pinfo, tree);
4016 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvb, offset, pinfo, tree);
4018 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvb, offset, pinfo, tree);
4020 offset=lustre_dissect_element_mdt_rec_link_lk_fid1(tvb, offset, pinfo, tree);
4022 offset=lustre_dissect_element_mdt_rec_link_lk_fid2(tvb, offset, pinfo, tree);
4024 offset=lustre_dissect_element_mdt_rec_link_lk_time(tvb, offset, pinfo, tree);
4026 offset=lustre_dissect_element_mdt_rec_link_lk_padding_1(tvb, offset, pinfo, tree);
4028 offset=lustre_dissect_element_mdt_rec_link_lk_padding_2(tvb, offset, pinfo, tree);
4030 offset=lustre_dissect_element_mdt_rec_link_lk_padding_3(tvb, offset, pinfo, tree);
4032 offset=lustre_dissect_element_mdt_rec_link_lk_padding_4(tvb, offset, pinfo, tree);
4034 offset=lustre_dissect_element_mdt_rec_link_lk_bias(tvb, offset, pinfo, tree);
4036 offset=lustre_dissect_element_mdt_rec_link_lk_padding_5(tvb, offset, pinfo, tree);
4038 offset=lustre_dissect_element_mdt_rec_link_lk_padding_6(tvb, offset, pinfo, tree);
4040 offset=lustre_dissect_element_mdt_rec_link_lk_padding_7(tvb, offset, pinfo, tree);
4042 offset=lustre_dissect_element_mdt_rec_link_lk_padding_8(tvb, offset, pinfo, tree);
4044 offset=lustre_dissect_element_mdt_rec_link_lk_padding_9(tvb, offset, pinfo, tree);
4047 proto_item_set_len(item, offset-old_offset);
4052 /* IDL: struct mdt_rec_unlink { */
4053 /* IDL: uint32 ul_opcode; */
4054 /* IDL: uint32 ul_cap; */
4055 /* IDL: uint32 ul_fsuid; */
4056 /* IDL: uint32 ul_fsuid_h; */
4057 /* IDL: uint32 ul_fsgid; */
4058 /* IDL: uint32 ul_fsgid_h; */
4059 /* IDL: uint32 ul_suppgid1; */
4060 /* IDL: uint32 ul_suppgid1_h; */
4061 /* IDL: uint32 ul_suppgid2; */
4062 /* IDL: uint32 ul_suppgid2_h; */
4063 /* IDL: struct lu_fid { */
4064 /* IDL: } ul_fid1; */
4065 /* IDL: struct lu_fid { */
4066 /* IDL: } ul_fid2; */
4067 /* IDL: uint64 ul_time; */
4068 /* IDL: uint64 ul_padding_2; */
4069 /* IDL: uint64 ul_padding_3; */
4070 /* IDL: uint64 ul_padding_4; */
4071 /* IDL: uint64 ul_padding_5; */
4072 /* IDL: uint32 ul_bias; */
4073 /* IDL: uint32 ul_mode; */
4074 /* IDL: uint32 ul_padding_6; */
4075 /* IDL: uint32 ul_padding_7; */
4076 /* IDL: uint32 ul_padding_8; */
4077 /* IDL: uint32 ul_padding_9; */
4081 lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4083 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_opcode);
4089 lustre_dissect_element_mdt_rec_unlink_ul_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4091 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_cap);
4097 lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4099 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid);
4105 lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4107 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid_h);
4113 lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4115 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid);
4121 lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4123 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid_h);
4129 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4131 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1);
4137 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4139 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1_h);
4145 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4147 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2);
4153 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4155 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2_h);
4161 lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4163 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid1);
4168 lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4170 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid2);
4175 lustre_dissect_element_mdt_rec_unlink_ul_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4179 ns.secs = tvb_get_letohl(tvb,offset);
4181 proto_tree_add_time(tree,hf_lustre_mdt_rec_unlink_ul_time , tvb, offset, 8, &ns );
4187 lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4189 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_2);
4195 lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4197 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_3);
4203 lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4205 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_4);
4211 lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4213 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_5);
4219 lustre_dissect_element_mdt_rec_unlink_ul_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4221 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_bias);
4227 lustre_dissect_element_mdt_rec_unlink_ul_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4229 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_mode);
4235 lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4237 offset=dissect_uint32(tvb, offset, pinfo,