2 * Lustre 1.6 dissection (http://www.lustre.org/)
3 * Author: Laurent George <george@ocre.cea.fr>
4 * based on packet-agentx.c and packet-afs.c
5 * partially generated by Pidl
7 * Wireshark - Network traffic analyzer
8 * By Gerald Combs <gerald@wireshark.org>
9 * Copyright 1999 Gerald Combs
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
33 #include <epan/packet.h>
35 #include <epan/dissectors/packet-windows-common.h>
36 #include <plugins/lnet/packet-lnet.h>
39 /* --------------------------------------------------------------------------------------- */
40 /* def and macro to know where we are the the lustre payload */
41 #define LUSTRE_MAGIC_OFFSET 8
42 #define LUSTRE_MSG_MAGIC_V1 0x0BD00BD0
43 #define LUSTRE_MSG_MAGIC_V2 0x0BD00BD3
45 #define LUSTRE_BUFCOUNT_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 0 : 60)
46 #define LUSTRE_BUFCOUNT ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) \
47 ? (tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)) : ((tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF))) )
48 /* remark : BUFLENOFF don't have the same meaning if it's for v1 or v2
49 * v1 : LUSTRE_BUFLEN_OFF = offset buflen[0] - 4 bytes.
50 * v2 : LUSTRE_BUFLEN_OFF = offset buflen[0]
52 #define LUSTRE_BUFLEN_OFF ((tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET)== LUSTRE_MSG_MAGIC_V2) ? 32 : 60)
54 #define LUSTRE_REQ_REC_OFF 1 /* normal request record offset */
55 #define LUSTRE_REPLY_REC_OFF 1 /* normal reply record offset */
57 #define LUSTRE_DLM_INTENT_IT_OFF 2 /* intent lock it offset */
58 #define LUSTRE_DLM_INTENT_REC_OFF 3 /* intent lock record offset */
59 #define LUSTRE_DLM_LOCKREPLY_OFF 1 /* lockrep offset */
60 #define LUSTRE_DLM_REPLY_REC_OFF 2 /* reply record offset */
61 /* --------------------------------------------------------------------------------------- */
64 #define LUSTRE_PTLRPC_MSG_VERSION 0x00000003
65 #define LUSTRE_VERSION_MASK 0xffff0000
66 #define LUSTRE_OBD_VERSION 0x00010000
67 #define LUSTRE_MDS_VERSION 0x00020000
68 #define LUSTRE_OST_VERSION 0x00030000
69 #define LUSTRE_DLM_VERSION 0x00040000
70 #define LUSTRE_LOG_VERSION 0x00050000
71 #define LUSTRE_MGS_VERSION 0x00060000
75 #define LOV_MAGIC_V1 0x0BD10BD0
76 #define LOV_MAGIC LOV_MAGIC_V1
77 #define LOV_MAGIC_JOIN_V1 0x0BD20BD0
80 OST_REPLY = 0, /* reply ? */
94 /* OST_SAN_READ = 14, deprecated */
95 /* OST_SAN_WRITE = 15, deprecated */
100 OST_QUOTA_ADJUST_QUNIT = 20,
111 #define OBD_FIRST_OPC OBD_PING
115 MDS_GETATTR_NAME = 34,
126 MDS_DONE_WRITING = 45,
138 #define IT_OPEN 0x0001
139 #define IT_CREAT 0x0002
140 #define IT_READDIR 0x0004
141 #define IT_GETATTR 0x0008
142 #define IT_LOOKUP 0x0010
143 #define IT_UNLINK 0x0020
144 #define IT_GETXATTR 0x0040
145 #define IT_EXEC 0x0080
146 #define IT_PIN 0x0100
150 #define MDS_FIRST_OPC MDS_GETATTR
151 #define LDLM_FIRST_OPC LDLM_ENQUEUE
170 LDLM_BL_CALLBACK = 104,
171 LDLM_CP_CALLBACK = 105,
172 LDLM_GL_CALLBACK = 106,
175 #define LDLM_FIRST_OPC LDLM_ENQUEUE
177 #define LDLM_FL_LOCK_CHANGED 0x000001
178 #define LDLM_FL_BLOCK_GRANTED 0x000002
179 #define LDLM_FL_BLOCK_CONV 0x000004
180 #define LDLM_FL_BLOCK_WAIT 0x000008
181 #define LDLM_FL_AST_SENT 0x000020
182 #define LDLM_FL_REPLAY 0x000100
183 #define LDLM_FL_INTENT_ONLY 0x000200
184 #define LDLM_FL_HAS_INTENT 0x001000
185 #define LDLM_FL_DISCARD_DATA 0x010000
186 #define LDLM_FL_NO_TIMEOUT 0x020000
187 #define LDLM_FL_BLOCK_NOWAIT 0x040000
188 #define LDLM_FL_TEST_LOCK 0x080000
189 #define LDLM_FL_CANCEL_ON_BLOCK 0x800000
190 #define LDLM_FL_DENY_ON_CONTENTION 0x40000000
191 #define LDLM_AST_DISCARD_DATA 0x80000000
194 #define LDLM_ENQUEUE (101)
195 #define LDLM_CONVERT (102)
196 #define LDLM_CANCEL (103)
197 #define LDLM_BL_CALLBACK (104)
198 #define LDLM_CP_CALLBACK (105)
199 #define LDLM_GL_CALLBACK (106)
200 #define LCK_MINMODE (0)
207 #define LCK_GROUP (64)
208 #define LDLM_PLAIN (10)
209 #define LDLM_EXTENT (11)
210 #define LDLM_FLOCK (12)
211 #define LDLM_IBITS (13)
212 //#define MGS_CONNECT (250)
213 #define OBD_PING (400)
216 * Opcodes for mountconf (mgs and mgc)
221 MGS_EXCEPTION, /* node died, etc. */
222 MGS_TARGET_REG, /* whenever target starts up */
227 #define MGS_FIRST_OPC MGS_CONNECT
231 LLOG_ORIGIN_HANDLE_CREATE = 501,
232 LLOG_ORIGIN_HANDLE_NEXT_BLOCK = 502,
233 LLOG_ORIGIN_HANDLE_READ_HEADER = 503,
234 LLOG_ORIGIN_HANDLE_WRITE_REC = 504,
235 LLOG_ORIGIN_HANDLE_CLOSE = 505,
236 LLOG_ORIGIN_CONNECT = 506,
237 LLOG_CATINFO = 507, /* for lfs catinfo */
238 LLOG_ORIGIN_HANDLE_PREV_BLOCK = 508,
239 LLOG_ORIGIN_HANDLE_DESTROY = 509, /* for destroy llog object*/
243 #define LLOG_FIRST_OPC LLOG_ORIGIN_HANDLE_CREATE
244 /*flag for the LLOG*/
245 #define LLOG_OP_MAGIC 0x10600000
246 #define LLOG_OP_MASK 0xfff00000
249 LLOG_PAD_MAGIC = LLOG_OP_MAGIC | 0x00000,
250 OST_SZ_REC = LLOG_OP_MAGIC | 0x00f00,
251 OST_RAID1_REC = LLOG_OP_MAGIC | 0x01000,
252 MDS_UNLINK_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_UNLINK,
253 MDS_SETATTR_REC = LLOG_OP_MAGIC | 0x10000 | (MDS_REINT << 8) | REINT_SETATTR,
254 OBD_CFG_REC = LLOG_OP_MAGIC | 0x20000,
255 PTL_CFG_REC = LLOG_OP_MAGIC | 0x30000, /* obsolete */
256 LLOG_GEN_REC = LLOG_OP_MAGIC | 0x40000,
257 LLOG_JOIN_REC = LLOG_OP_MAGIC | 0x50000, /* obsolete */
258 LLOG_HDR_MAGIC = LLOG_OP_MAGIC | 0x45539,
259 LLOG_LOGID_MAGIC = LLOG_OP_MAGIC | 0x4553b,
263 /*defined in lustre/include/lustre/lustre_idl.h*/
264 #define LLOG_F_ZAP_WHEN_EMPTY 0x1
265 #define LLOG_F_IS_CAT 0x2
266 #define LLOG_F_IS_PLAIN 0x4
268 #define PTL_RPC_MSG_REQUEST 4711
269 #define PTL_RPC_MSG_ERR 4712
270 #define PTL_RPC_MSG_REPLY 4713
273 /* Ett declarations */
274 static gint ett_lustre_llog_log_llh_flags = -1 ;
275 static gint ett_lustre = -1;
276 static gint ett_lustre_lustre_handle_cookie = -1;
277 static gint ett_lustre_lustre_msg_v1 = -1;
278 static gint ett_lustre_lustre_handle_v1 = -1;
279 static gint ett_lustre_lustre_msg_v2 = -1;
280 static gint ett_lustre_ptlrpc_body = -1;
281 static gint ett_lustre_lustre_handle_v2 = -1;
282 static gint ett_lustre_obd_connect_data = -1;
283 static gint ett_lustre_lov_mds_md_v1 = -1;
284 static gint ett_lustre_lov_ost_data_v1 = -1;
285 static gint ett_lustre_obd_statfs = -1;
286 static gint ett_lustre_obd_ioobj = -1;
287 static gint ett_lustre_niobuf_remote = -1;
288 static gint ett_lustre_ost_lvb = -1;
289 static gint ett_lustre_ll_fid = -1;
290 static gint ett_lustre_mdt_body = -1;
291 static gint ett_lustre_mdt_rec_setattr = -1;
292 static gint ett_lustre_mdt_rec_create = -1;
293 static gint ett_lustre_mdt_rec_link = -1;
294 static gint ett_lustre_mdt_rec_unlink = -1;
295 static gint ett_lustre_mdt_rec_rename = -1;
296 static gint ett_lustre_mdt_rec_setxattr = -1;
297 static gint ett_lustre_obd_quotactl = -1;
298 static gint ett_lustre_obd_dqinfo = -1;
299 static gint ett_lustre_obd_dqblk = -1;
300 static gint ett_lustre_quota_adjust_qunit = -1;
301 static gint ett_lustre_lov_desc = -1;
302 static gint ett_lustre_obd_uuid = -1;
303 static gint ett_lustre_ldlm_res_id = -1;
304 static gint ett_lustre_ldlm_extent = -1;
305 static gint ett_lustre_ldlm_inodebits = -1;
306 static gint ett_lustre_ldlm_flock = -1;
307 static gint ett_lustre_ldlm_intent_opc = -1;
308 static gint ett_lustre_ldlm_resource_desc = -1;
309 static gint ett_lustre_ldlm_lock_desc = -1;
310 static gint ett_lustre_ldlm_request = -1;
311 static gint ett_lustre_lustre_handle = -1;
312 static gint ett_lustre_ldlm_reply = -1;
313 static gint ett_lustre_mgs_send_param = -1;
314 static gint ett_lustre_mgs_target_info = -1;
315 static gint ett_lustre_cfg_marker = -1;
316 static gint ett_lustre_llog_catid = -1;
317 static gint ett_lustre_llog_rec_hdr = -1;
318 static gint ett_lustre_llog_logid_rec = -1;
319 static gint ett_lustre_llog_logid = -1;
320 static gint ett_lustre_llog_rec_tail = -1;
321 static gint ett_lustre_lov_mds_md = -1;
322 static gint ett_lustre_llog_create_rec = -1;
323 static gint ett_lustre_llog_orphan_rec = -1;
324 static gint ett_lustre_llog_unlink_rec = -1;
325 static gint ett_lustre_llog_setattr_rec = -1;
326 static gint ett_lustre_llog_size_change_rec = -1;
327 static gint ett_lustre_llog_gen_rec = -1;
328 static gint ett_lustre_llog_log_hdr = -1;
329 static gint ett_lustre_llog_cookie = -1;
330 static gint ett_lustre_llogd_body = -1;
331 static gint ett_lustre_llogd_conn_body = -1;
332 static gint ett_lustre_llog_gen = -1;
333 static gint ett_lustre_obdo = -1;
334 static gint ett_lustre_ost_body = -1;
335 static gint ett_lustre_qunit_data = -1;
336 static gint ett_lustre_qunit_data_old2 = -1;
337 static gint ett_lustre_qunit_data_old = -1;
338 static gint ett_lustre_ldlm_lock_flags = -1 ;
340 /* -----------------------------------------------*/
341 /* Header field declarations */
342 static int hf_lustre_ptlrpc_body_pb = -1 ;
343 static int hf_lustre_ost_body = -1 ;
344 static int hf_lustre_obd_statfs = -1 ;
345 static int hf_lustre_obd_quotactl = -1 ;
346 static int hf_lustre_quota_adjust_qunit = -1 ;
347 static int hf_lustre_extra_padding = -1 ;
348 static int hf_lustre_ldlm_reply = -1 ;
349 static int hf_lustre_ldlm_request = -1 ;
350 static int hf_lustre_obd_uuid = -1 ;
351 static int hf_lustre_obd_connect_data = -1 ;
352 static int hf_lustre_ldlm_intent = -1;
353 static int hf_lustre_obd_ioobj = -1 ;
354 static int hf_lustre_niobuf_remote = -1 ;
355 static int hf_lustre_ost_key = -1 ;
356 static int hf_lustre_nio= -1 ;
357 static int hf_lustre_ost_val= -1;
358 static int hf_lustre_llogd_body = -1;
359 static int hf_lustre_llogd_log_hdr= -1;
360 static int hf_lustre_llog_logid_rec =-1 ;
361 static int hf_lustre_llogd_chunk= -1;
362 static int hf_lustre_llogd_keyword= -1;
363 static int hf_lustre_llogd_client= -1;
364 static int hf_lustre_llogd_name= -1;
366 static int hf_lustre_mds_xattr_name = -1;
367 static int hf_lustre_lov_mds_md_v1= -1;
368 static int hf_lustre_llog_cookie= -1;
369 static int hf_lustre_mds_md_data= -1;
370 static int hf_lustre_mds_reint_opcode= -1;
371 static int hf_lustre_mds_xattr_eadata = -1;
373 static int hf_lustre_reint_name= -1;
374 static int hf_lustre_reint_old_name= -1;
375 static int hf_lustre_reint_new_name= -1;
377 static int hf_lustre_mgs_target_info = -1 ;
378 static int hf_lustre_mgs_send_param = -1;
380 static int hf_lustre_ost_lvb = -1 ;
382 static int hf_lustre_ldlm_fl_lock_changed = -1;
383 static int hf_lustre_ldlm_fl_block_granted = -1;
384 static int hf_lustre_ldlm_fl_block_conv = -1;
385 static int hf_lustre_ldlm_fl_block_wait = -1;
386 static int hf_lustre_ldlm_fl_cbpending = -1;
387 static int hf_lustre_ldlm_fl_ast_sent = -1;
388 static int hf_lustre_ldlm_fl_wait_noreproc = -1;
389 static int hf_lustre_ldlm_fl_cancel = -1;
390 static int hf_lustre_ldlm_fl_replay = -1;
391 static int hf_lustre_ldlm_fl_intent_only = -1;
392 static int hf_lustre_ldlm_fl_local_only = -1;
393 static int hf_lustre_ldlm_fl_failed = -1;
394 static int hf_lustre_ldlm_fl_has_intent = -1;
395 static int hf_lustre_ldlm_fl_canceling = -1;
396 static int hf_lustre_ldlm_fl_local = -1;
397 static int hf_lustre_ldlm_fl_warn = -1;
398 static int hf_lustre_ldlm_fl_discard_data = -1;
399 static int hf_lustre_ldlm_fl_no_timeout = -1;
400 static int hf_lustre_ldlm_fl_block_nowait = -1;
401 static int hf_lustre_ldlm_fl_test_lock = -1;
402 static int hf_lustre_ldlm_fl_lvb_ready = -1;
403 static int hf_lustre_ldlm_fl_kms_ignore = -1;
404 static int hf_lustre_ldlm_fl_no_lru = -1;
405 static int hf_lustre_ldlm_fl_cancel_on_block = -1;
406 static int hf_lustre_ldlm_fl_cp_reqd = -1;
407 static int hf_lustre_ldlm_fl_cleaned = -1;
408 static int hf_lustre_ldlm_fl_atomic_cb = -1;
409 static int hf_lustre_ldlm_fl_bl_ast = -1;
410 static int hf_lustre_ldlm_fl_bl_done = -1;
411 static int hf_lustre_ldlm_fl_deny_on_contention = -1;
412 static int hf_lustre_ldlm_ast_discard_data = -1;
414 static int hf_lustre_mdt_body = -1 ;
415 static int hf_lustre_mdt_body_fid1 = -1;
416 static int hf_lustre_mdt_body_fid2 = -1;
417 static int hf_lustre_mdt_body_handle = -1;
418 static int hf_lustre_mdt_body_valid = -1;
419 static int hf_lustre_mdt_body_size = -1;
420 static int hf_lustre_mdt_body_mtime = -1;
421 static int hf_lustre_mdt_body_atime = -1;
422 static int hf_lustre_mdt_body_ctime = -1;
423 static int hf_lustre_mdt_body_blocks = -1;
424 static int hf_lustre_mdt_body_ioepoch = -1;
425 static int hf_lustre_mdt_body_ino = -1;
426 static int hf_lustre_mdt_body_fsuid = -1;
427 static int hf_lustre_mdt_body_fsgid = -1;
428 static int hf_lustre_mdt_body_capability = -1;
429 static int hf_lustre_mdt_body_mode = -1;
430 static int hf_lustre_mdt_body_uid = -1;
431 static int hf_lustre_mdt_body_gid = -1;
432 static int hf_lustre_mdt_body_flags = -1;
433 static int hf_lustre_mdt_body_rdev = -1;
434 static int hf_lustre_mdt_body_nlink = -1;
435 static int hf_lustre_mdt_body_generation = -1;
436 static int hf_lustre_mdt_body_suppgid = -1;
437 static int hf_lustre_mdt_body_eadatasize = -1;
438 static int hf_lustre_mdt_body_aclsize = -1;
439 static int hf_lustre_mdt_body_max_mdsize = -1;
440 static int hf_lustre_mdt_body_max_cookiesize = -1;
441 static int hf_lustre_mdt_body_uid_h = -1;
442 static int hf_lustre_mdt_body_gid_h = -1;
443 static int hf_lustre_mdt_body_padding_5 = -1;
444 static int hf_lustre_mdt_body_padding_6 = -1;
445 static int hf_lustre_mdt_body_padding_7 = -1;
446 static int hf_lustre_mdt_body_padding_8 = -1;
447 static int hf_lustre_mdt_body_padding_9 = -1;
448 static int hf_lustre_mdt_body_padding_10 = -1;
450 static int hf_lustre_mdt_rec_setattr = -1 ;
451 static int hf_lustre_mdt_rec_setattr_sa_opcode = -1;
452 static int hf_lustre_mdt_rec_setattr_sa_cap = -1;
453 static int hf_lustre_mdt_rec_setattr_sa_fsuid = -1;
454 static int hf_lustre_mdt_rec_setattr_sa_fsuid_h = -1;
455 static int hf_lustre_mdt_rec_setattr_sa_fsgid = -1;
456 static int hf_lustre_mdt_rec_setattr_sa_fsgid_h = -1;
457 static int hf_lustre_mdt_rec_setattr_sa_suppgid = -1;
458 static int hf_lustre_mdt_rec_setattr_sa_suppgid_h = -1;
459 static int hf_lustre_mdt_rec_setattr_sa_padding_1 = -1;
460 static int hf_lustre_mdt_rec_setattr_sa_padding_1_h = -1;
461 static int hf_lustre_mdt_rec_setattr_sa_fid = -1;
462 static int hf_lustre_mdt_rec_setattr_sa_valid = -1;
463 static int hf_lustre_mdt_rec_setattr_sa_uid = -1;
464 static int hf_lustre_mdt_rec_setattr_sa_gid = -1;
465 static int hf_lustre_mdt_rec_setattr_sa_size = -1;
466 static int hf_lustre_mdt_rec_setattr_sa_blocks = -1;
467 static int hf_lustre_mdt_rec_setattr_sa_mtime = -1;
468 static int hf_lustre_mdt_rec_setattr_sa_atime = -1;
469 static int hf_lustre_mdt_rec_setattr_sa_ctime = -1;
470 static int hf_lustre_mdt_rec_setattr_sa_attr_flags = -1;
471 static int hf_lustre_mdt_rec_setattr_sa_mode = -1;
472 static int hf_lustre_mdt_rec_setattr_sa_padding_2 = -1;
473 static int hf_lustre_mdt_rec_setattr_sa_padding_3 = -1;
474 static int hf_lustre_mdt_rec_setattr_sa_padding_4 = -1;
475 static int hf_lustre_mdt_rec_setattr_sa_padding_5 = -1;
477 static int hf_lustre_mdt_rec_create = -1 ;
478 static int hf_lustre_mdt_rec_create_cr_opcode = -1;
479 static int hf_lustre_mdt_rec_create_cr_cap = -1;
480 static int hf_lustre_mdt_rec_create_cr_fsuid = -1;
481 static int hf_lustre_mdt_rec_create_cr_fsuid_h = -1;
482 static int hf_lustre_mdt_rec_create_cr_fsgid = -1;
483 static int hf_lustre_mdt_rec_create_cr_fsgid_h = -1;
484 static int hf_lustre_mdt_rec_create_cr_suppgid1 = -1;
485 static int hf_lustre_mdt_rec_create_cr_suppgid1_h = -1;
486 static int hf_lustre_mdt_rec_create_cr_suppgid2 = -1;
487 static int hf_lustre_mdt_rec_create_cr_suppgid2_h = -1;
488 static int hf_lustre_mdt_rec_create_cr_fid1 = -1;
489 static int hf_lustre_mdt_rec_create_cr_fid2 = -1;
490 static int hf_lustre_mdt_rec_create_cr_old_handle = -1;
491 static int hf_lustre_mdt_rec_create_cr_time = -1;
492 static int hf_lustre_mdt_rec_create_cr_rdev = -1;
493 static int hf_lustre_mdt_rec_create_cr_cr_ioepoch = -1;
494 static int hf_lustre_mdt_rec_create_cr_padding_1 = -1;
495 static int hf_lustre_mdt_rec_create_cr_mode = -1;
496 static int hf_lustre_mdt_rec_create_cr_bias = -1;
497 static int hf_lustre_mdt_rec_create_cr_flags_l = -1;
498 static int hf_lustre_mdt_rec_create_cr_flags_h = -1;
499 static int hf_lustre_mdt_rec_create_cr_padding_3 = -1;
500 static int hf_lustre_mdt_rec_create_cr_padding_4 = -1;
502 static int hf_lustre_mdt_rec_link = -1 ;
503 static int hf_lustre_mdt_rec_link_lk_opcode = -1;
504 static int hf_lustre_mdt_rec_link_lk_cap = -1;
505 static int hf_lustre_mdt_rec_link_lk_fsuid = -1;
506 static int hf_lustre_mdt_rec_link_lk_fsuid_h = -1;
507 static int hf_lustre_mdt_rec_link_lk_fsgid = -1;
508 static int hf_lustre_mdt_rec_link_lk_fsgid_h = -1;
509 static int hf_lustre_mdt_rec_link_lk_suppgid1 = -1;
510 static int hf_lustre_mdt_rec_link_lk_suppgid1_h = -1;
511 static int hf_lustre_mdt_rec_link_lk_suppgid2 = -1;
512 static int hf_lustre_mdt_rec_link_lk_suppgid2_h = -1;
513 static int hf_lustre_mdt_rec_link_lk_fid1 = -1;
514 static int hf_lustre_mdt_rec_link_lk_fid2 = -1;
515 static int hf_lustre_mdt_rec_link_lk_time = -1;
516 static int hf_lustre_mdt_rec_link_lk_padding_1 = -1;
517 static int hf_lustre_mdt_rec_link_lk_padding_2 = -1;
518 static int hf_lustre_mdt_rec_link_lk_padding_3 = -1;
519 static int hf_lustre_mdt_rec_link_lk_padding_4 = -1;
520 static int hf_lustre_mdt_rec_link_lk_bias = -1;
521 static int hf_lustre_mdt_rec_link_lk_padding_5 = -1;
522 static int hf_lustre_mdt_rec_link_lk_padding_6 = -1;
523 static int hf_lustre_mdt_rec_link_lk_padding_7 = -1;
524 static int hf_lustre_mdt_rec_link_lk_padding_8 = -1;
525 static int hf_lustre_mdt_rec_link_lk_padding_9 = -1;
527 static int hf_lustre_mdt_rec_unlink = -1 ;
528 static int hf_lustre_mdt_rec_unlink_ul_opcode = -1;
529 static int hf_lustre_mdt_rec_unlink_ul_cap = -1;
530 static int hf_lustre_mdt_rec_unlink_ul_fsuid = -1;
531 static int hf_lustre_mdt_rec_unlink_ul_fsuid_h = -1;
532 static int hf_lustre_mdt_rec_unlink_ul_fsgid = -1;
533 static int hf_lustre_mdt_rec_unlink_ul_fsgid_h = -1;
534 static int hf_lustre_mdt_rec_unlink_ul_suppgid1 = -1;
535 static int hf_lustre_mdt_rec_unlink_ul_suppgid1_h = -1;
536 static int hf_lustre_mdt_rec_unlink_ul_suppgid2 = -1;
537 static int hf_lustre_mdt_rec_unlink_ul_suppgid2_h = -1;
538 static int hf_lustre_mdt_rec_unlink_ul_fid1 = -1;
539 static int hf_lustre_mdt_rec_unlink_ul_fid2 = -1;
540 static int hf_lustre_mdt_rec_unlink_ul_time = -1;
541 static int hf_lustre_mdt_rec_unlink_ul_padding_2 = -1;
542 static int hf_lustre_mdt_rec_unlink_ul_padding_3 = -1;
543 static int hf_lustre_mdt_rec_unlink_ul_padding_4 = -1;
544 static int hf_lustre_mdt_rec_unlink_ul_padding_5 = -1;
545 static int hf_lustre_mdt_rec_unlink_ul_bias = -1;
546 static int hf_lustre_mdt_rec_unlink_ul_mode = -1;
547 static int hf_lustre_mdt_rec_unlink_ul_padding_6 = -1;
548 static int hf_lustre_mdt_rec_unlink_ul_padding_7 = -1;
549 static int hf_lustre_mdt_rec_unlink_ul_padding_8 = -1;
550 static int hf_lustre_mdt_rec_unlink_ul_padding_9 = -1;
552 static int hf_lustre_mdt_rec_rename = -1 ;
553 static int hf_lustre_mdt_rec_rename_rn_opcode = -1;
554 static int hf_lustre_mdt_rec_rename_rn_cap = -1;
555 static int hf_lustre_mdt_rec_rename_rn_fsuid = -1;
556 static int hf_lustre_mdt_rec_rename_rn_fsuid_h = -1;
557 static int hf_lustre_mdt_rec_rename_rn_fsgid = -1;
558 static int hf_lustre_mdt_rec_rename_rn_fsgid_h = -1;
559 static int hf_lustre_mdt_rec_rename_rn_suppgid1 = -1;
560 static int hf_lustre_mdt_rec_rename_rn_suppgid1_h = -1;
561 static int hf_lustre_mdt_rec_rename_rn_suppgid2 = -1;
562 static int hf_lustre_mdt_rec_rename_rn_suppgid2_h = -1;
563 static int hf_lustre_mdt_rec_rename_rn_fid1 = -1;
564 static int hf_lustre_mdt_rec_rename_rn_fid2 = -1;
565 static int hf_lustre_mdt_rec_rename_rn_time = -1;
566 static int hf_lustre_mdt_rec_rename_rn_padding_1 = -1;
567 static int hf_lustre_mdt_rec_rename_rn_padding_2 = -1;
568 static int hf_lustre_mdt_rec_rename_rn_padding_3 = -1;
569 static int hf_lustre_mdt_rec_rename_rn_padding_4 = -1;
570 static int hf_lustre_mdt_rec_rename_rn_bias = -1;
571 static int hf_lustre_mdt_rec_rename_rn_mode = -1;
572 static int hf_lustre_mdt_rec_rename_rn_padding_5 = -1;
573 static int hf_lustre_mdt_rec_rename_rn_padding_6 = -1;
574 static int hf_lustre_mdt_rec_rename_rn_padding_7 = -1;
575 static int hf_lustre_mdt_rec_rename_rn_padding_8 = -1;
577 static int hf_lustre_mdt_rec_setxattr = -1 ;
578 static int hf_lustre_mdt_rec_setxattr_sx_opcode = -1;
579 static int hf_lustre_mdt_rec_setxattr_sx_cap = -1;
580 static int hf_lustre_mdt_rec_setxattr_sx_fsuid = -1;
581 static int hf_lustre_mdt_rec_setxattr_sx_fsuid_h = -1;
582 static int hf_lustre_mdt_rec_setxattr_sx_fsgid = -1;
583 static int hf_lustre_mdt_rec_setxattr_sx_fsgid_h = -1;
584 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1 = -1;
585 static int hf_lustre_mdt_rec_setxattr_sx_suppgid1_h = -1;
586 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2 = -1;
587 static int hf_lustre_mdt_rec_setxattr_sx_suppgid2_h = -1;
588 static int hf_lustre_mdt_rec_setxattr_sx_fid = -1;
589 static int hf_lustre_mdt_rec_setxattr_sx_padding_1 = -1;
590 static int hf_lustre_mdt_rec_setxattr_sx_padding_2 = -1;
591 static int hf_lustre_mdt_rec_setxattr_sx_padding_3 = -1;
592 static int hf_lustre_mdt_rec_setxattr_sx_valid = -1;
593 static int hf_lustre_mdt_rec_setxattr_sx_time = -1;
594 static int hf_lustre_mdt_rec_setxattr_sx_padding_5 = -1;
595 static int hf_lustre_mdt_rec_setxattr_sx_padding_6 = -1;
596 static int hf_lustre_mdt_rec_setxattr_sx_padding_7 = -1;
597 static int hf_lustre_mdt_rec_setxattr_sx_size = -1;
598 static int hf_lustre_mdt_rec_setxattr_sx_flags = -1;
599 static int hf_lustre_mdt_rec_setxattr_sx_padding_8 = -1;
600 static int hf_lustre_mdt_rec_setxattr_sx_padding_9 = -1;
601 static int hf_lustre_mdt_rec_setxattr_sx_padding_10 = -1;
602 static int hf_lustre_mdt_rec_setxattr_sx_padding_11 = -1;
604 static int hf_lustre_lustre_handle_cookie = -1;
605 static int hf_lustre_ptlrpc_body_pb_last_committed = -1;
606 static int hf_lustre_ptlrpc_body_pb_version = -1;
607 static int hf_lustre_lustre_msg_v1_lm_bufcount = -1;
608 static int hf_lustre_obd_ioobj_ioo_id = -1;
609 static int hf_lustre_ptlrpc_body_pb_slv = -1;
610 static int hf_lustre_lustre_msg_v1_lm_handle = -1;
611 static int hf_lustre_ost_lvb_lvb_atime = -1;
612 static int hf_lustre_ptlrpc_body_pb_timeout = -1;
613 static int hf_lustre_obd_statfs_os_bavail = -1;
614 static int hf_lustre_obd_statfs_os_bsize = -1;
615 static int hf_lustre_lustre_msg_v2_lm_repsize = -1;
616 static int hf_lustre_lov_mds_md_v1_lmm_stripe_size = -1;
617 static int hf_lustre_lustre_msg_v1_lm_last_xid = -1;
618 static int hf_lustre_ll_fid_f_type = -1;
619 static int hf_lustre_lustre_msg_v2_lm_cksum = -1;
620 static int hf_lustre_lustre_msg_v2_lm_buflens = -1;
621 static int hf_lustre_lustre_msg_v1_lm_status = -1;
622 static int hf_lustre_lustre_msg_v1_lm_type = -1;
623 static int hf_lustre_niobuf_remote_len = -1;
624 static int hf_lustre_lov_mds_md_v1_lmm_magic = -1;
625 static int hf_lustre_ptlrpc_body_pb_op_flags = -1;
626 static int hf_lustre_ost_lvb_lvb_ctime = -1;
627 static int hf_lustre_ptlrpc_body_pb_type = -1;
628 static int hf_lustre_obd_connect_data_ocd_nllg = -1;
629 static int hf_lustre_obd_connect_data_ocd_nllu = -1;
630 static int hf_lustre_ll_fid_generation = -1;
631 static int hf_lustre_ost_lvb_lvb_mtime = -1;
632 static int hf_lustre_obd_connect_data_ocd_ibits_known = -1;
633 static int hf_lustre_lustre_msg_v2_lm_padding_3 = -1;
634 static int hf_lustre_ptlrpc_body_pb_flags = -1;
635 static int hf_lustre_obd_statfs_os_spare4 = -1;
636 static int hf_lustre_obd_connect_data_ocd_group = -1;
637 static int hf_lustre_lov_ost_data_v1_l_object_seq = -1;
638 static int hf_lustre_lov_mds_md_v1_lmm_object_seq = -1;
639 static int hf_lustre_obd_connect_data_ocd_brw_size = -1;
640 static int hf_lustre_ptlrpc_body_pb_limit = -1;
641 static int hf_lustre_obd_statfs_os_maxbytes = -1;
642 static int hf_lustre_obd_statfs_os_spare5 = -1;
643 static int hf_lustre_lustre_msg_v2_lm_flags = -1;
644 static int hf_lustre_obd_statfs_os_ffree = -1;
645 static int hf_lustre_obd_statfs_os_files = -1;
646 static int hf_lustre_lov_mds_md_v1_lmm_stripe_count = -1;
647 static int hf_lustre_lustre_msg_v1_lm_flags = -1;
648 static int hf_lustre_lustre_msg_v1_lm_last_committed = -1;
649 static int hf_lustre_obd_statfs_os_spare9 = -1;
650 static int hf_lustre_obd_connect_data_ocd_index = -1;
651 static int hf_lustre_opnum = -1;
652 static int hf_lustre_lustre_msg_v1_lm_buflens = -1;
653 static int hf_lustre_obd_statfs_os_spare1 = -1;
654 static int hf_lustre_obd_statfs_os_spare8 = -1;
655 static int hf_lustre_lustre_msg_v1_lm_conn_cnt = -1;
656 static int hf_lustre_ptlrpc_body_pb_transno = -1;
657 static int hf_lustre_ptlrpc_body_pb_service_time = -1;
658 static int hf_lustre_ptlrpc_body_pb_conn_cnt = -1;
659 static int hf_lustre_ptlrpc_body_pb_opc = -1;
660 static int hf_lustre_obd_connect_data_ocd_connect_flags = -1;
661 static int hf_lustre_lov_ost_data_v1_l_object_id = -1;
662 static int hf_lustre_lov_ost_data_v1_l_ost_gen = -1;
663 static int hf_lustre_obd_statfs_os_bfree = -1;
664 static int hf_lustre_obd_connect_data_ocd_version = -1;
665 static int hf_lustre_lov_mds_md_v1_lmm_objects = -1;
666 static int hf_lustre_obd_statfs_os_namelen = -1;
667 static int hf_lustre_obd_statfs_os_blocks = -1;
668 static int hf_lustre_lustre_msg_v2_lm_secflvr = -1;
669 static int hf_lustre_lustre_msg_v1_lm_transno = -1;
670 static int hf_lustre_lov_mds_md_v1_lmm_pattern = -1;
671 static int hf_lustre_lustre_msg_v1_lm_opc = -1;
672 static int hf_lustre_obd_connect_data_ocd_grant = -1;
673 static int hf_lustre_obd_ioobj_ioo_bufcnt = -1;
674 static int hf_lustre_lustre_msg_v1_lm_version = -1;
675 static int hf_lustre_obd_statfs_os_spare7 = -1;
676 static int hf_lustre_obd_statfs_os_fsid = -1;
677 static int hf_lustre_obd_connect_data_ocd_cksum_types = -1;
678 static int hf_lustre_ost_lvb_lvb_size = -1;
679 static int hf_lustre_obd_statfs_os_type = -1;
680 static int hf_lustre_obd_statfs_os_spare6 = -1;
681 static int hf_lustre_obd_statfs_os_state = -1;
682 static int hf_lustre_obd_statfs_os_spare3 = -1;
683 static int hf_lustre_lustre_msg_v2_lm_magic = -1;
684 static int hf_lustre_lov_mds_md_v1_lmm_object_id = -1;
685 static int hf_lustre_ptlrpc_body_pb_last_seen = -1;
686 static int hf_lustre_obd_ioobj_ioo_type = -1;
687 static int hf_lustre_ptlrpc_body_pb_last_xid = -1;
688 static int hf_lustre_ptlrpc_body_pb_status = -1;
689 static int hf_lustre_niobuf_remote_flags = -1;
690 static int hf_lustre_ll_fid_id = -1;
691 static int hf_lustre_ost_lvb_lvb_blocks = -1;
692 static int hf_lustre_lustre_msg_v2_lm_padding_2 = -1;
693 static int hf_lustre_obd_connect_data_padding1 = -1;
694 static int hf_lustre_lov_ost_data_v1_l_ost_idx = -1;
695 static int hf_lustre_obd_connect_data_padding2 = -1;
696 static int hf_lustre_obd_ioobj_ioo_seq = -1;
697 static int hf_lustre_niobuf_remote_offset=-1;
698 static int hf_lustre_obd_statfs_os_spare2 = -1;
699 static int hf_lustre_lustre_msg_v2_lm_bufcount = -1;
700 static int hf_lustre_ptlrpc_body_pb_handle = -1;
701 static int hf_lustre_obd_connect_data_ocd_transno = -1;
702 static int hf_lustre_lustre_msg_v1_lm_magic = -1;
703 static int hf_lustre_llog_unlink_rec_lur_tail = -1;
704 static int hf_lustre_llog_size_change_rec_lsc_io_epoch = -1;
705 static int hf_lustre_mgs_target_info_mti_flags = -1;
706 static int hf_lustre_ldlm_reply_lock_policy_res1 = -1;
707 static int hf_lustre_llogd_body_lgd_len = -1;
708 static int hf_lustre_qunit_data_old_qd_id = -1;
709 static int hf_lustre_llog_logid_rec_padding1 = -1;
710 static int hf_lustre_quota_adjust_qunit_padding1 = -1;
711 static int hf_lustre_llog_size_change_rec_lsc_fid = -1;
712 static int hf_lustre_llog_rec_hdr_padding = -1;
713 static int hf_lustre_obdo_o_nlink = -1;
714 static int hf_lustre_ldlm_extent_gid = -1;
715 static int hf_lustre_obdo_o_uid = -1;
716 static int hf_lustre_obdo_o_valid = -1;
717 static int hf_lustre_ldlm_reply_lock_flags = -1;
718 static int hf_lustre_obdo_o_misc = -1;
720 static int hf_lustre_ldlm_request_lock_handle = -1;
721 static int hf_lustre_llog_logid_lgl_oid = -1;
722 static int hf_lustre_ldlm_inodebits_bits = -1;
723 static int hf_lustre_llog_log_hdr_llh_count = -1;
724 static int hf_lustre_llog_gen_rec_lgr_tail = -1;
725 static int hf_lustre_llog_catid_lci_padding3 = -1;
726 static int hf_lustre_qunit_data_qd_qunit = -1;
727 static int hf_lustre_llog_setattr_rec_padding = -1;
728 static int hf_lustre_llog_cookie_lgc_lgl = -1;
729 static int hf_lustre_obd_quotactl_qc_dqinfo = -1;
730 static int hf_lustre_llog_log_hdr_llh_bitmap = -1;
731 static int hf_lustre_obd_quotactl_qc_stat = -1;
732 static int hf_lustre_qunit_data_old2_qd_id = -1;
733 static int hf_lustre_llog_logid_rec_padding2 = -1;
734 static int hf_lustre_llog_orphan_rec_lor_tail = -1;
735 static int hf_lustre_llog_logid_rec_padding5 = -1;
736 static int hf_lustre_ldlm_intent_opc = -1;
737 static int hf_lustre_llog_rec_hdr_lrh_type = -1;
738 static int hf_lustre_llog_rec_hdr_lrh_len = -1;
739 static int hf_lustre_llog_setattr_rec_lsr_uid = -1;
740 static int hf_lustre_lov_desc_ld_padding_1 = -1;
741 static int hf_lustre_obdo_o_padding_4 = -1;
742 static int hf_lustre_mgs_target_info_padding = -1;
743 static int hf_lustre_obd_quotactl_qc_dqblk = -1;
744 static int hf_lustre_llogd_conn_body_lgdc_gen = -1;
745 static int hf_lustre_llog_log_hdr_llh_tail = -1;
746 static int hf_lustre_obdo_o_size = -1;
747 static int hf_lustre_ldlm_extent_start = -1;
748 static int hf_lustre_llog_size_change_rec_lsc_hdr = -1;
749 static int hf_lustre_llog_create_rec_lcr_tail = -1;
750 static int hf_lustre_llog_logid_lgl_oseq = -1;
751 static int hf_lustre_llog_create_rec_lcr_hdr = -1;
752 static int hf_lustre_llog_cookie_lgc_padding = -1;
753 static int hf_lustre_qunit_data_old_qd_type = -1;
754 static int hf_lustre_ldlm_flock_blocking_export = -1;
755 static int hf_lustre_lov_desc_ld_pattern = -1;
756 static int hf_lustre_qunit_data_qd_id = -1;
757 static int hf_lustre_mgs_target_info_mti_fsname = -1;
758 static int hf_lustre_ldlm_request_lock_flags = -1;
759 static int hf_lustre_obdo_o_mode = -1;
760 static int hf_lustre_mgs_target_info_mti_svname = -1;
761 static int hf_lustre_llogd_body_lgd_logid = -1;
762 static int hf_lustre_llog_log_hdr_llh_size = -1;
763 static int hf_lustre_llog_create_rec_padding = -1;
764 static int hf_lustre_obdo_o_handle = -1;
765 static int hf_lustre_obdo_o_atime = -1;
766 static int hf_lustre_quota_adjust_qunit_qaq_id = -1;
767 static int hf_lustre_ldlm_lock_desc_l_policy_data = -1;
768 static int hf_lustre_obd_quotactl_qc_cmd = -1;
769 static int hf_lustre_qunit_data_padding = -1;
770 static int hf_lustre_quota_adjust_qunit_qaq_flags = -1;
771 static int hf_lustre_ldlm_lock_desc_l_granted_mode = -1;
772 static int hf_lustre_obdo_o_seq = -1;
773 static int hf_lustre_obdo_o_gid = -1;
774 static int hf_lustre_llog_catid_lci_logid = -1;
775 static int hf_lustre_llog_rec_tail_lrt_index = -1;
776 static int hf_lustre_lov_desc_ld_default_stripe_count = -1;
777 static int hf_lustre_ldlm_resource_desc_lr_padding = -1;
778 static int hf_lustre_cfg_marker_cm_vers = -1;
779 static int hf_lustre_llog_unlink_rec_lur_hdr = -1;
780 static int hf_lustre_llogd_body_lgd_index = -1;
781 static int hf_lustre_cfg_marker_cm_tgtname = -1;
782 static int hf_lustre_llog_setattr_rec_lsr_ogen = -1;
783 static int hf_lustre_llog_logid_rec_lid_hdr = -1;
784 static int hf_lustre_obdo_o_ioepoch = -1;
785 static int hf_lustre_ost_body_oa = -1;
786 static int hf_lustre_llog_logid_rec_padding3 = -1;
787 static int hf_lustre_llog_log_hdr_llh_flags = -1;
788 static int hf_lustre_llog_setattr_rec_lsr_oid = -1;
789 static int hf_lustre_llog_size_change_rec_padding = -1;
790 static int hf_lustre_mgs_target_info_mti_config_ver = -1;
791 static int hf_lustre_cfg_marker_cm_createtime = -1;
792 static int hf_lustre_qunit_data_old_qd_count = -1;
793 static int hf_lustre_llog_catid_lci_padding1 = -1;
794 static int hf_lustre_lov_desc_ld_active_tgt_count = -1;
795 static int hf_lustre_obdo_o_lcookie = -1;
796 static int hf_lustre_llog_gen_rec_lgr_gen = -1;
797 static int hf_lustre_obdo_o_id = -1;
798 static int hf_lustre_mgs_target_info_mti_uuid = -1;
799 static int hf_lustre_llog_rec_hdr_lrh_index = -1;
800 static int hf_lustre_llog_setattr_rec_lsr_hdr = -1;
801 static int hf_lustre_mgs_target_info_mti_stripe_index = -1;
802 static int hf_lustre_llog_gen_conn_cnt = -1;
803 static int hf_lustre_obdo_o_padding_6 = -1;
804 static int hf_lustre_llog_cookie_lgc_index = -1;
805 static int hf_lustre_lov_desc_ld_uuid = -1;
806 static int hf_lustre_llog_create_rec_lcr_oid = -1;
807 static int hf_lustre_ldlm_reply_lock_desc = -1;
808 static int hf_lustre_lov_desc_ld_padding_0 = -1;
809 static int hf_lustre_llog_unlink_rec_lur_ogen = -1;
810 static int hf_lustre_llog_orphan_rec_lor_hdr = -1;
811 static int hf_lustre_cfg_marker_cm_flags = -1;
812 static int hf_lustre_obdo_o_padding_3 = -1;
813 static int hf_lustre_ldlm_request_lock_desc = -1;
814 static int hf_lustre_llog_orphan_rec_padding = -1;
815 static int hf_lustre_obdo_o_flags = -1;
816 static int hf_lustre_mgs_target_info_mti_params = -1;
817 static int hf_lustre_llog_logid_lgl_ogen = -1;
818 static int hf_lustre_cfg_marker_cm_comment = -1;
819 static int hf_lustre_llog_unlink_rec_lur_oid = -1;
820 static int hf_lustre_qunit_data_qd_count = -1;
821 static int hf_lustre_obdo_o_mtime = -1;
822 static int hf_lustre_obdo_o_blksize = -1;
823 static int hf_lustre_ldlm_res_id_name = -1;
824 static int hf_lustre_ldlm_reply_lock_handle = -1;
825 static int hf_lustre_llogd_body_lgd_saved_index = -1;
826 static int hf_lustre_qunit_data_old_qd_isblk = -1;
827 static int hf_lustre_obdo_o_blocks = -1;
828 static int hf_lustre_lov_desc_ld_padding_2 = -1;
829 static int hf_lustre_llog_logid_rec_lid_tail = -1;
830 static int hf_lustre_obdo_o_grant = -1;
831 static int hf_lustre_obdo_o_padding_2 = -1;
832 static int hf_lustre_quota_adjust_qunit_qaq_iunit_sz = -1;
833 static int hf_lustre_llog_unlink_rec_padding = -1;
834 static int hf_lustre_ldlm_lock_desc_l_req_mode = -1;
835 static int hf_lustre_ldlm_extent_end = -1;
836 static int hf_lustre_llog_gen_rec_lgr_hdr = -1;
837 static int hf_lustre_llog_orphan_rec_lor_ogen = -1;
838 static int hf_lustre_llogd_body_lgd_llh_flags = -1;
839 static int hf_lustre_llog_log_hdr_llh_cat_idx = -1;
840 static int hf_lustre_llog_log_hdr_llh_bitmap_offset=-1;
841 static int hf_lustre_llog_orphan_rec_lor_oid = -1;
842 static int hf_lustre_ldlm_reply_lock_padding = -1;
843 static int hf_lustre_obd_quotactl_qc_id = -1;
844 static int hf_lustre_llog_logid_rec_padding4 = -1;
845 static int hf_lustre_llog_setattr_rec_lsr_gid = -1;
846 static int hf_lustre_obd_quotactl_qc_type = -1;
847 static int hf_lustre_cfg_marker_padding = -1;
848 static int hf_lustre_mgs_target_info_mti_nids = -1;
849 static int hf_lustre_obdo_o_stripe_idx = -1;
850 static int hf_lustre_llogd_conn_body_lgdc_logid = -1;
851 static int hf_lustre_ldlm_flock_blocking_pid = -1;
852 static int hf_lustre_lov_desc_ld_tgt_count = -1;
853 static int hf_lustre_llogd_body_lgd_cur_offset=-1;
854 static int hf_lustre_llog_create_rec_lcr_ogen = -1;
855 static int hf_lustre_qunit_data_old2_qd_count = -1;
856 static int hf_lustre_qunit_data_old2_qd_flags = -1;
857 static int hf_lustre_ldlm_flock_start = -1;
858 static int hf_lustre_quota_adjust_qunit_qaq_bunit_sz = -1;
859 static int hf_lustre_ldlm_flock_pid = -1;
860 static int hf_lustre_lov_desc_ld_default_stripe_size = -1;
861 static int hf_lustre_llog_log_hdr_llh_tgtuuid = -1;
862 static int hf_lustre_cfg_marker_cm_step = -1;
863 static int hf_lustre_mgs_send_param_mgs_param = -1;
864 static int hf_lustre_llog_create_rec_lcr_fid = -1;
865 static int hf_lustre_lov_desc_ld_default_stripe_offset=-1;
866 static int hf_lustre_ldlm_resource_desc_lr_name = -1;
867 static int hf_lustre_llog_rec_tail_lrt_len = -1;
868 static int hf_lustre_llog_log_hdr_llh_timestamp = -1;
869 static int hf_lustre_llog_catid_lci_padding2 = -1;
870 static int hf_lustre_llogd_conn_body_lgdc_ctxt_idx = -1;
871 static int hf_lustre_cfg_marker_cm_canceltime = -1;
872 static int hf_lustre_mgs_target_info_mti_lustre_ver = -1;
873 static int hf_lustre_obdo_o_parent_ver = -1;
874 static int hf_lustre_qunit_data_qd_flags = -1;
875 static int hf_lustre_llog_logid_rec_lid_id = -1;
876 static int hf_lustre_obdo_o_parent_oid = -1;
877 static int hf_lustre_llog_gen_mnt_cnt = -1;
878 static int hf_lustre_llog_size_change_rec_lsc_tail = -1;
879 static int hf_lustre_obdo_o_padding_5 = -1;
880 static int hf_lustre_ldlm_lock_desc_l_resource = -1;
881 static int hf_lustre_obdo_o_parent_seq = -1;
882 static int hf_lustre_ldlm_request_lock_count = -1;
883 static int hf_lustre_ldlm_flock_end = -1;
884 static int hf_lustre_mgs_target_info_mti_nid_count = -1;
885 static int hf_lustre_obdo_o_ctime = -1;
886 static int hf_lustre_ldlm_reply_lock_policy_res2 = -1;
887 static int hf_lustre_llogd_body_lgd_ctxt_idx = -1;
888 static int hf_lustre_lov_desc_ld_qos_maxage = -1;
889 static int hf_lustre_ldlm_resource_desc_lr_type = -1;
890 static int hf_lustre_llog_setattr_rec_lsr_tail = -1;
891 static int hf_lustre_llog_cookie_lgc_subsys = -1;
892 static int hf_lustre_llog_log_hdr_llh_hdr = -1;
893 static int hf_lustre_llog_log_hdr_llh_reserved = -1;
895 /* Header field declarations for field from lustre_user.h*/
896 static int hf_lustre_obd_dqinfo_dqi_valid = -1;
897 static int hf_lustre_obd_dqblk_dqb_isoftlimit = -1;
898 static int hf_lustre_obd_dqblk_dqb_bhardlimit = -1;
899 static int hf_lustre_obd_dqblk_dqb_curspace = -1;
900 static int hf_lustre_obd_dqblk_dqb_itime = -1;
901 static int hf_lustre_obd_dqblk_dqb_valid = -1;
902 static int hf_lustre_obd_dqinfo_dqi_igrace = -1;
903 static int hf_lustre_obd_dqinfo_dqi_bgrace = -1;
904 static int hf_lustre_obd_dqblk_padding = -1;
905 static int hf_lustre_obd_dqblk_dqb_curinodes = -1;
906 static int hf_lustre_obd_dqblk_dqb_bsoftlimit = -1;
907 static int hf_lustre_obd_dqinfo_dqi_flags = -1;
908 static int hf_lustre_obd_dqblk_dqb_btime = -1;
909 static int hf_lustre_obd_dqblk_dqb_ihardlimit = -1;
910 static int hf_lustre_ldlm_intent_opc_open = -1 ;
911 static int hf_lustre_ldlm_intent_opc_creat = -1;
912 static int hf_lustre_ldlm_intent_opc_readdir = -1;
913 static int hf_lustre_ldlm_intent_opc_getattr = -1;
914 static int hf_lustre_ldlm_intent_opc_lookup = -1;
915 static int hf_lustre_ldlm_intent_opc_unlink = -1;
916 static int hf_lustre_ldlm_intent_opc_getxattr = -1;
917 static int hf_lustre_ldlm_intent_opc_exec = -1;
918 static int hf_lustre_ldlm_intent_opc_pin = -1;
919 static int hf_lustre_llog_hdr_llh_flag_zap_when_empty = -1;
920 static int hf_lustre_llog_hdr_llh_flag_is_cat = -1;
921 static int hf_lustre_llog_hdr_llh_flag_is_play = -1;
922 /* --------------------------------------------------------------------*/
925 /* proto declaration */
926 static gint proto_lustre = -1;
931 static int ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_) ;
932 static int lustre_dissect_element_ldlm_lock_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_);
933 static int add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_) ;
936 /* ======================================================================== */
938 const value_string lustre_ldlm_opcode[] = {
939 { IT_OPEN , "IT_OPEN "},
940 { IT_CREAT , "IT_CREAT "},
941 { IT_READDIR , "IT_READDIR "},
942 { IT_GETATTR , "IT_GETATTR "},
943 { IT_LOOKUP , "IT_LOOKUP "},
944 { IT_UNLINK , "IT_UNLINK "},
945 { IT_GETXATTR, "IT_GETXATTR"},
946 { IT_EXEC , "IT_EXEC "},
947 { IT_PIN , "IT_PIN "},
951 const value_string lustre_lov_magic[] = {
952 { LOV_MAGIC_V1, "LOV_MAGIC_V1" },
956 const value_string lustre_ldlm_flags_vals[] = {
957 {0x000001 , "LDLM_FL_LOCK_CHANGED"},
958 {0x000002 , "LDLM_FL_BLOCK_GRANTED"},
959 {0x000004 , "LDLM_FL_BLOCK_CONV"},
960 {0x000008 , "LDLM_FL_BLOCK_WAIT"},
961 {0x000020 , "LDLM_FL_AST_SENT"},
962 {0x000100 , "LDLM_FL_REPLAY"},
963 {0x000200 , "LDLM_FL_INTENT_ONLY"},
964 {0x001000 , "LDLM_FL_HAS_INTENT"},
965 {0x010000 , "LDLM_FL_DISCARD_DATA"},
966 {0x020000 , "LDLM_FL_NO_TIMEOUT"},
967 {0x040000 , "LDLM_FL_BLOCK_NOWAIT"},
968 {0x080000 , "LDLM_FL_TEST_LOCK"},
969 {0x800000 , "LDLM_FL_CANCEL_ON_BLOCK"},
970 {0x40000000 , "LDLM_FL_DENY_ON_CONTENTION"},
971 {0x80000000 , "LDLM_AST_DISCARD_DATA"},
975 const value_string lustre_llog_op_type[] = {
976 {LLOG_PAD_MAGIC ,"LLOG_PAD_MAGIC "},
977 {OST_SZ_REC ,"OST_SZ_REC "},
978 {OST_RAID1_REC ,"OST_RAID1_REC "},
979 {MDS_UNLINK_REC ,"MDS_UNLINK_REC "},
980 {MDS_SETATTR_REC ,"MDS_SETATTR_REC "},
981 {OBD_CFG_REC ,"OBD_CFG_REC "},
982 {PTL_CFG_REC ,"PTL_CFG_REC "},
983 {LLOG_GEN_REC ,"LLOG_GEN_REC "},
984 {LLOG_JOIN_REC ,"LLOG_JOIN_REC "},
985 {LLOG_HDR_MAGIC ,"LLOG_HDR_MAGIC "},
986 {LLOG_LOGID_MAGIC ,"LLOG_LOGID_MAGIC"},
990 const value_string lustre_llog_hdr_llh_flags[]= {
991 {LLOG_F_ZAP_WHEN_EMPTY , "LLOhdr_llh_G_F_ZAP_WHEN_EMPTY"},
992 {LLOG_F_IS_CAT , "LLOhdr_llh_G_F_IS_CAT"},
993 {LLOG_F_IS_PLAIN , "LLOG_F_IS_PLAIN"},
997 const value_string lustre_mds_flags_vals[] = {
998 {0x1, "LUSTRE_BFLAG_UNCOMMITTED_WRITES"},
999 {0x80000000, "LUSTRE_BFLAG_EXT_FLAGS"}, /* == EXT3_RESERVED_FL */
1000 {0x00000008, "LUSTRE_SYNC_FL "}, /* Synchronous updates */
1001 {0x00000010, "LUSTRE_IMMUTABLE_FL "}, /* Immutable file */
1002 {0x00000020, "LUSTRE_APPEND_FL "}, /* writes to file may only append */
1003 {0x00000080, "LUSTRE_NOATIME_FL "}, /* do not update atime */
1004 {0x00010000, "LUSTRE_DIRSYNC_FL "}, /* dirsync behaviour (dir only) */
1008 const value_string lustre_LMTypes[] = {
1009 { PTL_RPC_MSG_REQUEST, "request"},
1010 { PTL_RPC_MSG_ERR , "error"},
1011 { PTL_RPC_MSG_REPLY , "reply"},
1015 const value_string lustre_mds_reint_t_vals[] = {
1016 { REINT_SETATTR, "REINT_SETATTR" },
1017 { REINT_CREATE, "REINT_CREATE" },
1018 { REINT_LINK, "REINT_LINK" },
1019 { REINT_UNLINK, "REINT_UNLINK" },
1020 { REINT_RENAME, "REINT_RENAME" },
1021 { REINT_OPEN, "REINT_OPEN" },
1022 { REINT_SETXATTR, "REINT_SETXATTR" },
1025 const value_string lustre_op_codes[] = {
1028 {1 , "OST_GETATTR"},
1029 {2 , "OST_SETATTR"},
1033 {6 , "OST_DESTROY"},
1034 {7 , "OST_GET_INFO"},
1035 {8 , "OST_CONNECT"},
1036 {9 , "OST_DISCONNECT"},
1040 {13 , "OST_STATFS"},
1041 {14 , "OST_SAN_READ(deprecated)"},
1042 {15 , "OST_SAN_WRITE(deprecated)"},
1044 {17 , "OST_SET_INFO"},
1045 {18 , "OST_QUOTACHECK"},
1046 {19 , "OST_QUOTACTL"},
1047 {20 , "OST_LAST_OPC"},
1049 {33 , "MDS_GETATTR"},
1050 {34 , "MDS_GETATTR_NAME"},
1053 {37 , "MDS_READPAGE"},
1054 {38 , "MDS_CONNECT"},
1055 {39 , "MDS_DISCONNECT"},
1056 {40 , "MDS_GETSTATUS"},
1057 {41 , "MDS_STATFS"},
1061 {45 , "MDS_DONE_WRITING"},
1062 {46 , "MDS_SET_INFO"},
1063 {47 , "MDS_QUOTACHECK"},
1064 {48 , "MDS_QUOTACTL"},
1065 {49 , "MDS_GETXATTR"},
1066 {50 , "MDS_SETXATTR"},
1067 {51 , "MDS_LAST_OPC"},
1069 {101 , "LDLM_ENQUEUE"},
1070 {102 , "LDLM_CONVERT"},
1071 {103 , "LDLM_CANCEL"},
1072 {104 , "LDLM_BL_CALLBACK"},
1073 {105 , "LDLM_CP_CALLBACK"},
1074 {106 , "LDLM_GL_CALLBACK"},
1075 {107 , "LDLM_LAST_OPC"},
1077 {250 , "MGS_CONNECT"},
1078 {251 , "MGS_DISCONNECT"},
1079 {252 , "MGS_EXCEPTION"},
1080 {253 , "MGS_TARGET_REG"},
1081 {254 , "MGS_TARGET_DEL"},
1082 {255 , "MGS_SET_INFO"},
1083 {256 , "MGS_LAST_OPC"},
1086 {401 , "OBD_LOG_CANCEL"},
1087 {402 , "OBD_QC_CALLBACK"},
1088 {403 , "OBD_LAST_OPC"},
1090 { 501, "LLOG_ORIGIN_HANDLE_CREATE"},
1091 { 502, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK"},
1092 { 503, "LLOG_ORIGIN_HANDLE_READ_HEADER"},
1093 { 504, "LLOG_ORIGIN_HANDLE_WRITE_REC"},
1094 { 505, "LLOG_ORIGIN_HANDLE_CLOSE"},
1095 { 506, "LLOG_ORIGIN_CONNECT"},
1096 { 507, "LLOG_CATINFO"},
1097 { 508, "LLOG_ORIGIN_HANDLE_PREV_BLOCK"},
1098 { 509, "LLOG_ORIGIN_HANDLE_DESTROY"},
1101 /*const value_string lustre_ldlm_mode_t_vals[] = {*/
1102 /* { LCK_MINMODE, "MINMODE" },*/
1103 /* { LCK_EX, "EX" },*/
1104 /* { LCK_PW, "PW" },*/
1105 /* { LCK_PR, "PR" },*/
1106 /* { LCK_CW, "CW" },*/
1107 /* { LCK_CR, "CR" },*/
1108 /* { LCK_NL, "NL" },*/
1109 /* { LCK_GROUP, "GROUP" },*/
1113 /* detailled version the information came from : http://wiki.lustre.org/images/e/e5/LustreInternals_Architecture.pdf */
1114 const value_string lustre_ldlm_mode_t_vals[] = {
1115 { LCK_MINMODE, "MINMODE" },
1116 { LCK_EX, "Exclusive" },
1117 { LCK_PW, "Protected Write" },
1118 { LCK_PR, "Protected Read" },
1119 { LCK_CW, "Concurrent Write" },
1120 { LCK_CR, "Concurrent Read" },
1122 { LCK_GROUP, "GROUP" },
1126 const value_string lustre_ldlm_type_t_vals[] = {
1127 { LDLM_PLAIN, "LDLM_PLAIN" },
1128 { LDLM_EXTENT,"LDLM_EXTENT" },
1129 { LDLM_FLOCK, "LDLM_FLOCK" },
1130 { LDLM_IBITS, "LDLM_IBITS" },
1135 const value_string lustre_llog_cmd_t_vals[] = {
1136 { LLOG_ORIGIN_HANDLE_CREATE, "LLOG_ORIGIN_HANDLE_CREATE" },
1137 { LLOG_ORIGIN_HANDLE_NEXT_BLOCK, "LLOG_ORIGIN_HANDLE_NEXT_BLOCK" },
1138 { LLOG_ORIGIN_HANDLE_READ_HEADER, "LLOG_ORIGIN_HANDLE_READ_HEADER" },
1139 { LLOG_ORIGIN_HANDLE_WRITE_REC, "LLOG_ORIGIN_HANDLE_WRITE_REC" },
1140 { LLOG_ORIGIN_HANDLE_CLOSE, "LLOG_ORIGIN_HANDLE_CLOSE" },
1141 { LLOG_ORIGIN_CONNECT, "LLOG_ORIGIN_CONNECT" },
1142 { LLOG_CATINFO, "LLOG_CATINFO" },
1143 { LLOG_ORIGIN_HANDLE_PREV_BLOCK, "LLOG_ORIGIN_HANDLE_PREV_BLOCK" },
1144 { LLOG_ORIGIN_HANDLE_DESTROY, "LLOG_ORIGIN_HANDLE_DESTROY" },
1149 /* ------------------------------------------------------------------- */
1150 /* display functions */
1151 /* ------------------------------------------------------------------- */
1152 /* display str in left corner and in COL */
1153 /* TODO : do we need to use inline here ?*/
1154 /* @gint col : the col where we add the information */
1155 inline static void display_info_str(proto_item *pi, column_info *cinfo, gint col, const gchar* str)
1158 proto_item_append_text(pi, str);
1161 if (check_col(cinfo, col))
1162 col_append_str(cinfo, col, str);
1166 * Need to be (re)written
1168 static void display_info_fstr(proto_item *pi, column_info *cinfo, gint col, const char* format, const gchar * str){
1171 //va_start(ap, format);
1172 proto_item_append_text(pi, format, str);
1177 if (check_col(cinfo, col)){
1179 // va_start(ap, format);
1180 col_append_fstr(cinfo, col, format, str);
1187 /* ------------------------------ basic dissect functions ------------------------ */
1190 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1192 proto_tree_add_item(tree, hfindex, tvb, offset, 8, TRUE);
1198 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1200 proto_tree_add_item(tree, hfindex, tvb, offset, 4, TRUE);
1206 (tvbuff_t *tvb, gint offset, packet_info *pinfo _U_, proto_tree *tree, int hfindex)
1208 proto_tree_add_item(tree, hfindex, tvb, offset, 1, TRUE);
1211 /* ------------------------------------------------------------------------- */
1216 /* IDL: struct lustre_handle { */
1217 /* IDL: uint64 cookie; */
1221 lustre_dissect_element_handle_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1223 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_handle_cookie);
1229 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_)
1231 proto_item *item = NULL;
1232 proto_tree *tree = NULL;
1238 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1239 tree = proto_item_add_subtree(item, ett_lustre_lustre_handle_cookie);
1242 offset=lustre_dissect_element_handle_cookie(tvb, offset, pinfo, tree);
1245 proto_item_set_len(item, offset-old_offset);
1250 /* IDL: struct obd_connect_data { */
1251 /* IDL: uint64 ocd_connect_flags; */
1252 /* IDL: uint32 ocd_version; */
1253 /* IDL: uint32 ocd_grant; */
1254 /* IDL: uint32 ocd_index; */
1255 /* IDL: uint32 ocd_brw_size; */
1256 /* IDL: uint64 ocd_ibits_known; */
1257 /* IDL: uint32 ocd_nllu; */
1258 /* IDL: uint32 ocd_nllg; */
1259 /* IDL: uint64 ocd_transno; */
1260 /* IDL: uint32 ocd_group; */
1261 /* IDL: uint32 ocd_cksum_types; */
1262 /* IDL: uint64 padding1; */
1263 /* IDL: uint64 padding2; */
1267 lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1269 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_connect_flags);
1275 lustre_dissect_element_obd_connect_data_ocd_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1277 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_version);
1283 lustre_dissect_element_obd_connect_data_ocd_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1285 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_grant);
1291 lustre_dissect_element_obd_connect_data_ocd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1293 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_index);
1299 lustre_dissect_element_obd_connect_data_ocd_brw_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1301 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_brw_size);
1307 lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1309 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_ibits_known);
1315 lustre_dissect_element_obd_connect_data_ocd_nllu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1317 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllu);
1323 lustre_dissect_element_obd_connect_data_ocd_nllg(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1325 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_nllg);
1331 lustre_dissect_element_obd_connect_data_ocd_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1333 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_transno);
1339 lustre_dissect_element_obd_connect_data_ocd_group(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1341 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_group);
1347 lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1349 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_ocd_cksum_types);
1355 lustre_dissect_element_obd_connect_data_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1357 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding1);
1363 lustre_dissect_element_obd_connect_data_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1365 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_connect_data_padding2);
1371 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_)
1373 proto_item *item = NULL;
1374 proto_tree *tree = NULL;
1382 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1383 tree = proto_item_add_subtree(item, ett_lustre_obd_connect_data);
1386 offset=lustre_dissect_element_obd_connect_data_ocd_connect_flags(tvb, offset, pinfo, tree);
1388 offset=lustre_dissect_element_obd_connect_data_ocd_version(tvb, offset, pinfo, tree);
1390 offset=lustre_dissect_element_obd_connect_data_ocd_grant(tvb, offset, pinfo, tree);
1392 offset=lustre_dissect_element_obd_connect_data_ocd_index(tvb, offset, pinfo, tree);
1394 offset=lustre_dissect_element_obd_connect_data_ocd_brw_size(tvb, offset, pinfo, tree);
1396 offset=lustre_dissect_element_obd_connect_data_ocd_ibits_known(tvb, offset, pinfo, tree);
1398 offset=lustre_dissect_element_obd_connect_data_ocd_nllu(tvb, offset, pinfo, tree);
1400 offset=lustre_dissect_element_obd_connect_data_ocd_nllg(tvb, offset, pinfo, tree);
1402 offset=lustre_dissect_element_obd_connect_data_ocd_transno(tvb, offset, pinfo, tree);
1404 offset=lustre_dissect_element_obd_connect_data_ocd_group(tvb, offset, pinfo, tree);
1406 offset=lustre_dissect_element_obd_connect_data_ocd_cksum_types(tvb, offset, pinfo, tree);
1408 offset=lustre_dissect_element_obd_connect_data_padding1(tvb, offset, pinfo, tree);
1410 offset=lustre_dissect_element_obd_connect_data_padding2(tvb, offset, pinfo, tree);
1413 proto_item_set_len(item, offset-old_offset);
1419 /* IDL: struct lov_ost_data_v1 { */
1420 /* IDL: uint64 l_object_id; */
1421 /* IDL: uint64 l_object_seq; */
1422 /* IDL: uint32 l_ost_gen; */
1423 /* IDL: uint32 l_ost_idx; */
1427 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_)
1429 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_id);
1435 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_)
1437 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_object_seq);
1443 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_)
1445 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_gen);
1451 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_)
1453 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_ost_data_v1_l_ost_idx);
1459 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_)
1461 proto_item *item = NULL;
1462 proto_tree *tree = NULL;
1470 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1471 tree = proto_item_add_subtree(item, ett_lustre_lov_ost_data_v1);
1474 offset=lustre_dissect_element_lov_ost_data_v1_l_object_id(tvb, offset, pinfo, tree);
1476 offset=lustre_dissect_element_lov_ost_data_v1_l_object_seq(tvb, offset, pinfo, tree);
1478 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_gen(tvb, offset, pinfo, tree);
1480 offset=lustre_dissect_element_lov_ost_data_v1_l_ost_idx(tvb, offset, pinfo, tree);
1483 proto_item_set_len(item, offset-old_offset);
1488 /* IDL: struct lov_mds_md_v1 { */
1489 /* IDL: uint32 lmm_magic; */
1490 /* IDL: uint32 lmm_pattern; */
1491 /* IDL: uint64 lmm_object_id; */
1492 /* IDL: uint64 lmm_object_seq; */
1493 /* IDL: uint32 lmm_stripe_size; */
1494 /* IDL: uint32 lmm_stripe_count; */
1495 /* IDL: struct lov_ost_data_v1 { */
1496 /* IDL: } lmm_objects[0]; <-- en fait on en a lmm_stripe_count */
1500 lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1502 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_magic);
1508 lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1510 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_pattern);
1516 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_)
1518 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_id);
1524 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_)
1526 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_object_seq);
1532 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_)
1534 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_size);
1540 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_)
1542 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_mds_md_v1_lmm_stripe_count);
1548 lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1550 offset=lustre_dissect_struct_lov_ost_data_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1_lmm_objects);
1555 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)
1558 /*g_print("num = %d", num);*/
1559 for (i = 0; i < num; i++){
1560 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects_(tvb, offset, pinfo, tree);
1569 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_)
1571 proto_item *item = NULL;
1572 proto_tree *tree = NULL;
1575 guint32 stripe_count ;
1581 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1582 tree = proto_item_add_subtree(item, ett_lustre_lov_mds_md_v1);
1585 offset=lustre_dissect_element_lov_mds_md_v1_lmm_magic(tvb, offset, pinfo, tree);
1587 offset=lustre_dissect_element_lov_mds_md_v1_lmm_pattern(tvb, offset, pinfo, tree);
1589 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_id(tvb, offset, pinfo, tree);
1591 offset=lustre_dissect_element_lov_mds_md_v1_lmm_object_seq(tvb, offset, pinfo, tree);
1593 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_size(tvb, offset, pinfo, tree);
1595 stripe_count = tvb_get_letohl(tvb,offset);
1596 offset=lustre_dissect_element_lov_mds_md_v1_lmm_stripe_count(tvb, offset, pinfo, tree);
1598 offset=lustre_dissect_element_lov_mds_md_v1_lmm_objects(tvb, offset, pinfo, tree, stripe_count);
1601 proto_item_set_len(item, offset-old_offset);
1608 /* IDL: struct obd_statfs { */
1609 /* IDL: uint64 os_type; */
1610 /* IDL: uint64 os_blocks; */
1611 /* IDL: uint64 os_bfree; */
1612 /* IDL: uint64 os_bavail; */
1613 /* IDL: uint64 os_files; */
1614 /* IDL: uint64 os_ffree; */
1615 /* IDL: uint8 os_fsid[40]; */
1616 /* IDL: uint32 os_bsize; */
1617 /* IDL: uint32 os_namelen; */
1618 /* IDL: uint64 os_maxbytes; */
1619 /* IDL: uint32 os_state; */
1620 /* IDL: uint32 os_spare1; */
1621 /* IDL: uint32 os_spare2; */
1622 /* IDL: uint32 os_spare3; */
1623 /* IDL: uint32 os_spare4; */
1624 /* IDL: uint32 os_spare5; */
1625 /* IDL: uint32 os_spare6; */
1626 /* IDL: uint32 os_spare7; */
1627 /* IDL: uint32 os_spare8; */
1628 /* IDL: uint32 os_spare9; */
1632 lustre_dissect_element_obd_statfs_os_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1634 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_type);
1640 lustre_dissect_element_obd_statfs_os_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1642 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_blocks);
1648 lustre_dissect_element_obd_statfs_os_bfree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1650 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bfree);
1656 lustre_dissect_element_obd_statfs_os_bavail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1658 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_bavail);
1664 lustre_dissect_element_obd_statfs_os_files(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1666 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_files);
1672 lustre_dissect_element_obd_statfs_os_ffree(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1674 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_ffree);
1680 lustre_dissect_element_obd_statfs_os_fsid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1682 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_fsid);
1688 lustre_dissect_element_obd_statfs_os_fsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1691 for (i = 0; i < 40; i++)
1692 offset=lustre_dissect_element_obd_statfs_os_fsid_(tvb, offset, pinfo, tree);
1700 lustre_dissect_element_obd_statfs_os_bsize(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_obd_statfs_os_bsize);
1708 lustre_dissect_element_obd_statfs_os_namelen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1710 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_namelen);
1716 lustre_dissect_element_obd_statfs_os_maxbytes(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_obd_statfs_os_maxbytes);
1724 lustre_dissect_element_obd_statfs_os_state(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_obd_statfs_os_state);
1732 lustre_dissect_element_obd_statfs_os_spare1(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_obd_statfs_os_spare1);
1740 lustre_dissect_element_obd_statfs_os_spare2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1742 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare2);
1748 lustre_dissect_element_obd_statfs_os_spare3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1750 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare3);
1756 lustre_dissect_element_obd_statfs_os_spare4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1758 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare4);
1764 lustre_dissect_element_obd_statfs_os_spare5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1766 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare5);
1772 lustre_dissect_element_obd_statfs_os_spare6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1774 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare6);
1780 lustre_dissect_element_obd_statfs_os_spare7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1782 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare7);
1788 lustre_dissect_element_obd_statfs_os_spare8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1790 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare8);
1796 lustre_dissect_element_obd_statfs_os_spare9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1798 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_statfs_os_spare9);
1804 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_)
1806 proto_item *item = NULL;
1807 proto_tree *tree = NULL;
1815 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1816 tree = proto_item_add_subtree(item, ett_lustre_obd_statfs);
1819 offset=lustre_dissect_element_obd_statfs_os_type(tvb, offset, pinfo, tree);
1821 offset=lustre_dissect_element_obd_statfs_os_blocks(tvb, offset, pinfo, tree);
1823 offset=lustre_dissect_element_obd_statfs_os_bfree(tvb, offset, pinfo, tree);
1825 offset=lustre_dissect_element_obd_statfs_os_bavail(tvb, offset, pinfo, tree);
1827 offset=lustre_dissect_element_obd_statfs_os_files(tvb, offset, pinfo, tree);
1829 offset=lustre_dissect_element_obd_statfs_os_ffree(tvb, offset, pinfo, tree);
1831 offset=lustre_dissect_element_obd_statfs_os_fsid(tvb, offset, pinfo, tree);
1833 offset=lustre_dissect_element_obd_statfs_os_bsize(tvb, offset, pinfo, tree);
1835 offset=lustre_dissect_element_obd_statfs_os_namelen(tvb, offset, pinfo, tree);
1837 offset=lustre_dissect_element_obd_statfs_os_maxbytes(tvb, offset, pinfo, tree);
1839 offset=lustre_dissect_element_obd_statfs_os_state(tvb, offset, pinfo, tree);
1841 offset=lustre_dissect_element_obd_statfs_os_spare1(tvb, offset, pinfo, tree);
1843 offset=lustre_dissect_element_obd_statfs_os_spare2(tvb, offset, pinfo, tree);
1845 offset=lustre_dissect_element_obd_statfs_os_spare3(tvb, offset, pinfo, tree);
1847 offset=lustre_dissect_element_obd_statfs_os_spare4(tvb, offset, pinfo, tree);
1849 offset=lustre_dissect_element_obd_statfs_os_spare5(tvb, offset, pinfo, tree);
1851 offset=lustre_dissect_element_obd_statfs_os_spare6(tvb, offset, pinfo, tree);
1853 offset=lustre_dissect_element_obd_statfs_os_spare7(tvb, offset, pinfo, tree);
1855 offset=lustre_dissect_element_obd_statfs_os_spare8(tvb, offset, pinfo, tree);
1857 offset=lustre_dissect_element_obd_statfs_os_spare9(tvb, offset, pinfo, tree);
1860 proto_item_set_len(item, offset-old_offset);
1865 /* IDL: struct obd_ioobj { */
1866 /* IDL: uint64 ioo_id; */
1867 /* IDL: uint64 ioo_seq; */
1868 /* IDL: uint32 ioo_type; */
1869 /* IDL: uint32 ioo_bufcnt; */
1873 lustre_dissect_element_obd_ioobj_ioo_id(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_ioobj_ioo_id);
1881 lustre_dissect_element_obd_ioobj_ioo_seq(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_ioobj_ioo_seq);
1889 lustre_dissect_element_obd_ioobj_ioo_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1891 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_type);
1897 lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1899 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj_ioo_bufcnt);
1905 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_)
1907 proto_item *item = NULL;
1908 proto_tree *tree = NULL;
1916 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1917 tree = proto_item_add_subtree(item, ett_lustre_obd_ioobj);
1920 offset=lustre_dissect_element_obd_ioobj_ioo_id(tvb, offset, pinfo, tree);
1922 offset=lustre_dissect_element_obd_ioobj_ioo_seq(tvb, offset, pinfo, tree);
1924 offset=lustre_dissect_element_obd_ioobj_ioo_type(tvb, offset, pinfo, tree);
1926 offset=lustre_dissect_element_obd_ioobj_ioo_bufcnt(tvb, offset, pinfo, tree);
1929 proto_item_set_len(item, offset-old_offset);
1934 /* IDL: struct niobuf_remote { */
1935 /* IDL: uint64 offset; */
1936 /* IDL: uint32 len; */
1937 /* IDL: uint32 flags; */
1941 lustre_dissect_element_niobuf_remote_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
1943 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_niobuf_remote_offset);
1949 lustre_dissect_element_niobuf_remote_len(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_niobuf_remote_len);
1957 lustre_dissect_element_niobuf_remote_flags(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_niobuf_remote_flags);
1965 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_)
1967 proto_item *item = NULL;
1968 proto_tree *tree = NULL;
1976 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
1977 tree = proto_item_add_subtree(item, ett_lustre_niobuf_remote);
1980 offset=lustre_dissect_element_niobuf_remote_offset(tvb, offset, pinfo, tree);
1982 offset=lustre_dissect_element_niobuf_remote_len(tvb, offset, pinfo, tree);
1984 offset=lustre_dissect_element_niobuf_remote_flags(tvb, offset, pinfo, tree);
1987 proto_item_set_len(item, offset-old_offset);
1992 /* IDL: struct ost_lvb { */
1993 /* IDL: uint64 lvb_size; */
1994 /* IDL: uint64 lvb_mtime; */
1995 /* IDL: uint64 lvb_atime; */
1996 /* IDL: uint64 lvb_ctime; */
1997 /* IDL: uint64 lvb_blocks; */
2001 lustre_dissect_element_ost_lvb_lvb_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2003 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_size);
2009 lustre_dissect_element_ost_lvb_lvb_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2013 ns.secs = tvb_get_letohl(tvb,offset);
2015 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_mtime, tvb, offset, 8, &ns );
2021 lustre_dissect_element_ost_lvb_lvb_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2025 ns.secs = tvb_get_letohl(tvb,offset);
2027 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_atime, tvb, offset, 8, &ns );
2035 lustre_dissect_element_ost_lvb_lvb_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2039 ns.secs = tvb_get_letohl(tvb,offset);
2041 proto_tree_add_time(tree, hf_lustre_ost_lvb_lvb_ctime, tvb, offset, 8, &ns );
2049 lustre_dissect_element_ost_lvb_lvb_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2051 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ost_lvb_lvb_blocks);
2057 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_)
2059 proto_item *item = NULL;
2060 proto_tree *tree = NULL;
2068 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2069 tree = proto_item_add_subtree(item, ett_lustre_ost_lvb);
2072 offset=lustre_dissect_element_ost_lvb_lvb_size(tvb, offset, pinfo, tree);
2074 offset=lustre_dissect_element_ost_lvb_lvb_mtime(tvb, offset, pinfo, tree);
2076 offset=lustre_dissect_element_ost_lvb_lvb_atime(tvb, offset, pinfo, tree);
2078 offset=lustre_dissect_element_ost_lvb_lvb_ctime(tvb, offset, pinfo, tree);
2080 offset=lustre_dissect_element_ost_lvb_lvb_blocks(tvb, offset, pinfo, tree);
2083 proto_item_set_len(item, offset-old_offset);
2089 /* IDL: struct ll_fid { */
2090 /* IDL: uint64 id; */
2091 /* IDL: uint32 generation; */
2092 /* IDL: uint32 f_type; */
2096 lustre_dissect_element_ll_fid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2098 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ll_fid_id);
2104 lustre_dissect_element_ll_fid_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2106 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_generation);
2112 lustre_dissect_element_ll_fid_f_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2114 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ll_fid_f_type);
2120 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_)
2122 proto_item *item = NULL;
2123 proto_tree *tree = NULL;
2131 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2132 tree = proto_item_add_subtree(item, ett_lustre_ll_fid);
2135 offset=lustre_dissect_element_ll_fid_id(tvb, offset, pinfo, tree);
2137 offset=lustre_dissect_element_ll_fid_generation(tvb, offset, pinfo, tree);
2139 offset=lustre_dissect_element_ll_fid_f_type(tvb, offset, pinfo, tree);
2142 proto_item_set_len(item, offset-old_offset);
2147 /* IDL: struct obd_dqinfo { */
2148 /* IDL: uint64 dqi_bgrace; */
2149 /* IDL: uint64 dqi_igrace; */
2150 /* IDL: uint32 dqi_flags; */
2151 /* IDL: uint32 dqi_valid; */
2155 lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2157 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_bgrace);
2163 lustre_dissect_element_obd_dqinfo_dqi_igrace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2165 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_igrace);
2171 lustre_dissect_element_obd_dqinfo_dqi_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2173 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_flags);
2179 lustre_dissect_element_obd_dqinfo_dqi_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2181 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqinfo_dqi_valid);
2187 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_)
2189 proto_item *item = NULL;
2190 proto_tree *tree = NULL;
2195 old_offset = offset;
2198 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2199 tree = proto_item_add_subtree(item, ett_lustre_obd_dqinfo);
2202 offset = lustre_dissect_element_obd_dqinfo_dqi_bgrace(tvb, offset, pinfo, tree);
2204 offset = lustre_dissect_element_obd_dqinfo_dqi_igrace(tvb, offset, pinfo, tree);
2206 offset = lustre_dissect_element_obd_dqinfo_dqi_flags(tvb, offset, pinfo, tree);
2208 offset = lustre_dissect_element_obd_dqinfo_dqi_valid(tvb, offset, pinfo, tree);
2211 proto_item_set_len(item, offset-old_offset);
2216 /* IDL: struct obd_dqblk { */
2217 /* IDL: uint64 dqb_bhardlimit; */
2218 /* IDL: uint64 dqb_bsoftlimit; */
2219 /* IDL: uint64 dqb_curspace; */
2220 /* IDL: uint64 dqb_ihardlimit; */
2221 /* IDL: uint64 dqb_isoftlimit; */
2222 /* IDL: uint64 dqb_curinodes; */
2223 /* IDL: uint64 dqb_btime; */
2224 /* IDL: uint64 dqb_itime; */
2225 /* IDL: uint32 dqb_valid; */
2226 /* IDL: uint32 padding; */
2230 lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2232 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bhardlimit);
2238 lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2240 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_bsoftlimit);
2246 lustre_dissect_element_obd_dqblk_dqb_curspace(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2248 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curspace);
2254 lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2256 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_ihardlimit);
2262 lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2264 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_isoftlimit);
2270 lustre_dissect_element_obd_dqblk_dqb_curinodes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2272 offset = dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_curinodes);
2278 lustre_dissect_element_obd_dqblk_dqb_btime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2283 ns.secs = tvb_get_letohl(tvb,offset);
2285 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_btime, tvb, offset, 8, &ns );
2291 lustre_dissect_element_obd_dqblk_dqb_itime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2295 ns.secs = tvb_get_letohl(tvb,offset);
2297 proto_tree_add_time(tree, hf_lustre_obd_dqblk_dqb_itime, tvb, offset, 8, &ns );
2304 lustre_dissect_element_obd_dqblk_dqb_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2306 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_dqb_valid);
2312 lustre_dissect_element_obd_dqblk_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2314 offset = dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_dqblk_padding);
2320 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_)
2322 proto_item *item = NULL;
2323 proto_tree *tree = NULL;
2328 old_offset = offset;
2331 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2332 tree = proto_item_add_subtree(item, ett_lustre_obd_dqblk);
2335 offset = lustre_dissect_element_obd_dqblk_dqb_bhardlimit(tvb, offset, pinfo, tree);
2337 offset = lustre_dissect_element_obd_dqblk_dqb_bsoftlimit(tvb, offset, pinfo, tree);
2339 offset = lustre_dissect_element_obd_dqblk_dqb_curspace(tvb, offset, pinfo, tree);
2341 offset = lustre_dissect_element_obd_dqblk_dqb_ihardlimit(tvb, offset, pinfo, tree);
2343 offset = lustre_dissect_element_obd_dqblk_dqb_isoftlimit(tvb, offset, pinfo, tree);
2345 offset = lustre_dissect_element_obd_dqblk_dqb_curinodes(tvb, offset, pinfo, tree);
2347 offset = lustre_dissect_element_obd_dqblk_dqb_btime(tvb, offset, pinfo, tree);
2349 offset = lustre_dissect_element_obd_dqblk_dqb_itime(tvb, offset, pinfo, tree);
2351 offset = lustre_dissect_element_obd_dqblk_dqb_valid(tvb, offset, pinfo, tree);
2353 offset = lustre_dissect_element_obd_dqblk_padding(tvb, offset, pinfo, tree);
2356 proto_item_set_len(item, offset-old_offset);
2362 /* IDL: struct obd_quotactl { */
2363 /* IDL: uint32 qc_cmd; */
2364 /* IDL: uint32 qc_type; */
2365 /* IDL: uint32 qc_id; */
2366 /* IDL: uint32 qc_stat; */
2367 /* IDL: struct obd_dqinfo { */
2368 /* IDL: } qc_dqinfo; */
2369 /* IDL: struct obd_dqblk { */
2370 /* IDL: } qc_dqblk; */
2374 lustre_dissect_element_obd_quotactl_qc_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2376 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_cmd);
2382 lustre_dissect_element_obd_quotactl_qc_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2384 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_type);
2390 lustre_dissect_element_obd_quotactl_qc_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2392 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_id);
2398 lustre_dissect_element_obd_quotactl_qc_stat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2400 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl_qc_stat);
2408 lustre_dissect_element_obd_quotactl_qc_dqblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2410 offset=lustre_dissect_struct_obd_dqblk(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqblk);
2415 lustre_dissect_element_obd_quotactl_qc_dqinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2417 offset=lustre_dissect_struct_obd_dqinfo(tvb,offset,pinfo,tree,hf_lustre_obd_quotactl_qc_dqinfo);
2422 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_)
2424 proto_item *item = NULL;
2425 proto_tree *tree = NULL;
2431 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2432 tree = proto_item_add_subtree(item, ett_lustre_obd_quotactl);
2435 offset=lustre_dissect_element_obd_quotactl_qc_cmd(tvb, offset, pinfo, tree);
2437 offset=lustre_dissect_element_obd_quotactl_qc_type(tvb, offset, pinfo, tree);
2439 offset=lustre_dissect_element_obd_quotactl_qc_id(tvb, offset, pinfo, tree);
2441 offset=lustre_dissect_element_obd_quotactl_qc_stat(tvb, offset, pinfo, tree);
2443 offset=lustre_dissect_element_obd_quotactl_qc_dqinfo(tvb, offset, pinfo, tree);
2445 offset=lustre_dissect_element_obd_quotactl_qc_dqblk(tvb, offset, pinfo, tree);
2448 proto_item_set_len(item, offset-old_offset);
2454 /* IDL: struct quota_adjust_qunit { */
2455 /* IDL: uint32 qaq_flags; */
2456 /* IDL: uint32 qaq_id; */
2457 /* IDL: uint64 qaq_bunit_sz; */
2458 /* IDL: uint64 qaq_iunit_sz; */
2459 /* IDL: uint64 padding1; */
2463 lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2465 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_flags);
2471 lustre_dissect_element_quota_adjust_qunit_qaq_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2473 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_id);
2479 lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2481 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_bunit_sz);
2487 lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2489 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_qaq_iunit_sz);
2495 lustre_dissect_element_quota_adjust_qunit_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2497 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit_padding1);
2503 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_)
2505 proto_item *item = NULL;
2506 proto_tree *tree = NULL;
2514 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2515 tree = proto_item_add_subtree(item, ett_lustre_quota_adjust_qunit);
2518 offset=lustre_dissect_element_quota_adjust_qunit_qaq_flags(tvb, offset, pinfo, tree);
2520 offset=lustre_dissect_element_quota_adjust_qunit_qaq_id(tvb, offset, pinfo, tree);
2522 offset=lustre_dissect_element_quota_adjust_qunit_qaq_bunit_sz(tvb, offset, pinfo, tree);
2524 offset=lustre_dissect_element_quota_adjust_qunit_qaq_iunit_sz(tvb, offset, pinfo, tree);
2526 offset=lustre_dissect_element_quota_adjust_qunit_padding1(tvb, offset, pinfo, tree);
2529 proto_item_set_len(item, offset-old_offset);
2534 /* IDL: struct mdt_body { */
2535 /* IDL: struct lu_fid { */
2537 /* IDL: struct lu_fid { */
2539 /* IDL: struct lustre_handle { */
2540 /* IDL: } handle; */
2541 /* IDL: uint64 valid; */
2542 /* IDL: uint64 size; */
2543 /* IDL: uint64 mtime; */
2544 /* IDL: uint64 atime; */
2545 /* IDL: uint64 ctime; */
2546 /* IDL: uint64 blocks; */
2547 /* IDL: uint64 ioepoch; */
2548 /* IDL: uint64 ino; */
2549 /* IDL: uint32 fsuid; */
2550 /* IDL: uint32 fsgid; */
2551 /* IDL: uint32 capability; */
2552 /* IDL: uint32 mode; */
2553 /* IDL: uint32 uid; */
2554 /* IDL: uint32 gid; */
2555 /* IDL: uint32 flags; */
2556 /* IDL: uint32 rdev; */
2557 /* IDL: uint32 nlink; */
2558 /* IDL: uint32 generation; */
2559 /* IDL: uint32 suppgid; */
2560 /* IDL: uint32 eadatasize; */
2561 /* IDL: uint32 aclsize; */
2562 /* IDL: uint32 max_mdsize; */
2563 /* IDL: uint32 max_cookiesize; */
2564 /* IDL: uint32 uid_h; */
2565 /* IDL: uint32 gid_h; */
2566 /* IDL: uint32 padding_5; */
2567 /* IDL: uint64 padding_6; */
2568 /* IDL: uint64 padding_7; */
2569 /* IDL: uint64 padding_8; */
2570 /* IDL: uint64 padding_9; */
2571 /* IDL: uint64 padding_10; */
2575 lustre_dissect_element_mdt_body_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2577 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid1);
2582 lustre_dissect_element_mdt_body_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2584 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_body_fid2);
2589 lustre_dissect_element_mdt_body_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2591 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
2597 lustre_dissect_element_mdt_body_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2599 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_valid);
2605 lustre_dissect_element_mdt_body_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2607 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_size);
2613 lustre_dissect_element_mdt_body_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2617 ns.secs = tvb_get_letohl(tvb,offset);
2619 proto_tree_add_time(tree, hf_lustre_mdt_body_mtime, tvb, offset, 8, &ns );
2625 lustre_dissect_element_mdt_body_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2629 ns.secs = tvb_get_letohl(tvb,offset);
2631 proto_tree_add_time(tree, hf_lustre_mdt_body_atime, tvb, offset, 8, &ns );
2638 lustre_dissect_element_mdt_body_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2642 ns.secs = tvb_get_letohl(tvb,offset);
2644 proto_tree_add_time(tree, hf_lustre_mdt_body_ctime, tvb, offset, 8, &ns );
2650 lustre_dissect_element_mdt_body_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2652 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_blocks);
2658 lustre_dissect_element_mdt_body_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2660 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ioepoch);
2666 lustre_dissect_element_mdt_body_ino(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2668 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_ino);
2674 lustre_dissect_element_mdt_body_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2676 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsuid);
2682 lustre_dissect_element_mdt_body_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2684 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_fsgid);
2690 lustre_dissect_element_mdt_body_capability(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2692 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_capability);
2698 lustre_dissect_element_mdt_body_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2700 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_mode);
2706 lustre_dissect_element_mdt_body_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2708 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid);
2714 lustre_dissect_element_mdt_body_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2716 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid);
2722 lustre_dissect_element_mdt_body_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2724 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_flags);
2730 lustre_dissect_element_mdt_body_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2732 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_rdev);
2738 lustre_dissect_element_mdt_body_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2740 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_nlink);
2746 lustre_dissect_element_mdt_body_generation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2748 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_generation);
2754 lustre_dissect_element_mdt_body_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2756 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_suppgid);
2762 lustre_dissect_element_mdt_body_eadatasize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2764 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_eadatasize);
2770 lustre_dissect_element_mdt_body_aclsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2772 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_aclsize);
2778 lustre_dissect_element_mdt_body_max_mdsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2780 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_mdsize);
2786 lustre_dissect_element_mdt_body_max_cookiesize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2788 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_max_cookiesize);
2794 lustre_dissect_element_mdt_body_uid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2796 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_uid_h);
2802 lustre_dissect_element_mdt_body_gid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2804 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_gid_h);
2810 lustre_dissect_element_mdt_body_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2812 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_5);
2818 lustre_dissect_element_mdt_body_padding_6(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_padding_6);
2826 lustre_dissect_element_mdt_body_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2828 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_7);
2834 lustre_dissect_element_mdt_body_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2836 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_8);
2842 lustre_dissect_element_mdt_body_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2844 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_9);
2850 lustre_dissect_element_mdt_body_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2852 offset=dissect_uin64(tvb, offset, pinfo, tree, hf_lustre_mdt_body_padding_10);
2858 lustre_dissect_struct_mdt_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
2860 proto_item *item = NULL;
2861 proto_tree *tree = NULL;
2868 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
2869 tree = proto_item_add_subtree(item, ett_lustre_mdt_body);
2872 offset=lustre_dissect_element_mdt_body_fid1(tvb, offset, pinfo, tree);
2874 offset=lustre_dissect_element_mdt_body_fid2(tvb, offset, pinfo, tree);
2876 offset=lustre_dissect_element_mdt_body_handle(tvb, offset, pinfo, tree);
2878 offset=lustre_dissect_element_mdt_body_valid(tvb, offset, pinfo, tree);
2880 offset=lustre_dissect_element_mdt_body_size(tvb, offset, pinfo, tree);
2882 offset=lustre_dissect_element_mdt_body_mtime(tvb, offset, pinfo, tree);
2884 offset=lustre_dissect_element_mdt_body_atime(tvb, offset, pinfo, tree);
2886 offset=lustre_dissect_element_mdt_body_ctime(tvb, offset, pinfo, tree);
2888 offset=lustre_dissect_element_mdt_body_blocks(tvb, offset, pinfo, tree);
2890 offset=lustre_dissect_element_mdt_body_ioepoch(tvb, offset, pinfo, tree);
2892 offset=lustre_dissect_element_mdt_body_ino(tvb, offset, pinfo, tree);
2894 offset=lustre_dissect_element_mdt_body_fsuid(tvb, offset, pinfo, tree);
2896 offset=lustre_dissect_element_mdt_body_fsgid(tvb, offset, pinfo, tree);
2898 offset=lustre_dissect_element_mdt_body_capability(tvb, offset, pinfo, tree);
2900 offset=lustre_dissect_element_mdt_body_mode(tvb, offset, pinfo, tree);
2902 offset=lustre_dissect_element_mdt_body_uid(tvb, offset, pinfo, tree);
2904 offset=lustre_dissect_element_mdt_body_gid(tvb, offset, pinfo, tree);
2906 offset=lustre_dissect_element_mdt_body_flags(tvb, offset, pinfo, tree);
2908 offset=lustre_dissect_element_mdt_body_rdev(tvb, offset, pinfo, tree);
2910 offset=lustre_dissect_element_mdt_body_nlink(tvb, offset, pinfo, tree);
2912 offset=lustre_dissect_element_mdt_body_generation(tvb, offset, pinfo, tree);
2914 offset=lustre_dissect_element_mdt_body_suppgid(tvb, offset, pinfo, tree);
2916 offset=lustre_dissect_element_mdt_body_eadatasize(tvb, offset, pinfo, tree);
2918 offset=lustre_dissect_element_mdt_body_aclsize(tvb, offset, pinfo, tree);
2920 offset=lustre_dissect_element_mdt_body_max_mdsize(tvb, offset, pinfo, tree);
2922 offset=lustre_dissect_element_mdt_body_max_cookiesize(tvb, offset, pinfo, tree);
2924 offset=lustre_dissect_element_mdt_body_uid_h(tvb, offset, pinfo, tree);
2926 offset=lustre_dissect_element_mdt_body_gid_h(tvb, offset, pinfo, tree);
2928 offset=lustre_dissect_element_mdt_body_padding_5(tvb, offset, pinfo, tree);
2930 offset=lustre_dissect_element_mdt_body_padding_6(tvb, offset, pinfo, tree);
2932 offset=lustre_dissect_element_mdt_body_padding_7(tvb, offset, pinfo, tree);
2934 offset=lustre_dissect_element_mdt_body_padding_8(tvb, offset, pinfo, tree);
2936 offset=lustre_dissect_element_mdt_body_padding_9(tvb, offset, pinfo, tree);
2938 offset=lustre_dissect_element_mdt_body_padding_10(tvb, offset, pinfo, tree);
2941 proto_item_set_len(item, offset-old_offset);
2946 /* I don't find where this struct appear on wire.. need to search mdc_setattr_pack() */
2947 /* IDL: struct mdt_rec_setattr { */
2948 /* IDL: uint32 sa_opcode; */
2949 /* IDL: uint32 sa_cap; */
2950 /* IDL: uint32 sa_fsuid; */
2951 /* IDL: uint32 sa_fsuid_h; */
2952 /* IDL: uint32 sa_fsgid; */
2953 /* IDL: uint32 sa_fsgid_h; */
2954 /* IDL: uint32 sa_suppgid; */
2955 /* IDL: uint32 sa_suppgid_h; */
2956 /* IDL: uint32 sa_padding_1; */
2957 /* IDL: uint32 sa_padding_1_h; */
2958 /* IDL: struct lu_fid { */
2959 /* IDL: } sa_fid; */
2960 /* IDL: uint64 sa_valid; */
2961 /* IDL: uint32 sa_uid; */
2962 /* IDL: uint32 sa_gid; */
2963 /* IDL: uint64 sa_size; */
2964 /* IDL: uint64 sa_blocks; */
2965 /* IDL: uint64 sa_mtime; */
2966 /* IDL: uint64 sa_atime; */
2967 /* IDL: uint64 sa_ctime; */
2968 /* IDL: uint32 sa_attr_flags; */
2969 /* IDL: uint32 sa_mode; */
2970 /* IDL: uint32 sa_padding_2; */
2971 /* IDL: uint32 sa_padding_3; */
2972 /* IDL: uint32 sa_padding_4; */
2973 /* IDL: uint32 sa_padding_5; */
2977 lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2979 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_opcode);
2985 lustre_dissect_element_mdt_rec_setattr_sa_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2987 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_cap);
2993 lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
2995 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid);
3001 lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3003 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsuid_h);
3009 lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3011 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid);
3017 lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3019 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_fsgid_h);
3025 lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3027 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid);
3033 lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3035 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_suppgid_h);
3041 lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3043 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1);
3049 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_)
3051 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_1_h);
3057 lustre_dissect_element_mdt_rec_setattr_sa_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3059 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setattr_sa_fid);
3065 lustre_dissect_element_mdt_rec_setattr_sa_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3067 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_valid);
3073 lustre_dissect_element_mdt_rec_setattr_sa_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3075 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_uid);
3081 lustre_dissect_element_mdt_rec_setattr_sa_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3083 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_gid);
3089 lustre_dissect_element_mdt_rec_setattr_sa_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3091 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_size);
3097 lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3099 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_blocks);
3105 lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3110 ns.secs = tvb_get_letohl(tvb,offset);
3112 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_mtime, tvb, offset, 8, &ns );
3118 lustre_dissect_element_mdt_rec_setattr_sa_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3122 ns.secs = tvb_get_letohl(tvb,offset);
3124 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_atime, tvb, offset, 8, &ns );
3130 lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3134 ns.secs = tvb_get_letohl(tvb,offset);
3136 proto_tree_add_time(tree, hf_lustre_mdt_rec_setattr_sa_ctime, tvb, offset, 8, &ns );
3142 lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3144 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_attr_flags);
3150 lustre_dissect_element_mdt_rec_setattr_sa_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3152 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_mode);
3158 lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3160 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_2);
3166 lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3168 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_3);
3174 lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3176 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_4);
3182 lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3184 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr_sa_padding_5);
3190 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_)
3192 proto_item *item = NULL;
3193 proto_tree *tree = NULL;
3202 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3203 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setattr);
3205 sa_opcode=tvb_get_letohl(tvb,offset);
3206 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sa_opcode, lustre_mds_reint_t_vals, "Unknown sa_opc"));
3208 offset=lustre_dissect_element_mdt_rec_setattr_sa_opcode(tvb, offset, pinfo, tree);
3210 offset=lustre_dissect_element_mdt_rec_setattr_sa_cap(tvb, offset, pinfo, tree);
3212 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid(tvb, offset, pinfo, tree);
3214 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsuid_h(tvb, offset, pinfo, tree);
3216 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid(tvb, offset, pinfo, tree);
3218 offset=lustre_dissect_element_mdt_rec_setattr_sa_fsgid_h(tvb, offset, pinfo, tree);
3220 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid(tvb, offset, pinfo, tree);
3222 offset=lustre_dissect_element_mdt_rec_setattr_sa_suppgid_h(tvb, offset, pinfo, tree);
3224 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1(tvb, offset, pinfo, tree);
3226 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_1_h(tvb, offset, pinfo, tree);
3228 offset=lustre_dissect_element_mdt_rec_setattr_sa_fid(tvb, offset, pinfo, tree);
3230 offset=lustre_dissect_element_mdt_rec_setattr_sa_valid(tvb, offset, pinfo, tree);
3232 offset=lustre_dissect_element_mdt_rec_setattr_sa_uid(tvb, offset, pinfo, tree);
3234 offset=lustre_dissect_element_mdt_rec_setattr_sa_gid(tvb, offset, pinfo, tree);
3236 offset=lustre_dissect_element_mdt_rec_setattr_sa_size(tvb, offset, pinfo, tree);
3238 offset=lustre_dissect_element_mdt_rec_setattr_sa_blocks(tvb, offset, pinfo, tree);
3240 offset=lustre_dissect_element_mdt_rec_setattr_sa_mtime(tvb, offset, pinfo, tree);
3242 offset=lustre_dissect_element_mdt_rec_setattr_sa_atime(tvb, offset, pinfo, tree);
3244 offset=lustre_dissect_element_mdt_rec_setattr_sa_ctime(tvb, offset, pinfo, tree);
3246 offset=lustre_dissect_element_mdt_rec_setattr_sa_attr_flags(tvb, offset, pinfo, tree);
3248 offset=lustre_dissect_element_mdt_rec_setattr_sa_mode(tvb, offset, pinfo, tree);
3250 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_2(tvb, offset, pinfo, tree);
3252 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_3(tvb, offset, pinfo, tree);
3254 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_4(tvb, offset, pinfo, tree);
3256 offset=lustre_dissect_element_mdt_rec_setattr_sa_padding_5(tvb, offset, pinfo, tree);
3259 proto_item_set_len(item, offset-old_offset);
3264 /* IDL: struct mdt_rec_create { */
3265 /* IDL: uint32 cr_opcode; */
3266 /* IDL: uint32 cr_cap; */
3267 /* IDL: uint32 cr_fsuid; */
3268 /* IDL: uint32 cr_fsuid_h; */
3269 /* IDL: uint32 cr_fsgid; */
3270 /* IDL: uint32 cr_fsgid_h; */
3271 /* IDL: uint32 cr_suppgid1; */
3272 /* IDL: uint32 cr_suppgid1_h; */
3273 /* IDL: uint32 cr_suppgid2; */
3274 /* IDL: uint32 cr_suppgid2_h; */
3275 /* IDL: struct lu_fid { */
3276 /* IDL: } cr_fid1; */
3277 /* IDL: struct lu_fid { */
3278 /* IDL: } cr_fid2; */
3279 /* IDL: struct lustre_handle { */
3280 /* IDL: } cr_old_handle; */
3281 /* IDL: uint64 cr_time; */
3282 /* IDL: uint64 cr_rdev; */
3283 /* IDL: uint64 cr_ioepoch; */
3284 /* IDL: uint64 cr_padding_1; */
3285 /* IDL: uint32 cr_mode; */
3286 /* IDL: uint32 cr_bias; */
3287 /* IDL: uint32 cr_flags_l; */
3288 /* IDL: uint32 cr_flags_h; */
3289 /* IDL: uint32 cr_padding_3; */
3290 /* IDL: uint32 cr_padding_4; */
3294 lustre_dissect_element_mdt_rec_create_cr_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3296 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_opcode);
3302 lustre_dissect_element_mdt_rec_create_cr_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3304 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_cap);
3310 lustre_dissect_element_mdt_rec_create_cr_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3312 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid);
3318 lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3320 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsuid_h);
3326 lustre_dissect_element_mdt_rec_create_cr_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3328 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid);
3334 lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3336 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_fsgid_h);
3342 lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3344 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1);
3350 lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3352 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_suppgid1_h);
3358 lustre_dissect_element_mdt_rec_create_cr_suppgid2(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_create_cr_suppgid2);
3366 lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(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_create_cr_suppgid2_h);
3374 lustre_dissect_element_mdt_rec_create_cr_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3376 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid1);
3381 lustre_dissect_element_mdt_rec_create_cr_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3383 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_fid2);
3388 lustre_dissect_element_mdt_rec_create_cr_old_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3390 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_create_cr_old_handle);
3395 lustre_dissect_element_mdt_rec_create_cr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3399 ns.secs = tvb_get_letohl(tvb,offset);
3401 proto_tree_add_time(tree, hf_lustre_mdt_rec_create_cr_time, tvb, offset, 8, &ns );
3408 lustre_dissect_element_mdt_rec_create_cr_rdev(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3410 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_rdev);
3416 lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3418 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_ioepoch);
3424 lustre_dissect_element_mdt_rec_create_cr_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3426 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_1);
3432 lustre_dissect_element_mdt_rec_create_cr_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3434 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_mode);
3440 lustre_dissect_element_mdt_rec_create_cr_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3442 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_bias);
3448 lustre_dissect_element_mdt_rec_create_cr_flags_l(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3450 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_l);
3456 lustre_dissect_element_mdt_rec_create_cr_flags_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3458 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_flags_h);
3464 lustre_dissect_element_mdt_rec_create_cr_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3466 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_3);
3472 lustre_dissect_element_mdt_rec_create_cr_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3474 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create_cr_padding_4);
3480 lustre_dissect_struct_mdt_rec_create(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
3482 proto_item *item = NULL;
3483 proto_tree *tree = NULL;
3492 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3493 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_create);
3495 cr_opcode=tvb_get_letohl(tvb,offset);
3496 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(cr_opcode, lustre_mds_reint_t_vals, "Unknown cr_opc"));
3498 offset=lustre_dissect_element_mdt_rec_create_cr_opcode(tvb, offset, pinfo, tree);
3500 offset=lustre_dissect_element_mdt_rec_create_cr_cap(tvb, offset, pinfo, tree);
3502 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid(tvb, offset, pinfo, tree);
3504 offset=lustre_dissect_element_mdt_rec_create_cr_fsuid_h(tvb, offset, pinfo, tree);
3506 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid(tvb, offset, pinfo, tree);
3508 offset=lustre_dissect_element_mdt_rec_create_cr_fsgid_h(tvb, offset, pinfo, tree);
3510 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1(tvb, offset, pinfo, tree);
3512 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid1_h(tvb, offset, pinfo, tree);
3514 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2(tvb, offset, pinfo, tree);
3516 offset=lustre_dissect_element_mdt_rec_create_cr_suppgid2_h(tvb, offset, pinfo, tree);
3518 offset=lustre_dissect_element_mdt_rec_create_cr_fid1(tvb, offset, pinfo, tree);
3520 offset=lustre_dissect_element_mdt_rec_create_cr_fid2(tvb, offset, pinfo, tree);
3522 offset=lustre_dissect_element_mdt_rec_create_cr_old_handle(tvb, offset, pinfo, tree);
3524 offset=lustre_dissect_element_mdt_rec_create_cr_time(tvb, offset, pinfo, tree);
3526 offset=lustre_dissect_element_mdt_rec_create_cr_rdev(tvb, offset, pinfo, tree);
3528 offset=lustre_dissect_element_mdt_rec_create_cr_ioepoch(tvb, offset, pinfo, tree);
3530 offset=lustre_dissect_element_mdt_rec_create_cr_padding_1(tvb, offset, pinfo, tree);
3532 offset=lustre_dissect_element_mdt_rec_create_cr_mode(tvb, offset, pinfo, tree);
3534 offset=lustre_dissect_element_mdt_rec_create_cr_bias(tvb, offset, pinfo, tree);
3536 offset=lustre_dissect_element_mdt_rec_create_cr_flags_l(tvb, offset, pinfo, tree);
3538 offset=lustre_dissect_element_mdt_rec_create_cr_flags_h(tvb, offset, pinfo, tree);
3540 offset=lustre_dissect_element_mdt_rec_create_cr_padding_3(tvb, offset, pinfo, tree);
3542 offset=lustre_dissect_element_mdt_rec_create_cr_padding_4(tvb, offset, pinfo, tree);
3545 proto_item_set_len(item, offset-old_offset);
3551 /* TODO : find where this structure appear ! */
3552 /* IDL: struct mdt_rec_link { */
3553 /* IDL: uint32 lk_opcode; */
3554 /* IDL: uint32 lk_cap; */
3555 /* IDL: uint32 lk_fsuid; */
3556 /* IDL: uint32 lk_fsuid_h; */
3557 /* IDL: uint32 lk_fsgid; */
3558 /* IDL: uint32 lk_fsgid_h; */
3559 /* IDL: uint32 lk_suppgid1; */
3560 /* IDL: uint32 lk_suppgid1_h; */
3561 /* IDL: uint32 lk_suppgid2; */
3562 /* IDL: uint32 lk_suppgid2_h; */
3563 /* IDL: struct lu_fid { */
3564 /* IDL: } lk_fid1; */
3565 /* IDL: struct lu_fid { */
3566 /* IDL: } lk_fid2; */
3567 /* IDL: uint64 lk_time; */
3568 /* IDL: uint64 lk_padding_1; */
3569 /* IDL: uint64 lk_padding_2; */
3570 /* IDL: uint64 lk_padding_3; */
3571 /* IDL: uint64 lk_padding_4; */
3572 /* IDL: uint32 lk_bias; */
3573 /* IDL: uint32 lk_padding_5; */
3574 /* IDL: uint32 lk_padding_6; */
3575 /* IDL: uint32 lk_padding_7; */
3576 /* IDL: uint32 lk_padding_8; */
3577 /* IDL: uint32 lk_padding_9; */
3581 lustre_dissect_element_mdt_rec_link_lk_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3583 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_opcode);
3589 lustre_dissect_element_mdt_rec_link_lk_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3591 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_cap);
3597 lustre_dissect_element_mdt_rec_link_lk_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3599 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid);
3605 lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3607 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsuid_h);
3613 lustre_dissect_element_mdt_rec_link_lk_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3615 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid);
3621 lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3623 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_fsgid_h);
3629 lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3631 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1);
3637 lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3639 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid1_h);
3645 lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3647 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2);
3653 lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3655 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_suppgid2_h);
3661 lustre_dissect_element_mdt_rec_link_lk_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3663 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid1);
3668 lustre_dissect_element_mdt_rec_link_lk_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3670 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_link_lk_fid2);
3675 lustre_dissect_element_mdt_rec_link_lk_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3679 ns.secs = tvb_get_letohl(tvb,offset);
3681 proto_tree_add_time(tree, hf_lustre_mdt_rec_link_lk_time, tvb, offset, 8, &ns );
3687 lustre_dissect_element_mdt_rec_link_lk_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3689 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_1);
3695 lustre_dissect_element_mdt_rec_link_lk_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3697 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_2);
3703 lustre_dissect_element_mdt_rec_link_lk_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3705 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_3);
3711 lustre_dissect_element_mdt_rec_link_lk_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3713 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_4);
3719 lustre_dissect_element_mdt_rec_link_lk_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3721 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_bias);
3727 lustre_dissect_element_mdt_rec_link_lk_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3729 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_5);
3735 lustre_dissect_element_mdt_rec_link_lk_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3737 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_6);
3743 lustre_dissect_element_mdt_rec_link_lk_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3745 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_7);
3751 lustre_dissect_element_mdt_rec_link_lk_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3753 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_8);
3759 lustre_dissect_element_mdt_rec_link_lk_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3761 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link_lk_padding_9);
3767 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_)
3769 proto_item *item = NULL;
3770 proto_tree *tree = NULL;
3779 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
3780 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_link);
3782 lk_opcode=tvb_get_letohl(tvb,offset);
3783 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lk_opcode, lustre_mds_reint_t_vals, "Unknown lk_opc"));
3785 offset=lustre_dissect_element_mdt_rec_link_lk_opcode(tvb, offset, pinfo, tree);
3787 offset=lustre_dissect_element_mdt_rec_link_lk_cap(tvb, offset, pinfo, tree);
3789 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid(tvb, offset, pinfo, tree);
3791 offset=lustre_dissect_element_mdt_rec_link_lk_fsuid_h(tvb, offset, pinfo, tree);
3793 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid(tvb, offset, pinfo, tree);
3795 offset=lustre_dissect_element_mdt_rec_link_lk_fsgid_h(tvb, offset, pinfo, tree);
3797 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1(tvb, offset, pinfo, tree);
3799 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid1_h(tvb, offset, pinfo, tree);
3801 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2(tvb, offset, pinfo, tree);
3803 offset=lustre_dissect_element_mdt_rec_link_lk_suppgid2_h(tvb, offset, pinfo, tree);
3805 offset=lustre_dissect_element_mdt_rec_link_lk_fid1(tvb, offset, pinfo, tree);
3807 offset=lustre_dissect_element_mdt_rec_link_lk_fid2(tvb, offset, pinfo, tree);
3809 offset=lustre_dissect_element_mdt_rec_link_lk_time(tvb, offset, pinfo, tree);
3811 offset=lustre_dissect_element_mdt_rec_link_lk_padding_1(tvb, offset, pinfo, tree);
3813 offset=lustre_dissect_element_mdt_rec_link_lk_padding_2(tvb, offset, pinfo, tree);
3815 offset=lustre_dissect_element_mdt_rec_link_lk_padding_3(tvb, offset, pinfo, tree);
3817 offset=lustre_dissect_element_mdt_rec_link_lk_padding_4(tvb, offset, pinfo, tree);
3819 offset=lustre_dissect_element_mdt_rec_link_lk_bias(tvb, offset, pinfo, tree);
3821 offset=lustre_dissect_element_mdt_rec_link_lk_padding_5(tvb, offset, pinfo, tree);
3823 offset=lustre_dissect_element_mdt_rec_link_lk_padding_6(tvb, offset, pinfo, tree);
3825 offset=lustre_dissect_element_mdt_rec_link_lk_padding_7(tvb, offset, pinfo, tree);
3827 offset=lustre_dissect_element_mdt_rec_link_lk_padding_8(tvb, offset, pinfo, tree);
3829 offset=lustre_dissect_element_mdt_rec_link_lk_padding_9(tvb, offset, pinfo, tree);
3832 proto_item_set_len(item, offset-old_offset);
3837 /* IDL: struct mdt_rec_unlink { */
3838 /* IDL: uint32 ul_opcode; */
3839 /* IDL: uint32 ul_cap; */
3840 /* IDL: uint32 ul_fsuid; */
3841 /* IDL: uint32 ul_fsuid_h; */
3842 /* IDL: uint32 ul_fsgid; */
3843 /* IDL: uint32 ul_fsgid_h; */
3844 /* IDL: uint32 ul_suppgid1; */
3845 /* IDL: uint32 ul_suppgid1_h; */
3846 /* IDL: uint32 ul_suppgid2; */
3847 /* IDL: uint32 ul_suppgid2_h; */
3848 /* IDL: struct lu_fid { */
3849 /* IDL: } ul_fid1; */
3850 /* IDL: struct lu_fid { */
3851 /* IDL: } ul_fid2; */
3852 /* IDL: uint64 ul_time; */
3853 /* IDL: uint64 ul_padding_2; */
3854 /* IDL: uint64 ul_padding_3; */
3855 /* IDL: uint64 ul_padding_4; */
3856 /* IDL: uint64 ul_padding_5; */
3857 /* IDL: uint32 ul_bias; */
3858 /* IDL: uint32 ul_mode; */
3859 /* IDL: uint32 ul_padding_6; */
3860 /* IDL: uint32 ul_padding_7; */
3861 /* IDL: uint32 ul_padding_8; */
3862 /* IDL: uint32 ul_padding_9; */
3866 lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3868 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_opcode);
3874 lustre_dissect_element_mdt_rec_unlink_ul_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3876 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_cap);
3882 lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3884 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid);
3890 lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3892 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsuid_h);
3898 lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3900 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid);
3906 lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3908 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_fsgid_h);
3914 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3916 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1);
3922 lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3924 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid1_h);
3930 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3932 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2);
3938 lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3940 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_suppgid2_h);
3946 lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3948 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid1);
3953 lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3955 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_unlink_ul_fid2);
3960 lustre_dissect_element_mdt_rec_unlink_ul_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3964 ns.secs = tvb_get_letohl(tvb,offset);
3966 proto_tree_add_time(tree,hf_lustre_mdt_rec_unlink_ul_time , tvb, offset, 8, &ns );
3972 lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3974 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_2);
3980 lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3982 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_3);
3988 lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3990 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_4);
3996 lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
3998 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_5);
4004 lustre_dissect_element_mdt_rec_unlink_ul_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4006 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_bias);
4012 lustre_dissect_element_mdt_rec_unlink_ul_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4014 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_mode);
4020 lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4022 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_6);
4028 lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4030 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_7);
4036 lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4038 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_8);
4044 lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4046 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink_ul_padding_9);
4052 lustre_dissect_struct_mdt_rec_unlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4054 proto_item *item = NULL;
4055 proto_tree *tree = NULL;
4064 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4065 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_unlink);
4068 ul_opcode=tvb_get_letohl(tvb,offset);
4069 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(ul_opcode, lustre_mds_reint_t_vals, "Unknown ul_opc"));
4071 offset=lustre_dissect_element_mdt_rec_unlink_ul_opcode(tvb, offset, pinfo, tree);
4073 offset=lustre_dissect_element_mdt_rec_unlink_ul_cap(tvb, offset, pinfo, tree);
4075 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid(tvb, offset, pinfo, tree);
4077 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsuid_h(tvb, offset, pinfo, tree);
4079 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid(tvb, offset, pinfo, tree);
4081 offset=lustre_dissect_element_mdt_rec_unlink_ul_fsgid_h(tvb, offset, pinfo, tree);
4083 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1(tvb, offset, pinfo, tree);
4085 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid1_h(tvb, offset, pinfo, tree);
4087 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2(tvb, offset, pinfo, tree);
4089 offset=lustre_dissect_element_mdt_rec_unlink_ul_suppgid2_h(tvb, offset, pinfo, tree);
4091 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid1(tvb, offset, pinfo, tree);
4093 offset=lustre_dissect_element_mdt_rec_unlink_ul_fid2(tvb, offset, pinfo, tree);
4095 offset=lustre_dissect_element_mdt_rec_unlink_ul_time(tvb, offset, pinfo, tree);
4097 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_2(tvb, offset, pinfo, tree);
4099 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_3(tvb, offset, pinfo, tree);
4101 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_4(tvb, offset, pinfo, tree);
4103 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_5(tvb, offset, pinfo, tree);
4105 offset=lustre_dissect_element_mdt_rec_unlink_ul_bias(tvb, offset, pinfo, tree);
4107 offset=lustre_dissect_element_mdt_rec_unlink_ul_mode(tvb, offset, pinfo, tree);
4109 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_6(tvb, offset, pinfo, tree);
4111 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_7(tvb, offset, pinfo, tree);
4113 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_8(tvb, offset, pinfo, tree);
4115 offset=lustre_dissect_element_mdt_rec_unlink_ul_padding_9(tvb, offset, pinfo, tree);
4118 proto_item_set_len(item, offset-old_offset);
4123 /* IDL: struct mdt_rec_rename { */
4124 /* IDL: uint32 rn_opcode; */
4125 /* IDL: uint32 rn_fsuid; */
4126 /* IDL: uint32 rn_fsgid; */
4127 /* IDL: uint32 rn_cap; */
4128 /* IDL: uint32 rn_suppgid1; */
4129 /* IDL: uint32 rn_suppgid2; */
4130 /* IDL: struct ll_fid { */
4131 /* IDL: } rn_fid1; */
4132 /* IDL: struct ll_fid { */
4133 /* IDL: } rn_fid2; */
4134 /* IDL: uint64 rn_time; */
4135 /* IDL: uint32 rn_padding_1; */
4136 /* IDL: uint32 rn_padding_2; */
4137 /* IDL: uint32 rn_padding_3; */
4138 /* IDL: uint32 rn_padding_4; */
4142 lustre_dissect_element_mdt_rec_rename_rn_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4144 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_opcode);
4150 lustre_dissect_element_mdt_rec_rename_rn_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4152 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_cap);
4158 lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4160 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid);
4166 lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4168 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsuid_h);
4174 lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4176 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid);
4182 lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4184 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_fsgid_h);
4190 lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4192 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1);
4198 lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4200 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid1_h);
4206 lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4208 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2);
4214 lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4216 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_suppgid2_h);
4222 lustre_dissect_element_mdt_rec_rename_rn_fid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4224 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid1);
4229 lustre_dissect_element_mdt_rec_rename_rn_fid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4231 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_rename_rn_fid2);
4236 lustre_dissect_element_mdt_rec_rename_rn_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4240 ns.secs = tvb_get_letohl(tvb,offset);
4242 proto_tree_add_time(tree, hf_lustre_mdt_rec_rename_rn_time, tvb, offset, 8, &ns );
4248 lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4250 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_1);
4256 lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4258 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_2);
4264 lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4266 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_3);
4272 lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4274 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_4);
4280 lustre_dissect_element_mdt_rec_rename_rn_bias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4282 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_bias);
4288 lustre_dissect_element_mdt_rec_rename_rn_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4290 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_mode);
4296 lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4298 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_5);
4304 lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4306 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_6);
4312 lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4314 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_7);
4320 lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4322 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename_rn_padding_8);
4328 lustre_dissect_struct_mdt_rec_rename(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4330 proto_item *item = NULL;
4331 proto_tree *tree = NULL;
4340 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4341 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_rename);
4344 rn_opcode=tvb_get_letohl(tvb,offset);
4345 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(rn_opcode, lustre_mds_reint_t_vals, "Unknown rn_opc"));
4347 offset=lustre_dissect_element_mdt_rec_rename_rn_opcode(tvb, offset, pinfo, tree);
4349 offset=lustre_dissect_element_mdt_rec_rename_rn_cap(tvb, offset, pinfo, tree);
4351 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid(tvb, offset, pinfo, tree);
4353 offset=lustre_dissect_element_mdt_rec_rename_rn_fsuid_h(tvb, offset, pinfo, tree);
4355 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid(tvb, offset, pinfo, tree);
4357 offset=lustre_dissect_element_mdt_rec_rename_rn_fsgid_h(tvb, offset, pinfo, tree);
4359 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1(tvb, offset, pinfo, tree);
4361 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid1_h(tvb, offset, pinfo, tree);
4363 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2(tvb, offset, pinfo, tree);
4365 offset=lustre_dissect_element_mdt_rec_rename_rn_suppgid2_h(tvb, offset, pinfo, tree);
4367 offset=lustre_dissect_element_mdt_rec_rename_rn_fid1(tvb, offset, pinfo, tree);
4369 offset=lustre_dissect_element_mdt_rec_rename_rn_fid2(tvb, offset, pinfo, tree);
4371 offset=lustre_dissect_element_mdt_rec_rename_rn_time(tvb, offset, pinfo, tree);
4373 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_1(tvb, offset, pinfo, tree);
4375 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_2(tvb, offset, pinfo, tree);
4377 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_3(tvb, offset, pinfo, tree);
4379 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_4(tvb, offset, pinfo, tree);
4381 offset=lustre_dissect_element_mdt_rec_rename_rn_bias(tvb, offset, pinfo, tree);
4383 offset=lustre_dissect_element_mdt_rec_rename_rn_mode(tvb, offset, pinfo, tree);
4385 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_5(tvb, offset, pinfo, tree);
4387 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_6(tvb, offset, pinfo, tree);
4389 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_7(tvb, offset, pinfo, tree);
4391 offset=lustre_dissect_element_mdt_rec_rename_rn_padding_8(tvb, offset, pinfo, tree);
4394 proto_item_set_len(item, offset-old_offset);
4399 /* I don't find where this struct appear on wire.. need to search mdc_setxattr_pack() */
4400 /* IDL: struct mdt_rec_setxattr { */
4401 /* IDL: uint32 sx_opcode; */
4402 /* IDL: uint32 sx_cap; */
4403 /* IDL: uint32 sx_fsuid; */
4404 /* IDL: uint32 sx_fsuid_h; */
4405 /* IDL: uint32 sx_fsgid; */
4406 /* IDL: uint32 sx_fsgid_h; */
4407 /* IDL: uint32 sx_suppgid1; */
4408 /* IDL: uint32 sx_suppgid1_h; */
4409 /* IDL: uint32 sx_suppgid2; */
4410 /* IDL: uint32 sx_suppgid2_h; */
4411 /* IDL: struct lu_fid { */
4412 /* IDL: } sx_fid; */
4413 /* IDL: uint64 sx_padding_1; */
4414 /* IDL: uint32 sx_padding_2; */
4415 /* IDL: uint32 sx_padding_3; */
4416 /* IDL: uint64 sx_valid; */
4417 /* IDL: uint64 sx_time; */
4418 /* IDL: uint64 sx_padding_5; */
4419 /* IDL: uint64 sx_padding_6; */
4420 /* IDL: uint64 sx_padding_7; */
4421 /* IDL: uint32 sx_size; */
4422 /* IDL: uint32 sx_flags; */
4423 /* IDL: uint32 sx_padding_8; */
4424 /* IDL: uint32 sx_padding_9; */
4425 /* IDL: uint32 sx_padding_10; */
4426 /* IDL: uint32 sx_padding_11; */
4430 lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4432 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_opcode);
4438 lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4440 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_cap);
4446 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4448 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid);
4454 lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4456 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsuid_h);
4462 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4464 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid);
4470 lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4472 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_fsgid_h);
4478 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4480 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1);
4486 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4488 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid1_h);
4494 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4496 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2);
4502 lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4504 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_suppgid2_h);
4510 lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4512 offset=lustre_dissect_struct_lu_fid(tvb,offset,pinfo,tree,hf_lustre_mdt_rec_setxattr_sx_fid);
4518 lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4520 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_1);
4526 lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4528 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_2);
4534 lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4536 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_3);
4542 lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4544 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_valid);
4550 lustre_dissect_element_mdt_rec_setxattr_sx_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4555 ns.secs = tvb_get_letohl(tvb,offset);
4557 proto_tree_add_time(tree, hf_lustre_mdt_rec_setxattr_sx_time, tvb, offset, 8, &ns );
4563 lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4565 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_5);
4571 lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4573 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_6);
4579 lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4581 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_7);
4587 lustre_dissect_element_mdt_rec_setxattr_sx_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4589 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_size);
4595 lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4597 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_flags);
4603 lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4605 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_8);
4611 lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4613 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_9);
4619 lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4621 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_10);
4627 lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4629 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr_sx_padding_11);
4635 lustre_dissect_struct_mdt_rec_setxattr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4637 proto_item *item = NULL;
4638 proto_tree *tree = NULL;
4647 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4648 tree = proto_item_add_subtree(item, ett_lustre_mdt_rec_setxattr);
4650 sx_opcode=tvb_get_letohl(tvb,offset);
4651 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(sx_opcode, lustre_mds_reint_t_vals, "Unknown sx_opc"));
4653 offset=lustre_dissect_element_mdt_rec_setxattr_sx_opcode(tvb, offset, pinfo, tree);
4655 offset=lustre_dissect_element_mdt_rec_setxattr_sx_cap(tvb, offset, pinfo, tree);
4657 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid(tvb, offset, pinfo, tree);
4659 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsuid_h(tvb, offset, pinfo, tree);
4661 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid(tvb, offset, pinfo, tree);
4663 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fsgid_h(tvb, offset, pinfo, tree);
4665 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1(tvb, offset, pinfo, tree);
4667 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid1_h(tvb, offset, pinfo, tree);
4669 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2(tvb, offset, pinfo, tree);
4671 offset=lustre_dissect_element_mdt_rec_setxattr_sx_suppgid2_h(tvb, offset, pinfo, tree);
4673 offset=lustre_dissect_element_mdt_rec_setxattr_sx_fid(tvb, offset, pinfo, tree);
4675 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_1(tvb, offset, pinfo, tree);
4677 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_2(tvb, offset, pinfo, tree);
4679 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_3(tvb, offset, pinfo, tree);
4681 offset=lustre_dissect_element_mdt_rec_setxattr_sx_valid(tvb, offset, pinfo, tree);
4683 offset=lustre_dissect_element_mdt_rec_setxattr_sx_time(tvb, offset, pinfo, tree);
4685 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_5(tvb, offset, pinfo, tree);
4687 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_6(tvb, offset, pinfo, tree);
4689 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_7(tvb, offset, pinfo, tree);
4691 offset=lustre_dissect_element_mdt_rec_setxattr_sx_size(tvb, offset, pinfo, tree);
4693 offset=lustre_dissect_element_mdt_rec_setxattr_sx_flags(tvb, offset, pinfo, tree);
4695 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_8(tvb, offset, pinfo, tree);
4697 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_9(tvb, offset, pinfo, tree);
4699 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_10(tvb, offset, pinfo, tree);
4701 offset=lustre_dissect_element_mdt_rec_setxattr_sx_padding_11(tvb, offset, pinfo, tree);
4704 proto_item_set_len(item, offset-old_offset);
4710 /* TODO : find where this structure appear */
4712 /* IDL: struct lov_desc { */
4713 /* IDL: uint32 ld_tgt_count; */
4714 /* IDL: uint32 ld_active_tgt_count; */
4715 /* IDL: uint32 ld_default_stripe_count; */
4716 /* IDL: uint32 ld_pattern; */
4717 /* IDL: uint64 ld_default_stripe_size; */
4718 /* IDL: uint64 ld_default_stripe_offset; */
4719 /* IDL: uint32 ld_padding_0; */
4720 /* IDL: uint32 ld_qos_maxage; */
4721 /* IDL: uint32 ld_padding_1; */
4722 /* IDL: uint32 ld_padding_2; */
4723 /* IDL: struct obd_uuid { */
4724 /* IDL: } ld_uuid; */
4728 lustre_dissect_element_lov_desc_ld_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4730 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_tgt_count);
4736 lustre_dissect_element_lov_desc_ld_active_tgt_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4738 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_active_tgt_count);
4744 lustre_dissect_element_lov_desc_ld_default_stripe_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4746 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_count);
4752 lustre_dissect_element_lov_desc_ld_pattern(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4754 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_pattern);
4760 lustre_dissect_element_lov_desc_ld_default_stripe_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4762 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_size);
4768 lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4770 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_default_stripe_offset);
4776 lustre_dissect_element_lov_desc_ld_padding_0(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4778 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_0);
4784 lustre_dissect_element_lov_desc_ld_qos_maxage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4786 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_qos_maxage);
4792 lustre_dissect_element_lov_desc_ld_padding_1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4794 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_1);
4800 lustre_dissect_element_lov_desc_ld_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4802 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lov_desc_ld_padding_2);
4808 lustre_dissect_element_lov_desc_ld_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4810 //offset=lustre_dissect_struct_HASH(0x85bade8)(tvb,offset,pinfo,tree,hf_lustre_lov_desc_ld_uuid);
4815 lustre_dissect_struct_lov_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4817 proto_item *item = NULL;
4818 proto_tree *tree = NULL;
4826 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4827 tree = proto_item_add_subtree(item, ett_lustre_lov_desc);
4830 offset=lustre_dissect_element_lov_desc_ld_tgt_count(tvb, offset, pinfo, tree);
4832 offset=lustre_dissect_element_lov_desc_ld_active_tgt_count(tvb, offset, pinfo, tree);
4834 offset=lustre_dissect_element_lov_desc_ld_default_stripe_count(tvb, offset, pinfo, tree);
4836 offset=lustre_dissect_element_lov_desc_ld_pattern(tvb, offset, pinfo, tree);
4838 offset=lustre_dissect_element_lov_desc_ld_default_stripe_size(tvb, offset, pinfo, tree);
4840 offset=lustre_dissect_element_lov_desc_ld_default_stripe_offset(tvb, offset, pinfo, tree);
4842 offset=lustre_dissect_element_lov_desc_ld_padding_0(tvb, offset, pinfo, tree);
4844 offset=lustre_dissect_element_lov_desc_ld_qos_maxage(tvb, offset, pinfo, tree);
4846 offset=lustre_dissect_element_lov_desc_ld_padding_1(tvb, offset, pinfo, tree);
4848 offset=lustre_dissect_element_lov_desc_ld_padding_2(tvb, offset, pinfo, tree);
4850 offset=lustre_dissect_element_lov_desc_ld_uuid(tvb, offset, pinfo, tree);
4853 proto_item_set_len(item, offset-old_offset);
4858 /* IDL: struct obd_uuid { */
4859 /* char uuid[40]; */
4863 lustre_dissect_struct_obd_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4866 /* the lenght of the string is 40 bytes max, with \0 inside */
4868 proto_tree_add_item(parent_tree, hf_index, tvb, offset, 40, TRUE);
4877 /* IDL: struct ldlm_res_id { */
4878 /* IDL: uint64 name[4]; */
4882 lustre_dissect_element_ldlm_res_id_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4884 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_res_id_name);
4890 lustre_dissect_element_ldlm_res_id_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4893 for (i = 0; i < 4; i++)
4894 offset=lustre_dissect_element_ldlm_res_id_name_(tvb, offset, pinfo, tree);
4902 lustre_dissect_struct_ldlm_res_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4904 proto_item *item = NULL;
4905 proto_tree *tree = NULL;
4913 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
4914 tree = proto_item_add_subtree(item, ett_lustre_ldlm_res_id);
4917 offset=lustre_dissect_element_ldlm_res_id_name(tvb, offset, pinfo, tree);
4920 proto_item_set_len(item, offset-old_offset);
4927 /* IDL: LCK_MINMODE=0, */
4928 /* IDL: LCK_EX=1, */
4929 /* IDL: LCK_PW=2, */
4930 /* IDL: LCK_PR=4, */
4931 /* IDL: LCK_CW=8, */
4932 /* IDL: LCK_CR=16, */
4933 /* IDL: LCK_NL=32, */
4934 /* IDL: LCK_GROUP=64, */
4935 /* IDL: LCK_MAXMODE, */
4939 lustre_dissect_enum_ldlm_mode_t(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_)
4941 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_index);
4947 /* IDL: LDLM_PLAIN=10, */
4948 /* IDL: LDLM_EXTENT=11, */
4949 /* IDL: LDLM_FLOCK=12, */
4950 /* IDL: LDLM_IBITS=13, */
4951 /* IDL: LDLM_MAX_TYPE, */
4955 lustre_dissect_enum_ldlm_type_t(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_)
4957 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type );
4961 /* IDL: struct ldlm_extent { */
4962 /* IDL: uint64 start; */
4963 /* IDL: uint64 end; */
4964 /* IDL: uint64 gid; */
4968 lustre_dissect_element_ldlm_extent_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4970 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_start);
4976 lustre_dissect_element_ldlm_extent_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4978 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_end);
4984 lustre_dissect_element_ldlm_extent_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
4986 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_extent_gid);
4992 lustre_dissect_struct_ldlm_extent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
4994 proto_item *item = NULL;
4995 proto_tree *tree = NULL;
5003 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5004 tree = proto_item_add_subtree(item, ett_lustre_ldlm_extent);
5007 offset=lustre_dissect_element_ldlm_extent_start(tvb, offset, pinfo, tree);
5009 offset=lustre_dissect_element_ldlm_extent_end(tvb, offset, pinfo, tree);
5011 offset=lustre_dissect_element_ldlm_extent_gid(tvb, offset, pinfo, tree);
5014 proto_item_set_len(item, offset-old_offset);
5019 /* IDL: struct ldlm_inodebits { */
5020 /* IDL: uint64 bits; */
5024 lustre_dissect_element_ldlm_inodebits_bits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5026 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_inodebits_bits);
5032 lustre_dissect_struct_ldlm_inodebits(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5034 proto_item *item = NULL;
5035 proto_tree *tree = NULL;
5043 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5044 tree = proto_item_add_subtree(item, ett_lustre_ldlm_inodebits);
5047 offset=lustre_dissect_element_ldlm_inodebits_bits(tvb, offset, pinfo, tree);
5050 proto_item_set_len(item, offset-old_offset);
5055 /* IDL: struct ldlm_flock { */
5056 /* IDL: uint64 start; */
5057 /* IDL: uint64 end; */
5058 /* IDL: uint64 blocking_export; */
5059 /* IDL: uint32 blocking_pid; */
5060 /* IDL: uint32 pid; */
5064 lustre_dissect_element_ldlm_flock_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5066 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_start);
5072 lustre_dissect_element_ldlm_flock_end(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5074 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_end);
5080 lustre_dissect_element_ldlm_flock_blocking_export(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5082 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_export);
5088 lustre_dissect_element_ldlm_flock_blocking_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5090 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_blocking_pid);
5096 lustre_dissect_element_ldlm_flock_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5098 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_flock_pid);
5104 lustre_dissect_struct_ldlm_flock(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5106 proto_item *item = NULL;
5107 proto_tree *tree = NULL;
5115 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5116 tree = proto_item_add_subtree(item, ett_lustre_ldlm_flock);
5119 offset=lustre_dissect_element_ldlm_flock_start(tvb, offset, pinfo, tree);
5121 offset=lustre_dissect_element_ldlm_flock_end(tvb, offset, pinfo, tree);
5123 offset=lustre_dissect_element_ldlm_flock_blocking_export(tvb, offset, pinfo, tree);
5125 offset=lustre_dissect_element_ldlm_flock_blocking_pid(tvb, offset, pinfo, tree);
5127 offset=lustre_dissect_element_ldlm_flock_pid(tvb, offset, pinfo, tree);
5130 proto_item_set_len(item, offset-old_offset);
5135 /* IDL: struct ldlm_intent { */
5136 /* IDL: uint64 opc; */
5140 lustre_dissect_element_ldlm_intent_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5143 /* this opcode is like a flag*/
5144 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_open );
5145 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_creat );
5146 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_readdir );
5147 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getattr );
5148 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_lookup );
5149 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_unlink );
5150 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_getxattr);
5151 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_exec );
5152 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent_opc_pin );
5153 opcode = tvb_get_letohl(tvb,offset);
5155 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, "[ intent :");
5156 if(opcode & IT_OPEN ){
5157 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " open");
5158 proto_item_append_text(tree, " open" );
5160 if(opcode & IT_CREAT ){
5161 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " create");
5162 proto_item_append_text(tree, " create" );
5164 if(opcode & IT_READDIR ){
5165 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " readdir");
5166 proto_item_append_text(tree, " readdir" );
5168 if(opcode & IT_GETATTR ){
5169 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getattr");
5170 proto_item_append_text(tree, " getattr" );
5172 if(opcode & IT_LOOKUP ){
5173 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " lookup");
5174 proto_item_append_text(tree, " lookup" );
5176 if(opcode & IT_UNLINK ){
5177 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " unlink");
5178 proto_item_append_text(tree, " unlink" );
5180 if(opcode & IT_GETXATTR){
5181 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " getxattr");
5182 proto_item_append_text(tree, " getxattr" );
5184 if(opcode & IT_EXEC ){
5185 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " exec");
5186 proto_item_append_text(tree, " exec" );
5188 if(opcode & IT_PIN ){
5189 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " pin");
5190 proto_item_append_text(tree, " pin" );
5193 display_info_str(tree->parent, pinfo->cinfo, COL_INFO, " ]");
5199 lustre_dissect_struct_ldlm_intent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5201 // proto_item *item = NULL;
5202 //proto_tree *tree = NULL;
5205 proto_item * opcode_item = NULL;
5206 proto_tree * opcode_tree = NULL;
5209 // if (parent_tree) {
5210 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5211 // tree = proto_item_add_subtree(item, ett_lustre_ldlm_intent);
5212 // //tree = parent_tree; /* TODO : !!!!!!!!!!!!!!! ATTENTIon à revoir,
5213 // //fait rapidement pour ne pas avoir le subtree */
5217 intent_opc = tvb_get_letoh64(tvb,offset);
5219 opcode_item = proto_tree_add_item(parent_tree, hf_lustre_ldlm_intent_opc, tvb, offset, 8, TRUE);
5220 opcode_tree = proto_item_add_subtree(opcode_item, ett_lustre_ldlm_intent_opc);
5223 offset=lustre_dissect_element_ldlm_intent_opc(tvb, offset, pinfo, opcode_tree);
5225 offset=ldlm_opcode_process(tvb, offset, pinfo, parent_tree, intent_opc);
5232 /* IDL: struct ldlm_resource_desc { */
5233 /* IDL: ldlm_type_t lr_type; */
5234 /* IDL: uint32 lr_padding; */
5235 /* IDL: struct ldlm_res_id { */
5236 /* IDL: } lr_name; */
5240 lustre_dissect_element_ldlm_resource_desc_lr_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5242 /* offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);*/
5243 offset=lustre_dissect_enum_ldlm_type_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_type);
5248 lustre_dissect_element_ldlm_resource_desc_lr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5250 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_resource_desc_lr_padding);
5256 lustre_dissect_element_ldlm_resource_desc_lr_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5258 offset=lustre_dissect_struct_ldlm_res_id(tvb,offset,pinfo,tree,hf_lustre_ldlm_resource_desc_lr_name);
5263 lustre_dissect_struct_ldlm_resource_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5265 proto_item *item = NULL;
5266 proto_tree *tree = NULL;
5274 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5275 tree = proto_item_add_subtree(item, ett_lustre_ldlm_resource_desc);
5278 offset=lustre_dissect_element_ldlm_resource_desc_lr_type(tvb, offset, pinfo, tree);
5280 offset=lustre_dissect_element_ldlm_resource_desc_lr_padding(tvb, offset, pinfo, tree);
5282 offset=lustre_dissect_element_ldlm_resource_desc_lr_name(tvb, offset, pinfo, tree);
5285 proto_item_set_len(item, offset-old_offset);
5291 /* IDL: struct ldlm_lock_desc { */
5292 /* IDL: struct ldlm_resource_desc { */
5293 /* IDL: } l_resource; */
5294 /* IDL: ldlm_mode_t l_req_mode; */
5295 /* IDL: ldlm_mode_t l_granted_mode; */
5296 /* IDL: ldlm_policy_data_t l_policy_data; */
5300 lustre_dissect_element_ldlm_lock_desc_l_resource(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5302 offset=lustre_dissect_struct_ldlm_resource_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_resource);
5307 lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5309 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_req_mode);
5315 lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5317 offset=lustre_dissect_enum_ldlm_mode_t(tvb, offset, pinfo, tree, hf_lustre_ldlm_lock_desc_l_granted_mode);
5323 lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5326 guint32 lr_type; /* type of the lock */
5328 lr_type = tvb_get_letohl(tvb,offset - 48 ); /* TODO : find another way that using -48 */
5330 /* this section must be check with lustre code, possible mistake here */
5334 offset=lustre_dissect_struct_ldlm_flock(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5337 offset= lustre_dissect_struct_ldlm_extent(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5338 /* add an extra padding 8 bytes */
5339 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5342 offset=lustre_dissect_struct_ldlm_inodebits(tvb,offset,pinfo,tree,hf_lustre_ldlm_lock_desc_l_policy_data);
5343 /* add an extra padding 24 bytes */
5344 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5345 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5346 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5349 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5350 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5351 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5352 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
5359 lustre_dissect_struct_ldlm_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5361 proto_item *item = NULL;
5362 proto_tree *tree = NULL;
5365 guint32 lock_req_mode;
5371 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5372 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_desc);
5375 offset=lustre_dissect_element_ldlm_lock_desc_l_resource(tvb, offset, pinfo, tree);
5377 lock_req_mode = tvb_get_letohl(tvb,offset);
5379 display_info_fstr(parent_tree->parent, pinfo->cinfo, COL_INFO, "[%s]", val_to_str(lock_req_mode, lustre_ldlm_mode_t_vals, "Unknown lock"));
5381 offset=lustre_dissect_element_ldlm_lock_desc_l_req_mode(tvb, offset, pinfo, tree);
5383 offset=lustre_dissect_element_ldlm_lock_desc_l_granted_mode(tvb, offset, pinfo, tree);
5385 offset=lustre_dissect_element_ldlm_lock_desc_l_policy_data(tvb, offset, pinfo, tree);
5388 proto_item_set_len(item, offset-old_offset);
5394 /* IDL: struct ldlm_request { */
5395 /* IDL: uint32 lock_flags; */
5396 /* IDL: uint32 lock_count; */
5397 /* IDL: struct ldlm_lock_desc { */
5398 /* IDL: } lock_desc; */
5399 /* IDL: struct lustre_handle { */
5400 /* IDL: } lock_handle[2]; */
5406 lustre_dissect_element_ldlm_request_lock_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5408 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_count);
5414 lustre_dissect_element_ldlm_request_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5416 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_desc);
5423 lustre_dissect_element_ldlm_request_lock_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5425 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5426 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5428 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_request_lock_handle);
5433 lustre_dissect_element_ldlm_request_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5436 for (i = 0; i < 2; i++)
5437 offset=lustre_dissect_element_ldlm_request_lock_handle_(tvb, offset, pinfo, tree);
5443 lustre_dissect_struct_ldlm_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5445 proto_item *item = NULL;
5446 proto_tree *tree = NULL;
5454 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5455 tree = proto_item_add_subtree(item, ett_lustre_ldlm_request);
5458 lock_flag = tvb_get_letohl(tvb,offset);
5459 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_request_lock_flags);
5461 offset=lustre_dissect_element_ldlm_request_lock_count(tvb, offset, pinfo, tree);
5463 /* ldlm_type = (EXTENT, PLAIN, ou IBITS) */
5464 ldlm_type = tvb_get_letohl(tvb,offset);
5465 offset=lustre_dissect_element_ldlm_request_lock_desc(tvb, offset, pinfo, tree);
5466 offset=lustre_dissect_element_ldlm_request_lock_handle(tvb, offset, pinfo, tree);
5468 proto_item_set_len(item, offset-old_offset);
5476 /* IDL: struct ldlm_reply { */
5477 /* IDL: uint32 lock_flags; */
5478 /* IDL: uint32 lock_padding; */
5479 /* IDL: struct ldlm_lock_desc { */
5480 /* IDL: } lock_desc; */
5481 /* IDL: struct lustre_handle { */
5482 /* IDL: } lock_handle; */
5483 /* IDL: uint64 lock_policy_res1; */
5484 /* IDL: uint64 lock_policy_res2; */
5489 lustre_dissect_element_ldlm_lock_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5491 proto_item *item = NULL;
5492 proto_tree *tree = NULL;
5495 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
5496 tree = proto_item_add_subtree(item, ett_lustre_ldlm_lock_flags);
5498 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_ast_discard_data);
5499 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_deny_on_contention);
5500 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_done );
5501 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_bl_ast );
5502 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_atomic_cb );
5503 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cleaned );
5504 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cp_reqd );
5505 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel_on_block );
5506 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_lru );
5507 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_kms_ignore );
5508 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lvb_ready );
5509 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_test_lock );
5510 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_nowait );
5511 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_no_timeout );
5512 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_discard_data );
5513 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_warn );
5514 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local );
5515 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_canceling );
5516 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_has_intent );
5517 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_failed );
5518 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_local_only );
5519 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_intent_only );
5520 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_replay );
5521 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cancel );
5522 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_wait_noreproc );
5523 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_ast_sent );
5524 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_cbpending );
5525 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_wait );
5526 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_conv );
5527 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_block_granted );
5528 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_fl_lock_changed );
5533 lustre_dissect_element_ldlm_reply_lock_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5535 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_padding);
5541 lustre_dissect_element_ldlm_reply_lock_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5543 offset=lustre_dissect_struct_ldlm_lock_desc(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_desc);
5548 lustre_dissect_element_ldlm_reply_lock_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5550 /*if (check_col(pinfo->cinfo, COL_INFO)) */
5551 /* col_append_fstr(pinfo->cinfo, COL_INFO, " ldlm cookie : %" G_GINT64_MODIFIER "u", tvb_get_letoh64(tvb,offset) );*/
5553 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ldlm_reply_lock_handle);
5558 lustre_dissect_element_ldlm_reply_lock_policy_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5560 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res1);
5566 lustre_dissect_element_ldlm_reply_lock_policy_res2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5568 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_policy_res2);
5574 lustre_dissect_struct_ldlm_reply(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 * ldlm_type _U_ )
5576 proto_item *item = NULL;
5577 proto_tree *tree = NULL;
5585 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5586 tree = proto_item_add_subtree(item, ett_lustre_ldlm_reply);
5589 lock_flag = tvb_get_letohl(tvb,offset);
5590 offset=lustre_dissect_element_ldlm_lock_flags(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply_lock_flags);
5592 offset=lustre_dissect_element_ldlm_reply_lock_padding(tvb, offset, pinfo, tree);
5594 if (ldlm_type != NULL)
5595 *ldlm_type = tvb_get_letohl(tvb,offset);
5596 offset=lustre_dissect_element_ldlm_reply_lock_desc(tvb, offset, pinfo, tree);
5598 offset=lustre_dissect_element_ldlm_reply_lock_handle(tvb, offset, pinfo, tree);
5600 offset=lustre_dissect_element_ldlm_reply_lock_policy_res1(tvb, offset, pinfo, tree);
5602 offset=lustre_dissect_element_ldlm_reply_lock_policy_res2(tvb, offset, pinfo, tree);
5604 proto_item_set_len(item, offset-old_offset);
5612 /* IDL: struct mgs_send_param { */
5613 /* IDL: uint8 mgs_param[1024]; */
5619 lustre_dissect_element_mgs_send_param_mgs_param_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5621 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_send_param_mgs_param);
5627 lustre_dissect_element_mgs_send_param_mgs_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5630 for (i = 0; i < 1024; i++)
5631 offset=lustre_dissect_element_mgs_send_param_mgs_param_(tvb, offset, pinfo, tree);
5637 lustre_dissect_struct_mgs_send_param(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5639 proto_item *item = NULL;
5640 proto_tree *tree = NULL;
5647 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5648 tree = proto_item_add_subtree(item, ett_lustre_mgs_send_param);
5651 offset=lustre_dissect_element_mgs_send_param_mgs_param(tvb, offset, pinfo, tree);
5654 proto_item_set_len(item, offset-old_offset);
5659 /* IDL: struct mgs_target_info { */
5660 /* IDL: uint32 mti_lustre_ver; */
5661 /* IDL: uint32 mti_stripe_index; */
5662 /* IDL: uint32 mti_config_ver; */
5663 /* IDL: uint32 mti_flags; */
5664 /* IDL: uint32 mti_nid_count; */
5665 /* IDL: uint32 padding; */
5666 /* IDL: uint8 mti_fsname[64]; */
5667 /* IDL: uint8 mti_svname[64]; */
5668 /* IDL: uint8 mti_uuid[40]; */
5669 /* IDL: uint64 mti_nids[32]; */
5670 /* IDL: uint8 mti_params[4096]; */
5674 lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5676 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_lustre_ver);
5682 lustre_dissect_element_mgs_target_info_mti_stripe_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5684 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_stripe_index);
5690 lustre_dissect_element_mgs_target_info_mti_config_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5692 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_config_ver);
5698 lustre_dissect_element_mgs_target_info_mti_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5700 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_flags);
5706 lustre_dissect_element_mgs_target_info_mti_nid_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5708 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nid_count);
5714 lustre_dissect_element_mgs_target_info_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5716 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_padding);
5722 lustre_dissect_element_mgs_target_info_mti_fsname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5724 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_fsname);
5730 lustre_dissect_element_mgs_target_info_mti_fsname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5733 for (i = 0; i < 64; i++)
5734 offset=lustre_dissect_element_mgs_target_info_mti_fsname_(tvb, offset, pinfo, tree);
5744 lustre_dissect_element_mgs_target_info_mti_svname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5746 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_svname);
5752 lustre_dissect_element_mgs_target_info_mti_svname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5755 for (i = 0; i < 64; i++)
5756 offset=lustre_dissect_element_mgs_target_info_mti_svname_(tvb, offset, pinfo, tree);
5762 lustre_dissect_element_mgs_target_info_mti_uuid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5764 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_uuid);
5770 lustre_dissect_element_mgs_target_info_mti_uuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5773 for (i = 0; i < 40; i++)
5774 offset=lustre_dissect_element_mgs_target_info_mti_uuid_(tvb, offset, pinfo, tree);
5784 lustre_dissect_element_mgs_target_info_mti_nids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5786 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_nids);
5792 lustre_dissect_element_mgs_target_info_mti_nids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5795 for (i = 0; i < 32; i++)
5796 offset=lustre_dissect_element_mgs_target_info_mti_nids_(tvb, offset, pinfo, tree);
5804 lustre_dissect_element_mgs_target_info_mti_params_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5806 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info_mti_params);
5812 lustre_dissect_element_mgs_target_info_mti_params(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5815 for (i = 0; i < 4096; i++)
5816 offset=lustre_dissect_element_mgs_target_info_mti_params_(tvb, offset, pinfo, tree);
5822 lustre_dissect_struct_mgs_target_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5824 proto_item *item = NULL;
5825 proto_tree *tree = NULL;
5833 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5834 tree = proto_item_add_subtree(item, ett_lustre_mgs_target_info);
5837 offset=lustre_dissect_element_mgs_target_info_mti_lustre_ver(tvb, offset, pinfo, tree);
5839 offset=lustre_dissect_element_mgs_target_info_mti_stripe_index(tvb, offset, pinfo, tree);
5841 offset=lustre_dissect_element_mgs_target_info_mti_config_ver(tvb, offset, pinfo, tree);
5843 offset=lustre_dissect_element_mgs_target_info_mti_flags(tvb, offset, pinfo, tree);
5845 offset=lustre_dissect_element_mgs_target_info_mti_nid_count(tvb, offset, pinfo, tree);
5847 offset=lustre_dissect_element_mgs_target_info_padding(tvb, offset, pinfo, tree);
5849 offset=lustre_dissect_element_mgs_target_info_mti_fsname(tvb, offset, pinfo, tree);
5851 offset=lustre_dissect_element_mgs_target_info_mti_svname(tvb, offset, pinfo, tree);
5853 offset=lustre_dissect_element_mgs_target_info_mti_uuid(tvb, offset, pinfo, tree);
5855 offset=lustre_dissect_element_mgs_target_info_mti_nids(tvb, offset, pinfo, tree);
5857 offset=lustre_dissect_element_mgs_target_info_mti_params(tvb, offset, pinfo, tree);
5860 proto_item_set_len(item, offset-old_offset);
5865 /* IDL: struct cfg_marker { */
5866 /* IDL: uint32 cm_step; */
5867 /* IDL: uint32 cm_flags; */
5868 /* IDL: uint32 cm_vers; */
5869 /* IDL: uint32 padding; */
5870 /* IDL: time_t cm_createtime; */
5871 /* IDL: time_t cm_canceltime; */
5872 /* IDL: uint8 cm_tgtname[64]; */
5873 /* IDL: uint8 cm_comment[64]; */
5877 lustre_dissect_element_cfg_marker_cm_step(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5879 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_step);
5885 lustre_dissect_element_cfg_marker_cm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5887 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_flags);
5893 lustre_dissect_element_cfg_marker_cm_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5895 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_vers);
5901 lustre_dissect_element_cfg_marker_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5903 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_padding);
5909 lustre_dissect_element_cfg_marker_cm_createtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5911 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_createtime );
5912 /*g_print("function lustre_dissect_element_cfg_marker_cm_createtime don't work\n");*/
5917 lustre_dissect_element_cfg_marker_cm_canceltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5919 //offset=dissect_ndr_time_t(tvb, offset, pinfo,tree, hf_lustre_cfg_marker_cm_canceltime);
5921 /*g_print("element_cfg_marker_cm_canceltime\n");*/
5928 lustre_dissect_element_cfg_marker_cm_tgtname_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5930 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_tgtname);
5936 lustre_dissect_element_cfg_marker_cm_tgtname(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5939 for (i = 0; i < 64; i++)
5940 offset=lustre_dissect_element_cfg_marker_cm_tgtname_(tvb, offset, pinfo, tree);
5948 lustre_dissect_element_cfg_marker_cm_comment_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5950 offset=dissect_uint8(tvb, offset, pinfo, tree, hf_lustre_cfg_marker_cm_comment);
5956 lustre_dissect_element_cfg_marker_cm_comment(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
5959 for (i = 0; i < 64; i++)
5960 offset=lustre_dissect_element_cfg_marker_cm_comment_(tvb, offset, pinfo, tree);
5966 lustre_dissect_struct_cfg_marker(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
5968 proto_item *item = NULL;
5969 proto_tree *tree = NULL;
5977 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
5978 tree = proto_item_add_subtree(item, ett_lustre_cfg_marker);
5981 offset=lustre_dissect_element_cfg_marker_cm_step(tvb, offset, pinfo, tree);
5983 offset=lustre_dissect_element_cfg_marker_cm_flags(tvb, offset, pinfo, tree);
5985 offset=lustre_dissect_element_cfg_marker_cm_vers(tvb, offset, pinfo, tree);
5987 offset=lustre_dissect_element_cfg_marker_padding(tvb, offset, pinfo, tree);
5989 offset=lustre_dissect_element_cfg_marker_cm_createtime(tvb, offset, pinfo, tree);
5991 offset=lustre_dissect_element_cfg_marker_cm_canceltime(tvb, offset, pinfo, tree);
5993 offset=lustre_dissect_element_cfg_marker_cm_tgtname(tvb, offset, pinfo, tree);
5995 offset=lustre_dissect_element_cfg_marker_cm_comment(tvb, offset, pinfo, tree);
5998 proto_item_set_len(item, offset-old_offset);
6005 /* IDL: struct llog_logid { */
6006 /* IDL: uint64 lgl_oid; */
6007 /* IDL: uint64 lgl_oseq; */
6008 /* IDL: uint32 lgl_ogen; */
6012 lustre_dissect_element_llog_logid_lgl_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6014 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oid);
6020 lustre_dissect_element_llog_logid_lgl_oseq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6022 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_oseq);
6028 lustre_dissect_element_llog_logid_lgl_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6030 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_lgl_ogen);
6036 lustre_dissect_struct_llog_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6038 proto_item *item = NULL;
6039 proto_tree *tree = NULL;
6047 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6048 tree = proto_item_add_subtree(item, ett_lustre_llog_logid);
6051 offset=lustre_dissect_element_llog_logid_lgl_oid(tvb, offset, pinfo, tree);
6053 offset=lustre_dissect_element_llog_logid_lgl_oseq(tvb, offset, pinfo, tree);
6055 offset=lustre_dissect_element_llog_logid_lgl_ogen(tvb, offset, pinfo, tree);
6058 proto_item_set_len(item, offset-old_offset);
6063 /* I don't know when this structure is used on network */
6064 /* IDL: struct llog_catid { */
6065 /* IDL: struct llog_logid { */
6066 /* IDL: } lci_logid; */
6067 /* IDL: uint32 lci_padding1; */
6068 /* IDL: uint32 lci_padding2; */
6069 /* IDL: uint32 lci_padding3; */
6073 lustre_dissect_element_llog_catid_lci_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6075 //offset=lustre_dissect_struct_HASH(0x85cc76c)(tvb,offset,pinfo,tree,hf_lustre_llog_catid_lci_logid);
6077 /*g_print("llog_catid_lci_logid bug\n");*/
6082 lustre_dissect_element_llog_catid_lci_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6084 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding1);
6090 lustre_dissect_element_llog_catid_lci_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6092 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding2);
6098 lustre_dissect_element_llog_catid_lci_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6100 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_catid_lci_padding3);
6106 lustre_dissect_struct_llog_catid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6108 proto_item *item = NULL;
6109 proto_tree *tree = NULL;
6117 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6118 tree = proto_item_add_subtree(item, ett_lustre_llog_catid);
6121 offset=lustre_dissect_element_llog_catid_lci_logid(tvb, offset, pinfo, tree);
6123 offset=lustre_dissect_element_llog_catid_lci_padding1(tvb, offset, pinfo, tree);
6125 offset=lustre_dissect_element_llog_catid_lci_padding2(tvb, offset, pinfo, tree);
6127 offset=lustre_dissect_element_llog_catid_lci_padding3(tvb, offset, pinfo, tree);
6130 proto_item_set_len(item, offset-old_offset);
6135 /* IDL: struct llog_rec_hdr { */
6136 /* IDL: uint32 lrh_len; */
6137 /* IDL: uint32 lrh_index; */
6138 /* IDL: uint32 lrh_type; */
6139 /* IDL: uint32 padding; */
6143 lustre_dissect_element_llog_rec_hdr_lrh_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6145 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_len);
6151 lustre_dissect_element_llog_rec_hdr_lrh_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6153 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_index);
6159 lustre_dissect_element_llog_rec_hdr_lrh_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6161 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_lrh_type);
6167 lustre_dissect_element_llog_rec_hdr_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6169 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_hdr_padding);
6175 lustre_dissect_struct_llog_rec_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6177 proto_item *item = NULL;
6178 proto_tree *tree = NULL;
6186 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6187 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_hdr);
6190 offset=lustre_dissect_element_llog_rec_hdr_lrh_len(tvb, offset, pinfo, tree);
6192 offset=lustre_dissect_element_llog_rec_hdr_lrh_index(tvb, offset, pinfo, tree);
6194 offset=lustre_dissect_element_llog_rec_hdr_lrh_type(tvb, offset, pinfo, tree);
6196 offset=lustre_dissect_element_llog_rec_hdr_padding(tvb, offset, pinfo, tree);
6199 proto_item_set_len(item, offset-old_offset);
6204 /* IDL: struct llog_rec_tail { */
6205 /* IDL: uint32 lrt_len; */
6206 /* IDL: uint32 lrt_index; */
6210 lustre_dissect_element_llog_rec_tail_lrt_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6212 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_len);
6218 lustre_dissect_element_llog_rec_tail_lrt_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6220 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_rec_tail_lrt_index);
6226 lustre_dissect_struct_llog_rec_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6228 proto_item *item = NULL;
6229 proto_tree *tree = NULL;
6237 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6238 tree = proto_item_add_subtree(item, ett_lustre_llog_rec_tail);
6241 offset=lustre_dissect_element_llog_rec_tail_lrt_len(tvb, offset, pinfo, tree);
6243 offset=lustre_dissect_element_llog_rec_tail_lrt_index(tvb, offset, pinfo, tree);
6246 proto_item_set_len(item, offset-old_offset);
6251 /* IDL: struct llog_logid_rec { */
6252 /* IDL: struct llog_rec_hdr { */
6253 /* IDL: } lid_hdr; */
6254 /* IDL: struct llog_logid { */
6255 /* IDL: } lid_id; */
6256 /* IDL: uint32 padding1; */
6257 /* IDL: uint32 padding2; */
6258 /* IDL: uint32 padding3; */
6259 /* IDL: uint32 padding4; */
6260 /* IDL: uint32 padding5; */
6261 /* IDL: struct llog_rec_tail { */
6262 /* IDL: } lid_tail; */
6266 lustre_dissect_element_llog_logid_rec_lid_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6268 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_hdr);
6273 lustre_dissect_element_llog_logid_rec_lid_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6275 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_id);
6280 lustre_dissect_element_llog_logid_rec_padding1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6282 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding1);
6288 lustre_dissect_element_llog_logid_rec_padding2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6290 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding2);
6296 lustre_dissect_element_llog_logid_rec_padding3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6298 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding3);
6304 lustre_dissect_element_llog_logid_rec_padding4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6306 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding4);
6312 lustre_dissect_element_llog_logid_rec_padding5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6314 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_logid_rec_padding5);
6320 lustre_dissect_element_llog_logid_rec_lid_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6322 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_logid_rec_lid_tail);
6327 lustre_dissect_struct_llog_logid_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6329 proto_item *item = NULL;
6330 proto_tree *tree = NULL;
6338 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6339 tree = proto_item_add_subtree(item, ett_lustre_llog_logid_rec);
6342 offset=lustre_dissect_element_llog_logid_rec_lid_hdr(tvb, offset, pinfo, tree);
6344 offset=lustre_dissect_element_llog_logid_rec_lid_id(tvb, offset, pinfo, tree);
6346 offset=lustre_dissect_element_llog_logid_rec_padding1(tvb, offset, pinfo, tree);
6348 offset=lustre_dissect_element_llog_logid_rec_padding2(tvb, offset, pinfo, tree);
6350 offset=lustre_dissect_element_llog_logid_rec_padding3(tvb, offset, pinfo, tree);
6352 offset=lustre_dissect_element_llog_logid_rec_padding4(tvb, offset, pinfo, tree);
6354 offset=lustre_dissect_element_llog_logid_rec_padding5(tvb, offset, pinfo, tree);
6356 offset=lustre_dissect_element_llog_logid_rec_lid_tail(tvb, offset, pinfo, tree);
6359 proto_item_set_len(item, offset-old_offset);
6364 /* IDL: struct llog_create_rec { */
6365 /* IDL: struct llog_rec_hdr { */
6366 /* IDL: } lcr_hdr; */
6367 /* IDL: struct ll_fid { */
6368 /* IDL: } lcr_fid; */
6369 /* IDL: uint64 lcr_oid; */
6370 /* IDL: uint32 lcr_ogen; */
6371 /* IDL: uint32 padding; */
6372 /* IDL: struct llog_rec_tail { */
6373 /* IDL: } lcr_tail; */
6377 lustre_dissect_element_llog_create_rec_lcr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6379 //offset=lustre_dissect_struct_HASH(0x85d56e0)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_hdr);
6385 lustre_dissect_element_llog_create_rec_lcr_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6387 //offset=lustre_dissect_struct_HASH(0x85d5830)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_fid);
6393 lustre_dissect_element_llog_create_rec_lcr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6395 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_lcr_oid);
6401 lustre_dissect_element_llog_create_rec_lcr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6403 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_lcr_ogen);
6409 lustre_dissect_element_llog_create_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6411 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_create_rec_padding);
6417 lustre_dissect_element_llog_create_rec_lcr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6419 //offset=lustre_dissect_struct_HASH(0x85d69dc)(tvb,offset,pinfo,tree,hf_lustre_llog_create_rec_lcr_tail);
6425 lustre_dissect_struct_llog_create_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6427 proto_item *item = NULL;
6428 proto_tree *tree = NULL;
6436 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6437 tree = proto_item_add_subtree(item, ett_lustre_llog_create_rec);
6440 offset=lustre_dissect_element_llog_create_rec_lcr_hdr(tvb, offset, pinfo, tree);
6442 offset=lustre_dissect_element_llog_create_rec_lcr_fid(tvb, offset, pinfo, tree);
6444 offset=lustre_dissect_element_llog_create_rec_lcr_oid(tvb, offset, pinfo, tree);
6446 offset=lustre_dissect_element_llog_create_rec_lcr_ogen(tvb, offset, pinfo, tree);
6448 offset=lustre_dissect_element_llog_create_rec_padding(tvb, offset, pinfo, tree);
6450 offset=lustre_dissect_element_llog_create_rec_lcr_tail(tvb, offset, pinfo, tree);
6453 proto_item_set_len(item, offset-old_offset);
6461 /* IDL: struct llog_orphan_rec { */
6462 /* IDL: struct llog_rec_hdr { */
6463 /* IDL: } lor_hdr; */
6464 /* IDL: uint64 lor_oid; */
6465 /* IDL: uint32 lor_ogen; */
6466 /* IDL: uint32 padding; */
6467 /* IDL: struct llog_rec_tail { */
6468 /* IDL: } lor_tail; */
6472 lustre_dissect_element_llog_orphan_rec_lor_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6474 //offset=lustre_dissect_struct_HASH(0x85d767c)(tvb,offset,pinfo,tree,hf_lustre_llog_orphan_rec_lor_hdr);
6480 lustre_dissect_element_llog_orphan_rec_lor_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6482 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_lor_oid);
6488 lustre_dissect_element_llog_orphan_rec_lor_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6490 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_lor_ogen);
6496 lustre_dissect_element_llog_orphan_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6498 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_orphan_rec_padding);
6504 lustre_dissect_element_llog_orphan_rec_lor_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6506 //offset=lustre_dissect_struct_HASH(0x85d8550)(tvb,offset,pinfo,tree,hf_lustre_llog_orphan_rec_lor_tail);
6511 lustre_dissect_struct_llog_orphan_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6513 proto_item *item = NULL;
6514 proto_tree *tree = NULL;
6522 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6523 tree = proto_item_add_subtree(item, ett_lustre_llog_orphan_rec);
6526 offset=lustre_dissect_element_llog_orphan_rec_lor_hdr(tvb, offset, pinfo, tree);
6528 offset=lustre_dissect_element_llog_orphan_rec_lor_oid(tvb, offset, pinfo, tree);
6530 offset=lustre_dissect_element_llog_orphan_rec_lor_ogen(tvb, offset, pinfo, tree);
6532 offset=lustre_dissect_element_llog_orphan_rec_padding(tvb, offset, pinfo, tree);
6534 offset=lustre_dissect_element_llog_orphan_rec_lor_tail(tvb, offset, pinfo, tree);
6537 proto_item_set_len(item, offset-old_offset);
6544 /* IDL: struct llog_unlink_rec { */
6545 /* IDL: struct llog_rec_hdr { */
6546 /* IDL: } lur_hdr; */
6547 /* IDL: uint64 lur_oid; */
6548 /* IDL: uint32 lur_ogen; */
6549 /* IDL: uint32 padding; */
6550 /* IDL: struct llog_rec_tail { */
6551 /* IDL: } lur_tail; */
6555 lustre_dissect_element_llog_unlink_rec_lur_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6557 //offset=lustre_dissect_struct_HASH(0x85d8730)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_hdr);
6562 lustre_dissect_element_llog_unlink_rec_lur_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6564 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_oid);
6570 lustre_dissect_element_llog_unlink_rec_lur_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6572 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_lur_ogen);
6578 lustre_dissect_element_llog_unlink_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6580 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_unlink_rec_padding);
6586 lustre_dissect_element_llog_unlink_rec_lur_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6588 //offset=lustre_dissect_struct_HASH(0x85d9664)(tvb,offset,pinfo,tree,hf_lustre_llog_unlink_rec_lur_tail);
6593 lustre_dissect_struct_llog_unlink_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6595 proto_item *item = NULL;
6596 proto_tree *tree = NULL;
6604 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6605 tree = proto_item_add_subtree(item, ett_lustre_llog_unlink_rec);
6608 offset=lustre_dissect_element_llog_unlink_rec_lur_hdr(tvb, offset, pinfo, tree);
6610 offset=lustre_dissect_element_llog_unlink_rec_lur_oid(tvb, offset, pinfo, tree);
6612 offset=lustre_dissect_element_llog_unlink_rec_lur_ogen(tvb, offset, pinfo, tree);
6614 offset=lustre_dissect_element_llog_unlink_rec_padding(tvb, offset, pinfo, tree);
6616 offset=lustre_dissect_element_llog_unlink_rec_lur_tail(tvb, offset, pinfo, tree);
6619 proto_item_set_len(item, offset-old_offset);
6626 /* IDL: struct llog_setattr_rec { */
6627 /* IDL: struct llog_rec_hdr { */
6628 /* IDL: } lsr_hdr; */
6629 /* IDL: uint64 lsr_oid; */
6630 /* IDL: uint32 lsr_ogen; */
6631 /* IDL: uint32 lsr_uid; */
6632 /* IDL: uint32 lsr_gid; */
6633 /* IDL: uint32 padding; */
6634 /* IDL: struct llog_rec_tail { */
6635 /* IDL: } lsr_tail; */
6639 lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6641 //offset=lustre_dissect_struct_HASH(0x85da2f0)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_hdr);
6646 lustre_dissect_element_llog_setattr_rec_lsr_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6648 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_oid);
6654 lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6656 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_ogen);
6662 lustre_dissect_element_llog_setattr_rec_lsr_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6664 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_uid);
6670 lustre_dissect_element_llog_setattr_rec_lsr_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6672 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_lsr_gid);
6678 lustre_dissect_element_llog_setattr_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6680 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_setattr_rec_padding);
6686 lustre_dissect_element_llog_setattr_rec_lsr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6688 //offset=lustre_dissect_struct_HASH(0x85db3d4)(tvb,offset,pinfo,tree,hf_lustre_llog_setattr_rec_lsr_tail);
6693 lustre_dissect_struct_llog_setattr_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6695 proto_item *item = NULL;
6696 proto_tree *tree = NULL;
6704 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6705 tree = proto_item_add_subtree(item, ett_lustre_llog_setattr_rec);
6708 offset=lustre_dissect_element_llog_setattr_rec_lsr_hdr(tvb, offset, pinfo, tree);
6710 offset=lustre_dissect_element_llog_setattr_rec_lsr_oid(tvb, offset, pinfo, tree);
6712 offset=lustre_dissect_element_llog_setattr_rec_lsr_ogen(tvb, offset, pinfo, tree);
6714 offset=lustre_dissect_element_llog_setattr_rec_lsr_uid(tvb, offset, pinfo, tree);
6716 offset=lustre_dissect_element_llog_setattr_rec_lsr_gid(tvb, offset, pinfo, tree);
6718 offset=lustre_dissect_element_llog_setattr_rec_padding(tvb, offset, pinfo, tree);
6720 offset=lustre_dissect_element_llog_setattr_rec_lsr_tail(tvb, offset, pinfo, tree);
6723 proto_item_set_len(item, offset-old_offset);
6731 /* IDL: struct llog_size_change_rec { */
6732 /* IDL: struct llog_rec_hdr { */
6733 /* IDL: } lsc_hdr; */
6734 /* IDL: struct ll_fid { */
6735 /* IDL: } lsc_fid; */
6736 /* IDL: uint32 lsc_io_epoch; */
6737 /* IDL: uint32 padding; */
6738 /* IDL: struct llog_rec_tail { */
6739 /* IDL: } lsc_tail; */
6743 lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6745 //offset=lustre_dissect_struct_HASH(0x85dc458)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_hdr);
6750 lustre_dissect_element_llog_size_change_rec_lsc_fid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6752 //offset=lustre_dissect_struct_HASH(0x85dc5a8)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_fid);
6757 lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6759 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_lsc_io_epoch);
6765 lustre_dissect_element_llog_size_change_rec_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6767 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_size_change_rec_padding);
6773 lustre_dissect_element_llog_size_change_rec_lsc_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6775 //offset=lustre_dissect_struct_HASH(0x85dd384)(tvb,offset,pinfo,tree,hf_lustre_llog_size_change_rec_lsc_tail);
6776 // TODO: to be corrected !
6781 lustre_dissect_struct_llog_size_change_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6783 proto_item *item = NULL;
6784 proto_tree *tree = NULL;
6792 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6793 tree = proto_item_add_subtree(item, ett_lustre_llog_size_change_rec);
6796 offset=lustre_dissect_element_llog_size_change_rec_lsc_hdr(tvb, offset, pinfo, tree);
6798 offset=lustre_dissect_element_llog_size_change_rec_lsc_fid(tvb, offset, pinfo, tree);
6800 offset=lustre_dissect_element_llog_size_change_rec_lsc_io_epoch(tvb, offset, pinfo, tree);
6802 offset=lustre_dissect_element_llog_size_change_rec_padding(tvb, offset, pinfo, tree);
6804 offset=lustre_dissect_element_llog_size_change_rec_lsc_tail(tvb, offset, pinfo, tree);
6807 proto_item_set_len(item, offset-old_offset);
6815 /* IDL: struct llog_gen { */
6816 /* IDL: uint64 mnt_cnt; */
6817 /* IDL: uint64 conn_cnt; */
6821 lustre_dissect_element_llog_gen_mnt_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6823 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_mnt_cnt);
6829 lustre_dissect_element_llog_gen_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6831 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llog_gen_conn_cnt);
6837 lustre_dissect_struct_llog_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6839 proto_item *item = NULL;
6840 proto_tree *tree = NULL;
6848 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6849 tree = proto_item_add_subtree(item, ett_lustre_llog_gen);
6852 offset=lustre_dissect_element_llog_gen_mnt_cnt(tvb, offset, pinfo, tree);
6854 offset=lustre_dissect_element_llog_gen_conn_cnt(tvb, offset, pinfo, tree);
6857 proto_item_set_len(item, offset-old_offset);
6862 /* IDL: struct llog_gen_rec { */
6863 /* IDL: struct llog_rec_hdr { */
6864 /* IDL: } lgr_hdr; */
6865 /* IDL: struct llog_gen { */
6866 /* IDL: } lgr_gen; */
6867 /* IDL: struct llog_rec_tail { */
6868 /* IDL: } lgr_tail; */
6872 lustre_dissect_element_llog_gen_rec_lgr_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6874 //offset=lustre_dissect_struct_HASH(0x85de2e4)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_hdr);
6875 // TODO: to be corrected !
6880 lustre_dissect_element_llog_gen_rec_lgr_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6882 //offset=lustre_dissect_struct_HASH(0x85de434)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_gen);
6883 // TODO: to be corrected !
6888 lustre_dissect_element_llog_gen_rec_lgr_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6890 //offset=lustre_dissect_struct_HASH(0x85df3f8)(tvb,offset,pinfo,tree,hf_lustre_llog_gen_rec_lgr_tail);
6891 // TODO: to be corrected !
6896 lustre_dissect_struct_llog_gen_rec(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6898 proto_item *item = NULL;
6899 proto_tree *tree = NULL;
6907 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
6908 tree = proto_item_add_subtree(item, ett_lustre_llog_gen_rec);
6911 offset=lustre_dissect_element_llog_gen_rec_lgr_hdr(tvb, offset, pinfo, tree);
6913 offset=lustre_dissect_element_llog_gen_rec_lgr_gen(tvb, offset, pinfo, tree);
6915 offset=lustre_dissect_element_llog_gen_rec_lgr_tail(tvb, offset, pinfo, tree);
6918 proto_item_set_len(item, offset-old_offset);
6926 /* IDL: struct llog_log_hdr { */
6927 /* IDL: struct llog_rec_hdr { */
6928 /* IDL: } llh_hdr; */
6929 /* IDL: uint64 llh_timestamp; */
6930 /* IDL: uint32 llh_count; */
6931 /* IDL: uint32 llh_bitmap_offset; */
6932 /* IDL: uint32 llh_size; */
6933 /* IDL: uint32 llh_flags; */
6934 /* IDL: uint32 llh_cat_idx; */
6935 /* IDL: struct obd_uuid { */
6936 /* IDL: } llh_tgtuuid; */
6937 /* IDL: uint32 llh_reserved[1]; */
6938 /* IDL: uint32 llh_bitmap[2024]; */
6939 /* IDL: struct llog_rec_tail { */
6940 /* IDL: } llh_tail; */
6944 lustre_dissect_element_llog_log_hdr_llh_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6946 offset=lustre_dissect_struct_llog_rec_hdr(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_hdr);
6951 lustre_dissect_element_llog_log_hdr_llh_timestamp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6954 ns.secs = tvb_get_letohl(tvb,offset);
6956 proto_tree_add_time(tree, hf_lustre_llog_log_hdr_llh_timestamp, tvb, offset, 8, &ns );
6962 lustre_dissect_element_llog_log_hdr_llh_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6964 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_count);
6970 lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6972 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap_offset);
6978 lustre_dissect_element_llog_log_hdr_llh_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
6980 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_size);
6988 lustre_dissect_element_llog_log_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
6990 proto_item *item = NULL;
6991 proto_tree *tree = NULL;
6994 item = proto_tree_add_item(parent_tree,hf_index, tvb, offset, 4, TRUE);
6995 tree = proto_item_add_subtree(item, ett_lustre_llog_log_llh_flags);
6997 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_zap_when_empty);
6998 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_cat);
6999 dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_hdr_llh_flag_is_play);
7006 lustre_dissect_element_llog_log_hdr_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7008 // offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7009 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_flags);
7014 lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7016 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_cat_idx);
7022 lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7024 offset=lustre_dissect_struct_obd_uuid(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tgtuuid);
7029 lustre_dissect_element_llog_log_hdr_llh_reserved_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7031 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_reserved);
7037 lustre_dissect_element_llog_log_hdr_llh_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7040 for (i = 0; i < 1; i++)
7041 offset=lustre_dissect_element_llog_log_hdr_llh_reserved_(tvb, offset, pinfo, tree);
7047 lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7049 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_log_hdr_llh_bitmap);
7056 lustre_dissect_element_llog_log_hdr_llh_bitmap(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7059 for (i = 0; i < 2024; i++)
7060 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_(tvb, offset, pinfo, tree);
7068 lustre_dissect_element_llog_log_hdr_llh_tail(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7070 offset=lustre_dissect_struct_llog_rec_tail(tvb,offset,pinfo,tree,hf_lustre_llog_log_hdr_llh_tail);
7075 lustre_dissect_struct_llog_log_hdr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7077 proto_item *item = NULL;
7078 proto_tree *tree = NULL;
7086 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7087 tree = proto_item_add_subtree(item, ett_lustre_llog_log_hdr);
7090 offset=lustre_dissect_element_llog_log_hdr_llh_hdr(tvb, offset, pinfo, tree);
7092 offset=lustre_dissect_element_llog_log_hdr_llh_timestamp(tvb, offset, pinfo, tree);
7094 offset=lustre_dissect_element_llog_log_hdr_llh_count(tvb, offset, pinfo, tree);
7096 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap_offset(tvb, offset, pinfo, tree);
7098 offset=lustre_dissect_element_llog_log_hdr_llh_size(tvb, offset, pinfo, tree);
7100 offset=lustre_dissect_element_llog_log_hdr_llh_flags(tvb, offset, pinfo, tree);
7102 offset=lustre_dissect_element_llog_log_hdr_llh_cat_idx(tvb, offset, pinfo, tree);
7104 offset=lustre_dissect_element_llog_log_hdr_llh_tgtuuid(tvb, offset, pinfo, tree);
7106 offset=lustre_dissect_element_llog_log_hdr_llh_reserved(tvb, offset, pinfo, tree);
7108 offset=lustre_dissect_element_llog_log_hdr_llh_bitmap(tvb, offset, pinfo, tree);
7110 offset=lustre_dissect_element_llog_log_hdr_llh_tail(tvb, offset, pinfo, tree);
7113 proto_item_set_len(item, offset-old_offset);
7121 /* IDL: struct llog_cookie { */
7122 /* IDL: struct llog_logid { */
7123 /* IDL: } lgc_lgl; */
7124 /* IDL: uint32 lgc_subsys; */
7125 /* IDL: uint32 lgc_index; */
7126 /* IDL: uint32 lgc_padding; */
7130 lustre_dissect_element_llog_cookie_lgc_lgl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7132 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llog_cookie_lgc_lgl);
7137 lustre_dissect_element_llog_cookie_lgc_subsys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7139 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_subsys);
7145 lustre_dissect_element_llog_cookie_lgc_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7147 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_index);
7153 lustre_dissect_element_llog_cookie_lgc_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7155 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llog_cookie_lgc_padding);
7161 lustre_dissect_struct_llog_cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7163 proto_item *item = NULL;
7164 proto_tree *tree = NULL;
7172 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7173 tree = proto_item_add_subtree(item, ett_lustre_llog_cookie);
7176 offset=lustre_dissect_element_llog_cookie_lgc_lgl(tvb, offset, pinfo, tree);
7178 offset=lustre_dissect_element_llog_cookie_lgc_subsys(tvb, offset, pinfo, tree);
7180 offset=lustre_dissect_element_llog_cookie_lgc_index(tvb, offset, pinfo, tree);
7182 offset=lustre_dissect_element_llog_cookie_lgc_padding(tvb, offset, pinfo, tree);
7185 proto_item_set_len(item, offset-old_offset);
7192 /* IDL: struct llogd_body { */
7193 /* IDL: struct llog_logid { */
7194 /* IDL: } lgd_logid; */
7195 /* IDL: uint32 lgd_ctxt_idx; */
7196 /* IDL: uint32 lgd_llh_flags; */
7197 /* IDL: uint32 lgd_index; */
7198 /* IDL: uint32 lgd_saved_index; */
7199 /* IDL: uint32 lgd_len; */
7200 /* IDL: uint64 lgd_cur_offset; */
7204 lustre_dissect_element_llogd_body_lgd_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7206 offset=lustre_dissect_struct_llog_logid(tvb,offset,pinfo,tree,hf_lustre_llogd_body_lgd_logid);
7211 lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7213 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_ctxt_idx);
7219 lustre_dissect_element_llogd_body_lgd_llh_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7221 //offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7223 offset=lustre_dissect_element_llog_log_llh_flags(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_llh_flags);
7229 lustre_dissect_element_llogd_body_lgd_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7231 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_index);
7237 lustre_dissect_element_llogd_body_lgd_saved_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7239 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_saved_index);
7245 lustre_dissect_element_llogd_body_lgd_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7247 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_len);
7253 lustre_dissect_element_llogd_body_lgd_cur_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7255 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_llogd_body_lgd_cur_offset);
7261 lustre_dissect_struct_llogd_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7263 proto_item *item = NULL;
7264 proto_tree *tree = NULL;
7272 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7273 tree = proto_item_add_subtree(item, ett_lustre_llogd_body);
7276 offset=lustre_dissect_element_llogd_body_lgd_logid(tvb, offset, pinfo, tree);
7278 offset=lustre_dissect_element_llogd_body_lgd_ctxt_idx(tvb, offset, pinfo, tree);
7280 offset=lustre_dissect_element_llogd_body_lgd_llh_flags(tvb, offset, pinfo, tree);
7282 offset=lustre_dissect_element_llogd_body_lgd_index(tvb, offset, pinfo, tree);
7284 offset=lustre_dissect_element_llogd_body_lgd_saved_index(tvb, offset, pinfo, tree);
7286 offset=lustre_dissect_element_llogd_body_lgd_len(tvb, offset, pinfo, tree);
7288 offset=lustre_dissect_element_llogd_body_lgd_cur_offset(tvb, offset, pinfo, tree);
7291 proto_item_set_len(item, offset-old_offset);
7297 /* TODO : find when this Structure appear on the wire */
7298 /* IDL: struct llogd_conn_body { */
7299 /* IDL: struct llog_gen { */
7300 /* IDL: } lgdc_gen; */
7301 /* IDL: struct llog_logid { */
7302 /* IDL: } lgdc_logid; */
7303 /* IDL: uint32 lgdc_ctxt_idx; */
7307 lustre_dissect_element_llogd_conn_body_lgdc_gen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7309 //offset=lustre_dissect_struct_HASH(0x85e6038)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_gen);
7314 lustre_dissect_element_llogd_conn_body_lgdc_logid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7316 //offset=lustre_dissect_struct_HASH(0x85e6188)(tvb,offset,pinfo,tree,hf_lustre_llogd_conn_body_lgdc_logid);
7321 lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7323 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_llogd_conn_body_lgdc_ctxt_idx);
7329 lustre_dissect_struct_llogd_conn_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7331 proto_item *item = NULL;
7332 proto_tree *tree = NULL;
7340 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7341 tree = proto_item_add_subtree(item, ett_lustre_llogd_conn_body);
7344 offset=lustre_dissect_element_llogd_conn_body_lgdc_gen(tvb, offset, pinfo, tree);
7346 offset=lustre_dissect_element_llogd_conn_body_lgdc_logid(tvb, offset, pinfo, tree);
7348 offset=lustre_dissect_element_llogd_conn_body_lgdc_ctxt_idx(tvb, offset, pinfo, tree);
7351 proto_item_set_len(item, offset-old_offset);
7356 /* IDL: struct obdo { */
7357 /* IDL: uint64 o_valid; */
7358 /* IDL: uint64 o_id; */
7359 /* IDL: uint64 o_seq; */
7360 /* IDL: uint64 o_parent_seq; */
7361 /* IDL: uint64 o_size; */
7362 /* IDL: uint64 o_mtime; */
7363 /* IDL: uint64 o_atime; */
7364 /* IDL: uint64 o_ctime; */
7365 /* IDL: uint64 o_blocks; */
7366 /* IDL: uint64 o_grant; */
7367 /* IDL: uint32 o_blksize; */
7368 /* IDL: uint32 o_mode; */
7369 /* IDL: uint32 o_uid; */
7370 /* IDL: uint32 o_gid; */
7371 /* IDL: uint32 o_flags; */
7372 /* IDL: uint32 o_nlink; */
7373 /* IDL: uint32 o_parent_oid; */
7374 /* IDL: uint32 o_misc; */
7375 /* IDL: uint64 o_ioepoch; */
7376 /* IDL: uint32 o_stripe_idx; */
7377 /* IDL: uint32 o_parent_ver; */
7378 /* IDL: struct lustre_handle { */
7379 /* IDL: } o_handle; */
7380 /* IDL: struct llog_cookie { */
7381 /* IDL: } o_lcookie; */
7382 /* IDL: uint64 o_padding_2; */
7383 /* IDL: uint64 o_padding_3; */
7384 /* IDL: uint64 o_padding_4; */
7385 /* IDL: uint64 o_padding_5; */
7386 /* IDL: uint64 o_padding_6; */
7390 lustre_dissect_element_obdo_o_valid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7392 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_valid);
7398 lustre_dissect_element_obdo_o_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7400 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_id);
7406 lustre_dissect_element_obdo_o_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7408 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_seq);
7414 lustre_dissect_element_obdo_o_parent_seq(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7416 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_seq);
7422 lustre_dissect_element_obdo_o_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7424 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_size);
7430 lustre_dissect_element_obdo_o_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7434 ns.secs = tvb_get_letohl(tvb,offset);
7436 proto_tree_add_time(tree, hf_lustre_obdo_o_mtime, tvb, offset, 8, &ns );
7442 lustre_dissect_element_obdo_o_atime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7446 ns.secs = tvb_get_letohl(tvb,offset);
7448 proto_tree_add_time(tree, hf_lustre_obdo_o_atime, tvb, offset, 8, &ns );
7455 lustre_dissect_element_obdo_o_ctime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7459 ns.secs = tvb_get_letohl(tvb,offset);
7461 proto_tree_add_time(tree, hf_lustre_obdo_o_ctime, tvb, offset, 8, &ns );
7467 lustre_dissect_element_obdo_o_blocks(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7469 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blocks);
7475 lustre_dissect_element_obdo_o_grant(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7477 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_grant);
7483 lustre_dissect_element_obdo_o_blksize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7485 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_blksize);
7491 lustre_dissect_element_obdo_o_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7493 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_mode);
7499 lustre_dissect_element_obdo_o_uid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7501 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_uid);
7507 lustre_dissect_element_obdo_o_gid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7509 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_gid);
7515 lustre_dissect_element_obdo_o_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7517 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_flags);
7518 /* TODO rajouter ça , faire une fonction générique qui s'occupe de tous les flags d'un tableau. */
7520 /*0x00000001 : "OBD_FL_INLINEDATA",*/
7521 /*0x00000002 : "OBD_FL_OBDMDEXISTS",*/
7522 /*0x00000004 : "OBD_FL_DELORPHAN",*/
7523 /*0x00000008 : "OBD_FL_NORPC",*/
7524 /*0x00000010 : "OBD_FL_IDONLY",*/
7525 /*0x00000020 : "OBD_FL_RECREATE_OBJS",*/
7526 /*0x00000040 : "OBD_FL_DEBUG_CHECK",*/
7527 /*0x00000100 : "OBD_FL_NO_USRQUOTA",*/
7528 /*0x00000200 : "OBD_FL_NO_GRPQUOTA",*/
7529 /*0x00000400 : "OBD_FL_CREATE_CROW",*/
7530 /*0x00000800 : "OBD_FL_SRVLOCK",*/
7536 lustre_dissect_element_obdo_o_nlink(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7538 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_nlink);
7544 lustre_dissect_element_obdo_o_parent_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7546 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_oid);
7552 lustre_dissect_element_obdo_o_misc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7554 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_misc);
7560 lustre_dissect_element_obdo_o_ioepoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7562 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_ioepoch);
7568 lustre_dissect_element_obdo_o_stripe_idx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7570 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_obdo_o_stripe_idx);
7576 lustre_dissect_element_obdo_o_parent_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7578 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_parent_ver);
7584 lustre_dissect_element_obdo_o_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7586 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_handle);
7591 lustre_dissect_element_obdo_o_lcookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7593 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_obdo_o_lcookie);
7598 lustre_dissect_element_obdo_o_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7600 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_2);
7606 lustre_dissect_element_obdo_o_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7608 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_3);
7614 lustre_dissect_element_obdo_o_padding_4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7616 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_4);
7622 lustre_dissect_element_obdo_o_padding_5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7624 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_5);
7630 lustre_dissect_element_obdo_o_padding_6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7632 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_obdo_o_padding_6);
7638 lustre_dissect_struct_obdo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7640 proto_item *item = NULL;
7641 proto_tree *tree = NULL;
7649 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7650 tree = proto_item_add_subtree(item, ett_lustre_obdo);
7653 offset=lustre_dissect_element_obdo_o_valid(tvb, offset, pinfo, tree);
7655 offset=lustre_dissect_element_obdo_o_id(tvb, offset, pinfo, tree);
7657 offset=lustre_dissect_element_obdo_o_seq(tvb, offset, pinfo, tree);
7659 offset=lustre_dissect_element_obdo_o_parent_seq(tvb, offset, pinfo, tree);
7661 offset=lustre_dissect_element_obdo_o_size(tvb, offset, pinfo, tree);
7663 offset=lustre_dissect_element_obdo_o_mtime(tvb, offset, pinfo, tree);
7665 offset=lustre_dissect_element_obdo_o_atime(tvb, offset, pinfo, tree);
7667 offset=lustre_dissect_element_obdo_o_ctime(tvb, offset, pinfo, tree);
7669 offset=lustre_dissect_element_obdo_o_blocks(tvb, offset, pinfo, tree);
7671 offset=lustre_dissect_element_obdo_o_grant(tvb, offset, pinfo, tree);
7673 offset=lustre_dissect_element_obdo_o_blksize(tvb, offset, pinfo, tree);
7675 offset=lustre_dissect_element_obdo_o_mode(tvb, offset, pinfo, tree);
7677 offset=lustre_dissect_element_obdo_o_uid(tvb, offset, pinfo, tree);
7679 offset=lustre_dissect_element_obdo_o_gid(tvb, offset, pinfo, tree);
7681 offset=lustre_dissect_element_obdo_o_flags(tvb, offset, pinfo, tree);
7683 offset=lustre_dissect_element_obdo_o_nlink(tvb, offset, pinfo, tree);
7685 offset=lustre_dissect_element_obdo_o_parent_oid(tvb, offset, pinfo, tree);
7687 offset=lustre_dissect_element_obdo_o_misc(tvb, offset, pinfo, tree);
7689 offset=lustre_dissect_element_obdo_o_ioepoch(tvb, offset, pinfo, tree);
7691 offset=lustre_dissect_element_obdo_o_stripe_idx(tvb, offset, pinfo, tree);
7693 offset=lustre_dissect_element_obdo_o_parent_ver(tvb, offset, pinfo, tree);
7695 offset=lustre_dissect_element_obdo_o_handle(tvb, offset, pinfo, tree);
7697 offset=lustre_dissect_element_obdo_o_lcookie(tvb, offset, pinfo, tree);
7699 offset=lustre_dissect_element_obdo_o_padding_2(tvb, offset, pinfo, tree);
7701 offset=lustre_dissect_element_obdo_o_padding_3(tvb, offset, pinfo, tree);
7703 offset=lustre_dissect_element_obdo_o_padding_4(tvb, offset, pinfo, tree);
7705 offset=lustre_dissect_element_obdo_o_padding_5(tvb, offset, pinfo, tree);
7707 offset=lustre_dissect_element_obdo_o_padding_6(tvb, offset, pinfo, tree);
7710 proto_item_set_len(item, offset-old_offset);
7717 /* IDL: struct ost_body { */
7718 /* IDL: struct obdo { */
7723 lustre_dissect_element_ost_body_oa(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7725 offset=lustre_dissect_struct_obdo(tvb,offset,pinfo,tree,hf_lustre_ost_body_oa);
7730 lustre_dissect_struct_ost_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7732 proto_item *item = NULL;
7733 proto_tree *tree = NULL;
7741 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7742 tree = proto_item_add_subtree(item, ett_lustre_ost_body);
7745 offset=lustre_dissect_element_ost_body_oa(tvb, offset, pinfo, tree);
7748 proto_item_set_len(item, offset-old_offset);
7754 /* TODO : find when this Structure appear on the wire */
7755 /* IDL: struct qunit_data { */
7756 /* IDL: uint32 qd_id; */
7757 /* IDL: uint32 qd_flags; */
7758 /* IDL: uint64 qd_count; */
7759 /* IDL: uint64 qd_qunit; */
7760 /* IDL: uint64 padding; */
7764 lustre_dissect_element_qunit_data_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7766 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_id);
7772 lustre_dissect_element_qunit_data_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7774 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_flags);
7780 lustre_dissect_element_qunit_data_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7782 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_count);
7788 lustre_dissect_element_qunit_data_qd_qunit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7790 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_qd_qunit);
7796 lustre_dissect_element_qunit_data_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7798 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_padding);
7804 lustre_dissect_struct_qunit_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7806 proto_item *item = NULL;
7807 proto_tree *tree = NULL;
7815 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7816 tree = proto_item_add_subtree(item, ett_lustre_qunit_data);
7819 offset=lustre_dissect_element_qunit_data_qd_id(tvb, offset, pinfo, tree);
7821 offset=lustre_dissect_element_qunit_data_qd_flags(tvb, offset, pinfo, tree);
7823 offset=lustre_dissect_element_qunit_data_qd_count(tvb, offset, pinfo, tree);
7825 offset=lustre_dissect_element_qunit_data_qd_qunit(tvb, offset, pinfo, tree);
7827 offset=lustre_dissect_element_qunit_data_padding(tvb, offset, pinfo, tree);
7830 proto_item_set_len(item, offset-old_offset);
7835 /* TODO : find when this Structure appear on the wire */
7836 /* IDL: struct qunit_data_old2 { */
7837 /* IDL: uint32 qd_id; */
7838 /* IDL: uint32 qd_flags; */
7839 /* IDL: uint64 qd_count; */
7843 lustre_dissect_element_qunit_data_old2_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7845 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_id);
7851 lustre_dissect_element_qunit_data_old2_qd_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7853 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_flags);
7859 lustre_dissect_element_qunit_data_old2_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7861 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old2_qd_count);
7867 lustre_dissect_struct_qunit_data_old2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7869 proto_item *item = NULL;
7870 proto_tree *tree = NULL;
7878 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7879 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old2);
7882 offset=lustre_dissect_element_qunit_data_old2_qd_id(tvb, offset, pinfo, tree);
7884 offset=lustre_dissect_element_qunit_data_old2_qd_flags(tvb, offset, pinfo, tree);
7886 offset=lustre_dissect_element_qunit_data_old2_qd_count(tvb, offset, pinfo, tree);
7889 proto_item_set_len(item, offset-old_offset);
7894 /* TODO : find when this Structure appear on the wire */
7895 /* IDL: struct qunit_data_old { */
7896 /* IDL: uint32 qd_id; */
7897 /* IDL: uint32 qd_type; */
7898 /* IDL: uint32 qd_count; */
7899 /* IDL: uint32 qd_isblk; */
7903 lustre_dissect_element_qunit_data_old_qd_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7905 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_id);
7911 lustre_dissect_element_qunit_data_old_qd_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7913 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_type);
7919 lustre_dissect_element_qunit_data_old_qd_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7921 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_count);
7927 lustre_dissect_element_qunit_data_old_qd_isblk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
7929 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_qunit_data_old_qd_isblk);
7935 lustre_dissect_struct_qunit_data_old(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
7937 proto_item *item = NULL;
7938 proto_tree *tree = NULL;
7946 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
7947 tree = proto_item_add_subtree(item, ett_lustre_qunit_data_old);
7950 offset=lustre_dissect_element_qunit_data_old_qd_id(tvb, offset, pinfo, tree);
7952 offset=lustre_dissect_element_qunit_data_old_qd_type(tvb, offset, pinfo, tree);
7954 offset=lustre_dissect_element_qunit_data_old_qd_count(tvb, offset, pinfo, tree);
7956 offset=lustre_dissect_element_qunit_data_old_qd_isblk(tvb, offset, pinfo, tree);
7959 proto_item_set_len(item, offset-old_offset);
7965 /* ------------------------------------------------------------------------- */
7967 * the length of the string is the current buflen
7968 * @tvb the packet buff
7969 * @offset the current offset
7972 * @hf_index : the corresponding header field
7973 * @buf_num : the corresponding bufnumber of the string (we use it to
7974 * determine the string length), must respect : 0<bufnum<=bufmax_in_paquet
7977 lustre_dissect_element_string (tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
7979 proto_item *item = NULL;
7986 // if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb,
7987 // offset, -1, TRUE); // tree = proto_item_add_subtree(item,
7990 if(buf_num+1>LUSTRE_BUFCOUNT)
7993 string_len = tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF + 4 * buf_num) ; /* 4 because a buflen is on a guint32 */
7994 proto_tree_add_item(parent_tree, hf_index, tvb, offset, string_len, TRUE);
7996 display_info_fstr(parent_tree, pinfo->cinfo, COL_INFO, " filename : %s", tvb_get_string(tvb,offset,string_len) );
7999 proto_item_set_len(item, offset-old_offset);
8000 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* after a string we must be aligned to 8 bytes. */
8006 /* ------------------------------------------------------------------------- */
8007 /* dissect raw data */
8009 lustre_dissect_element_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_num)
8011 proto_item *item = NULL;
8017 if(buf_num+1>LUSTRE_BUFCOUNT)
8020 data_len = tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF + 4 * buf_num) ; /* 4 because a buflen is on a guint32 */
8021 proto_tree_add_item(parent_tree, hf_index, tvb, offset, data_len, TRUE);
8024 proto_item_set_len(item, offset-old_offset);
8025 offset=add_extra_padding(tvb,offset,pinfo,parent_tree); /* align on 8 bytes */
8029 /* ------------------------------------------------------------------------ */
8032 static int reint_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
8036 opcode = tvb_get_letohl(tvb,offset);
8040 /* [eadata][cookie_data][ldlm_request] */
8041 offset=lustre_dissect_struct_mdt_rec_setattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setattr);
8042 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8043 hf_lustre_ldlm_request) ;
8046 /* [rec_create][filename][tgt.. Ã 0 pour l'instant][ldlm_request] */
8047 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8048 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
8049 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+2); /* this string is all the time =="\0"*/
8050 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8051 hf_lustre_ldlm_request) ;
8054 /*[mdt_rec_link][filename][ldlm_req] */
8055 offset=lustre_dissect_struct_mdt_rec_link(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_link);
8056 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8057 hf_lustre_ldlm_request) ;
8058 /*TODO : need to be check*/
8060 case REINT_UNLINK : /* mds_unlink_unpack : [mdt_rec_unlink][filename][ldlm_req] */
8061 /* [mdt_rec_unlink][filename][ldlm_req][..]*/
8062 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink);
8063 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
8064 if ( (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF +2))) == 112) /* TODO : ugly .. but
8065 for now we have to do this */
8066 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8068 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8071 case REINT_RENAME : /*mds_rename_unpack : [mdt_rec_rename][filename source][filename target_name][ldlm_request] */
8072 offset=lustre_dissect_struct_mdt_rec_rename(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_rename);
8073 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_old_name, LUSTRE_REQ_REC_OFF+1);
8074 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_new_name, LUSTRE_REQ_REC_OFF+2);
8075 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8077 case REINT_OPEN : /* [rec_create][filename][eadata] */
8078 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8079 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_REQ_REC_OFF+1);
8080 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2); /* TODO : replace with hf_eadata */
8082 case REINT_SETXATTR :
8083 /* [eadata][cookie_data][ldlm_request] */
8084 offset=lustre_dissect_struct_mdt_rec_setxattr(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_setxattr);
8085 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree,
8086 hf_lustre_ldlm_request) ;
8097 /* dissect a connect message */
8099 lustre_dissect_generic_connect(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8101 /*TODO : add a cuuid and target uid */
8102 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8103 offset=lustre_dissect_struct_obd_uuid(tvb, offset, pinfo, tree, hf_lustre_obd_uuid);
8104 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_mdt_body_handle);
8105 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8110 lustre_ost_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8115 case OST_REPLY: /* obsolete so nothing */
8118 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8121 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8123 case OST_READ: /* [OST_BODY][obd_ioobj][niobuf_remote] for request, [OST_BODY] for reply */
8124 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8125 if(pb_type==PTL_RPC_MSG_REQUEST){
8126 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8127 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_niobuf_remote);
8131 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo,
8132 tree, hf_lustre_ost_body) ; /* [ost_body] in both case */
8133 if(pb_type==PTL_RPC_MSG_REQUEST)
8135 for (i=0;i<tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+ 4*(LUSTRE_REQ_REC_OFF+1))/24;i++)
8136 offset=lustre_dissect_struct_obd_ioobj(tvb, offset, pinfo, tree, hf_lustre_obd_ioobj);
8137 offset=lustre_dissect_struct_niobuf_remote(tvb,offset,pinfo, tree, hf_lustre_obd_ioobj);
8139 if(pb_type==PTL_RPC_MSG_REPLY) /* niocount *[uint32], but niocount is in request message, so
8140 we use the bufcount */
8142 for (i=0;i<tvb_get_letohl(tvb, LUSTRE_BUFCOUNT_OFF)-2;i++) /* -2 because we have already dissect 2 buffers : ptl + ost */
8143 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_nio);
8144 if (i & 1 ) /* if odd we add extra padding */
8145 offset=dissect_uint32(tvb, offset, pinfo, tree,
8146 hf_lustre_extra_padding);
8150 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8153 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8154 if(pb_type==PTL_RPC_MSG_REQUEST) /* [ost_body][-si buf- ldlm_request] */
8155 if ( (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF +1))) != 0)
8156 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ost_body);
8157 /* TODO : test that */
8160 if(pb_type==PTL_RPC_MSG_REQUEST) /* [key] */
8162 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key, LUSTRE_REQ_REC_OFF+1);
8164 if (pb_type==PTL_RPC_MSG_REPLY)
8166 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF); /* val */
8171 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8172 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8173 if (pb_type==PTL_RPC_MSG_REPLY)
8174 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8176 case OST_DISCONNECT: /* [nothing] */
8178 case OST_PUNCH: /* [ost_body] */
8179 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8181 case OST_OPEN: /* [nothing] in the code maybee obsolete */
8183 case OST_CLOSE: /* [nothing] in the code maybee obsolete */
8185 case OST_STATFS: /* [obd_statfs] check that : TODO */
8186 if(LUSTRE_BUFCOUNT>=2)
8187 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8190 /*[ost_body] in both case */
8191 offset=lustre_dissect_struct_ost_body(tvb, offset, pinfo, tree, hf_lustre_ost_body) ;
8194 if(pb_type==PTL_RPC_MSG_REQUEST)
8196 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
8197 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8199 /* if Key = "evict_by_nid" --> need to be process.. TODO */
8201 case OST_QUOTACHECK:
8202 if(pb_type==PTL_RPC_MSG_REQUEST)
8203 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8204 /* nothing in reply */
8207 /*[obd_quotactl in both case]*/
8208 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8209 case OST_QUOTA_ADJUST_QUNIT:
8210 /* [quota_adjust_qunit] in both case ? */
8211 offset=lustre_dissect_struct_quota_adjust_qunit(tvb, offset, pinfo, tree, hf_lustre_quota_adjust_qunit) ;
8218 lustre_mds_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8221 case MDS_DISCONNECT:
8226 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8229 if(pb_type==PTL_RPC_MSG_REQUEST)
8231 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8232 /*if(reply) : [nothing]*/
8235 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8236 if(pb_type==PTL_RPC_MSG_REQUEST)
8237 /*[string_xattr_name]*/
8238 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_name, LUSTRE_REQ_REC_OFF+1);
8239 if(pb_type==PTL_RPC_MSG_REPLY)
8241 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+1);
8244 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8245 /* TODO [ something ??? ] */
8247 case MDS_GETATTR_NAME:
8248 if(pb_type==PTL_RPC_MSG_REQUEST)
8250 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8251 /*[nothing in reply]*/
8253 case MDS_DONE_WRITING:
8255 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8257 case MDS_PIN: /* repbody.. */
8259 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8263 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8266 case MDS_CLOSE: /* TODO : check the corresponding structure in lustre code */
8267 if(pb_type==PTL_RPC_MSG_REQUEST)
8268 { /* [mdt_body] [lov_mds_md][log_cookie] */
8269 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8270 if(LUSTRE_BUFCOUNT>=3)
8271 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1);
8272 if(LUSTRE_BUFCOUNT>=4)
8273 if( tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0)
8274 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8276 if(pb_type==PTL_RPC_MSG_REPLY)
8277 { /* [mdt_body][md][cookie] TODO : check that (reread the code about shrink in lustre) */
8278 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8279 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0)
8280 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_mds_md_data,LUSTRE_REQ_REC_OFF+1); /* key */
8281 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0)
8282 offset=lustre_dissect_struct_llog_cookie(tvb,offset,pinfo,tree,hf_lustre_llog_cookie);
8287 if(pb_type==PTL_RPC_MSG_REPLY)
8289 offset=lustre_dissect_struct_obd_statfs(tvb, offset, pinfo, tree, hf_lustre_obd_statfs) ;
8290 /*in request : [nothing]*/
8294 /* [mdt_body] but with some different interpration, need to modify the hf : TODO */
8295 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8299 /* the structure depend on the intent_opcode */
8300 if(pb_type==PTL_RPC_MSG_REQUEST)
8301 offset=reint_opcode_process(tvb, offset, pinfo, tree);
8302 if(pb_type==PTL_RPC_MSG_REPLY)
8304 /*[mdt_body][??][llog_logid_rec] */
8305 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8306 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0){
8307 /* OPEN, RENAME, and UNLINK */
8308 if(tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+1)) > 0){ /* rec_unlink or rec_rename */
8309 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
8310 LUSTRE_REQ_REC_OFF+1); // replace by eadata TODO TODO //
8311 if(tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*(LUSTRE_REQ_REC_OFF+2)) > 0) /* with unlink or rename we have 4 buffers handler.c line 1691*/
8312 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8313 hf_lustre_mds_xattr_eadata, LUSTRE_REQ_REC_OFF+2); // replace withe eadata TODO TODO //
8320 if(pb_type==PTL_RPC_MSG_REQUEST){
8322 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_key,LUSTRE_REQ_REC_OFF); /* key */
8323 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_ost_val, LUSTRE_REQ_REC_OFF+1); /* val */
8324 //offset=add_extra_padding(tvb,offset,pinfo,tree);
8326 /*nothing en reply*/
8328 case MDS_QUOTACHECK:
8329 /* [obd_quotactl] */
8330 if(pb_type==PTL_RPC_MSG_REQUEST)
8331 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8334 /* [obd_quotactl] in both case*/
8335 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl) ;
8338 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8339 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8340 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
8341 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8353 lustre_ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8359 /*[ldlm_request] if we have one more buffer it's [intent_opcode] and the opcode give us the
8360 * corresponding intent structure [intent] */
8361 if(pb_type==PTL_RPC_MSG_REQUEST)
8363 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8364 if (LUSTRE_BUFCOUNT>=3)
8365 offset=lustre_dissect_struct_ldlm_intent(tvb, offset, pinfo, tree, hf_lustre_ldlm_intent);
8367 if(pb_type==PTL_RPC_MSG_REPLY)
8372 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply,&ldlm_type) ;
8373 if(LUSTRE_BUFCOUNT>2 && (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*2) == 40))
8374 /* TODO :this code need to be check and test, the lustre corresponding code is'nt explicit, so
8375 * not sure to have this buffer, but in example it works fine
8377 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8379 if(LUSTRE_BUFCOUNT>2)
8381 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8382 /*g_print("buflen_off+4*3 = %d", tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*LUSTRE_DLM_INTENT_REC_OFF));*/
8383 if(LUSTRE_BUFCOUNT>2 &&
8384 (tvb_get_letohl(tvb,LUSTRE_BUFLEN_OFF+4*LUSTRE_DLM_INTENT_REC_OFF) > 0))
8386 magic=tvb_get_letohl(tvb, offset); /* TODO : replace this with a macro */
8390 offset=lustre_dissect_struct_lov_mds_md_v1(tvb,offset,pinfo,tree,hf_lustre_lov_mds_md_v1);
8393 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree,
8394 hf_lustre_extra_padding, LUSTRE_DLM_INTENT_REC_OFF);
8403 if(pb_type==PTL_RPC_MSG_REQUEST)
8405 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8406 if(pb_type==PTL_RPC_MSG_REPLY)
8408 offset=lustre_dissect_struct_ldlm_reply(tvb, offset, pinfo, tree, hf_lustre_ldlm_reply, NULL) ;
8412 if(pb_type==PTL_RPC_MSG_REQUEST)
8414 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8415 /*[nothing en reply]*/
8418 case LDLM_BL_CALLBACK: /* TODO : check the corresponding code in lustre*/
8419 if(pb_type==PTL_RPC_MSG_REQUEST)
8421 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8424 case LDLM_CP_CALLBACK:
8425 if(pb_type==PTL_RPC_MSG_REQUEST){
8426 /*[ldlm_request] if the third buffer exist we have [lvb data] so it's [ost_lvb] : TODO :
8428 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8429 if(LUSTRE_BUFCOUNT>=3)
8430 offset=lustre_dissect_struct_ost_lvb(tvb,offset,pinfo,tree,hf_lustre_ost_lvb);
8432 /*reply : [nothing] */
8435 case LDLM_GL_CALLBACK:
8436 if(pb_type==PTL_RPC_MSG_REQUEST)
8438 offset=lustre_dissect_struct_ldlm_request(tvb, offset, pinfo, tree, hf_lustre_ldlm_request) ;
8440 if(pb_type==PTL_RPC_MSG_REPLY)
8441 /*reply : [ost_lvb] <-- need to be check*/
8442 offset=lustre_dissect_struct_ost_lvb(tvb, offset, pinfo, tree, hf_lustre_ost_lvb);
8452 lustre_mgs_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8456 if (pb_type==PTL_RPC_MSG_REQUEST) /* [targetuuid][clientuuid][lustre_handle][obd_connect_data] */
8457 offset=lustre_dissect_generic_connect(tvb,offset,pinfo,tree);
8458 if (pb_type==PTL_RPC_MSG_REPLY) /*[obd_connect_data]*/
8459 offset=lustre_dissect_struct_obd_connect_data(tvb,offset,pinfo,tree,hf_lustre_obd_connect_data);
8461 case MGS_DISCONNECT :
8464 case MGS_EXCEPTION : /* node died, etc. */
8467 case MGS_TARGET_REG:
8468 /*[mgs_target_info], mgs_handler.c mgs_handle_target_reg() called whenever a target startup*/
8469 offset=lustre_dissect_struct_mgs_target_info(tvb, offset, pinfo, tree, hf_lustre_mgs_target_info);
8471 case MGS_TARGET_DEL:
8475 /*[mgs_send_param], mgs_set_info_rpc()*/
8476 offset=lustre_dissect_struct_mgs_send_param(tvb,offset,pinfo,tree,hf_lustre_mgs_send_param);
8485 lustre_odb_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8491 case OBD_LOG_CANCEL:
8494 case OBD_QC_CALLBACK:
8495 if(pb_type==PTL_RPC_MSG_REQUEST)
8496 offset=lustre_dissect_struct_obd_quotactl(tvb, offset, pinfo, tree, hf_lustre_obd_quotactl);
8497 /*if (request) : [nothing]*/
8506 lustre_llog_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8509 case LLOG_ORIGIN_HANDLE_CREATE : /* in handler.c */
8510 /*[llogd_body] (reply and request)*/
8511 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8512 if(pb_type==PTL_RPC_MSG_REQUEST) /*[filename] */
8513 if (LUSTRE_BUFCOUNT>2)
8514 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_name,
8515 LUSTRE_REQ_REC_OFF+1);
8517 case LLOG_ORIGIN_HANDLE_NEXT_BLOCK :/* in handler.c */
8518 /* [llogd_body][???]
8519 * the size of second buf is LLOG_CHKUNK_SIZE, so it's maybee only bulk data */
8520 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8521 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8522 LUSTRE_REQ_REC_OFF + 1 );
8524 case LLOG_ORIGIN_HANDLE_READ_HEADER:/* in handler.c */
8525 if(pb_type==PTL_RPC_MSG_REQUEST){
8526 /* [llogd_body][llog_log_hdr] */
8527 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8528 if(LUSTRE_BUFCOUNT>2)
8529 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8530 hf_lustre_llogd_log_hdr);
8532 if(pb_type==PTL_RPC_MSG_REPLY) /* [llog_log_hdr] */
8533 offset=lustre_dissect_struct_llog_log_hdr(tvb, offset, pinfo, tree,
8534 hf_lustre_llogd_log_hdr);
8536 case LLOG_ORIGIN_HANDLE_WRITE_REC : /* I think this is obsolete */
8539 case LLOG_ORIGIN_HANDLE_CLOSE :/* handler.c */
8542 case LLOG_ORIGIN_CONNECT : /* ost_handler.c */
8544 case LLOG_CATINFO : /*in handler.c */
8545 if(pb_type==PTL_RPC_MSG_REQUEST){
8546 /* [keyword][if keyword=config [char*] else [nothing]] */
8547 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_keyword,
8548 LUSTRE_REQ_REC_OFF);
8549 if(strcmp(tvb_get_string(tvb, LUSTRE_REQ_REC_OFF, tvb_get_letohl(tvb,
8550 LUSTRE_BUFLEN_OFF+4*LUSTRE_REQ_REC_OFF)), "config")==0) /* if(keyword ==
8552 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_llogd_client,
8553 LUSTRE_REQ_REC_OFF+1);
8555 if(pb_type==PTL_RPC_MSG_REPLY)
8556 /*[buf] sizeof = llog_chunk_size*/
8557 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8558 LUSTRE_REQ_REC_OFF + 1 );
8559 /* TODO TODO : check if it's note a catid */
8561 case LLOG_ORIGIN_HANDLE_PREV_BLOCK : /* in handler.c */
8562 /* [llogd_body] in both case */
8563 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8564 if(pb_type==PTL_RPC_MSG_REPLY)
8565 /*[buf] size of llog_chunk_size*/
8566 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_llogd_chunk,
8567 LUSTRE_REQ_REC_OFF + 1 );
8569 case LLOG_ORIGIN_HANDLE_DESTROY : /* in handler.c */
8570 /*[llogd_body] in both case*/
8571 offset=lustre_dissect_struct_llogd_body(tvb, offset, pinfo, tree, hf_lustre_llogd_body);
8580 /* process lustre opcode :
8581 check if opcode is in range_opcode, and call the corresponding opcode process function */
8583 lustre_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint32 opc _U_, guint32 pb_type)
8585 if (opc <= OST_LAST_OPC) /* OST opcodes */
8586 offset=lustre_ost_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8588 if ( (opc >= MDS_FIRST_OPC) && (opc < MDS_LAST_OPC )) /* MDS opcodes */
8589 offset=lustre_mds_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8591 if ( (opc >= LDLM_FIRST_OPC) && (opc < LDLM_LAST_OPC) ) /*LDLM Opcodes*/
8592 offset=lustre_ldlm_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8594 if( (opc>= MGS_FIRST_OPC) && (opc <= MGS_LAST_OPC)) /* MGS Opcodes */
8595 offset=lustre_mgs_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8597 if( (opc>= OBD_FIRST_OPC) && (opc<=OBD_LAST_OPC)) /* ODB Opcodes */
8598 offset=lustre_odb_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8600 if( (opc>=LLOG_FIRST_OPC) && (opc<=LLOG_LAST_OPC)) /* LLOG Opcodes */
8601 offset=lustre_llog_opcode_process( tvb , offset ,pinfo , tree , opc , pb_type) ;
8606 /* ----------------------------------------------- */
8607 /* add an extra padding to be aligned to 8bytes */
8609 add_extra_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_)
8611 guint32 padding_len;
8613 padding_len = (8- offset%8)%8;
8615 proto_tree_add_item(tree, hf_lustre_extra_padding , tvb, offset, padding_len, TRUE);
8616 offset+=padding_len;
8620 /* ----------------------------------------------- */
8623 ldlm_opcode_process(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree * tree _U_, guint64 intent_opc _U_)
8625 /* all corresponding code is in mdc_locks.c in function mdc_enqueue() */
8626 /* if 0x0003 we have CREAT + OPEN
8628 if (intent_opc & IT_OPEN) {
8629 /* mdc_intent_open_pack(), d'où [opcode][mdc_rec_create][name][eada] */
8630 offset=lustre_dissect_struct_mdt_rec_create(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_create);
8631 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8632 offset=lustre_dissect_element_data(tvb, offset, pinfo, tree, hf_lustre_mds_xattr_eadata,
8633 LUSTRE_DLM_INTENT_REC_OFF+2); /* TODO : replace hf with eada hf */
8636 if (intent_opc & IT_UNLINK){
8637 /* mdc_intent_unlink_pack(), d'où [opcode][mdt_rec_unlink][name] */
8638 offset=lustre_dissect_struct_mdt_rec_unlink(tvb, offset, pinfo, tree, hf_lustre_mdt_rec_unlink);
8639 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8641 if (intent_opc & IT_GETATTR){
8642 /* mdc_intent_lookup_pack, d'où [mdt_body][name] */
8643 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8644 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8647 if (intent_opc & IT_LOOKUP){
8648 /* mdc_intent_lookup_pack, d'où [mdt_body][name] */
8649 offset=lustre_dissect_struct_mdt_body(tvb, offset, pinfo, tree, hf_lustre_mdt_body) ;
8650 offset=lustre_dissect_element_string(tvb, offset, pinfo, tree, hf_lustre_reint_name, LUSTRE_DLM_INTENT_REC_OFF+1);
8657 /* ----------------------------------------------- */
8658 /* function to test if the packet is entirely dissected add BUG in PROTOCOL COL when it's not*/
8660 sanity_check(tvbuff_t *tvb, packet_info *pinfo, guint32 val_offset _U_)
8662 guint32 magic_number ;
8663 guint32 somme_buflen = 0 ;
8666 magic_number = tvb_get_letohl(tvb, 8);
8669 for (i=0;i<LUSTRE_BUFCOUNT;i++)
8670 somme_buflen += tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF +
8671 4 * i ) + (8- tvb_get_letohl(tvb, LUSTRE_BUFLEN_OFF+4 * i)%8)%8; /* we add the
8679 if(val_offset!=somme_buflen){
8680 /*g_print("somme_buflen=%d, val_offset = %d \n",somme_buflen,val_offset);*/
8681 if (check_col(pinfo->cinfo, COL_INFO)) {
8682 col_append_str(pinfo->cinfo, COL_PROTOCOL, "BUG");
8689 /* IDL: struct lustre_msg_v1 { */
8690 /* IDL: struct lustre_handle { */
8691 /* IDL: } lm_handle; */
8692 /* IDL: uint32 lm_magic; */
8693 /* IDL: uint32 lm_type; */
8694 /* IDL: uint32 lm_version; */
8695 /* IDL: uint32 lm_opc; */
8696 /* IDL: uint64 lm_last_xid; */
8697 /* IDL: uint64 lm_last_committed; */
8698 /* IDL: uint64 lm_transno; */
8699 /* IDL: uint32 lm_status; */
8700 /* IDL: uint32 lm_flags; */
8701 /* IDL: uint32 lm_conn_cnt; */
8702 /* IDL: uint32 lm_bufcount; */
8703 /* IDL: uint32 lm_buflens[0]; */
8708 lustre_dissect_element_msg_v1_lm_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8710 /*TODO : replace with a v1 handle*/
8711 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_lustre_msg_v1_lm_handle);
8716 lustre_dissect_element_msg_v1_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8718 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_magic);
8724 lustre_dissect_element_msg_v1_lm_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8726 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_type);
8732 lustre_dissect_element_msg_v1_lm_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8734 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_version);
8740 lustre_dissect_element_msg_v1_lm_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8742 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_opc);
8748 lustre_dissect_element_msg_v1_lm_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8750 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_xid);
8756 lustre_dissect_element_msg_v1_lm_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8758 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_last_committed);
8764 lustre_dissect_element_msg_v1_lm_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8766 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_transno);
8772 lustre_dissect_element_msg_v1_lm_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8774 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_status);
8780 lustre_dissect_element_msg_v1_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8782 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_flags);
8788 lustre_dissect_element_msg_v1_lm_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8790 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_conn_cnt);
8796 lustre_dissect_element_msg_v1_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8798 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_bufcount);
8804 lustre_dissect_element_msg_v1_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8806 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v1_lm_buflens);
8812 lustre_dissect_element_msg_v1_lm_buflens(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8815 gboolean extra_padding ;
8818 bufcount=tvb_get_letohl(tvb, offset-4); /* TODO : replace with a macro */
8820 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
8825 for (i=0;i<bufcount;i++) {
8826 offset=lustre_dissect_element_msg_v1_lm_buflens_(tvb, offset, pinfo, tree);
8830 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
8839 lustre_dissect_struct_msg_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
8841 proto_item *item = NULL;
8842 proto_tree *tree = NULL;
8844 guint32 opc ; /* opcode */
8845 guint32 pb_type; /* type : {request, reply, error} */
8851 // if (parent_tree) {
8852 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
8853 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v1);
8856 offset=lustre_dissect_element_msg_v1_lm_handle(tvb, offset, pinfo, tree);
8858 offset=lustre_dissect_element_msg_v1_lm_magic(tvb, offset, pinfo, tree);
8860 pb_type = tvb_get_letohl(tvb, offset);
8861 offset=lustre_dissect_element_msg_v1_lm_type(tvb, offset, pinfo, tree);
8863 offset=lustre_dissect_element_msg_v1_lm_version(tvb, offset, pinfo, tree);
8864 opc = tvb_get_letohl(tvb, offset);
8865 offset=lustre_dissect_element_msg_v1_lm_opc(tvb, offset, pinfo, tree);
8867 offset=lustre_dissect_element_msg_v1_lm_last_xid(tvb, offset, pinfo, tree);
8869 offset=lustre_dissect_element_msg_v1_lm_last_committed(tvb, offset, pinfo, tree);
8871 offset=lustre_dissect_element_msg_v1_lm_transno(tvb, offset, pinfo, tree);
8873 offset=lustre_dissect_element_msg_v1_lm_status(tvb, offset, pinfo, tree);
8875 offset=lustre_dissect_element_msg_v1_lm_flags(tvb, offset, pinfo, tree);
8877 offset=lustre_dissect_element_msg_v1_lm_conn_cnt(tvb, offset, pinfo, tree);
8879 offset=lustre_dissect_element_msg_v1_lm_bufcount(tvb, offset, pinfo, tree);
8881 offset=lustre_dissect_element_msg_v1_lm_buflens(tvb, offset, pinfo, tree);
8884 proto_item_set_len(item, offset-old_offset);
8886 /* display some nice infos */
8887 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
8888 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
8890 offset=lustre_opcode_process(tvb, offset, pinfo, tree, opc, pb_type);
8895 /* IDL: struct ptlrpc_body { */
8896 /* IDL: struct lustre_handle { */
8897 /* IDL: } pb_handle; */
8898 /* IDL: uint32 pb_type; */
8899 /* IDL: uint32 pb_version; */
8900 /* IDL: uint32 pb_opc; */
8901 /* IDL: uint32 pb_status; */
8902 /* IDL: uint64 pb_last_xid; */
8903 /* IDL: uint64 pb_last_seen; */
8904 /* IDL: uint64 pb_last_committed; */
8905 /* IDL: uint64 pb_transno; */
8906 /* IDL: uint32 pb_flags; */
8907 /* IDL: uint32 pb_op_flags; */
8908 /* IDL: uint32 pb_conn_cnt; */
8909 /* IDL: uint32 pb_timeout; */
8910 /* IDL: uint32 pb_service_time; */
8911 /* IDL: uint32 pb_limit; */
8912 /* IDL: uint64 pb_slv; */
8916 lustre_dissect_element_ptlrpc_body_pb_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8918 offset=lustre_dissect_struct_handle_cookie(tvb,offset,pinfo,tree,hf_lustre_ptlrpc_body_pb_handle);
8924 lustre_dissect_element_ptlrpc_body_pb_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8926 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_type);
8932 lustre_dissect_element_ptlrpc_body_pb_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8934 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_version);
8940 lustre_dissect_element_ptlrpc_body_pb_opc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8942 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_opc);
8948 lustre_dissect_element_ptlrpc_body_pb_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8950 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_status);
8956 lustre_dissect_element_ptlrpc_body_pb_last_xid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8958 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_xid);
8964 lustre_dissect_element_ptlrpc_body_pb_last_seen(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8966 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_seen);
8972 lustre_dissect_element_ptlrpc_body_pb_last_committed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8974 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_last_committed);
8980 lustre_dissect_element_ptlrpc_body_pb_transno(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8982 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_transno);
8988 lustre_dissect_element_ptlrpc_body_pb_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8990 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_flags);
8996 lustre_dissect_element_ptlrpc_body_pb_op_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
8998 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_op_flags);
9004 lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9006 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_conn_cnt);
9012 lustre_dissect_element_ptlrpc_body_pb_timeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9014 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_timeout);
9020 lustre_dissect_element_ptlrpc_body_pb_service_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9022 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_service_time);
9028 lustre_dissect_element_ptlrpc_body_pb_limit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9030 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_limit);
9036 lustre_dissect_element_ptlrpc_body_pb_slv(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9038 offset=dissect_uint64(tvb, offset, pinfo, tree, hf_lustre_ptlrpc_body_pb_slv);
9044 lustre_dissect_struct_ptlrpc_body(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_, guint32 buf_len _U_ )
9046 proto_item *item = NULL;
9047 proto_tree *tree = NULL;
9050 guint32 opc, pb_type;
9057 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9058 tree = proto_item_add_subtree(item, ett_lustre_ptlrpc_body);
9061 offset=lustre_dissect_element_ptlrpc_body_pb_handle(tvb, offset, pinfo, tree);
9063 pb_type = tvb_get_letohl(tvb, offset);
9064 //g_print("msg_v2_lm_type_offset = %d \n" , offset) ;
9066 offset=lustre_dissect_element_ptlrpc_body_pb_type(tvb, offset, pinfo, tree);
9068 offset=lustre_dissect_element_ptlrpc_body_pb_version(tvb, offset, pinfo, tree);
9070 // g_print("msg_v2_opcode_offset %d \n", offset);
9071 opc = tvb_get_letohl(tvb, offset);
9072 offset=lustre_dissect_element_ptlrpc_body_pb_opc(tvb, offset, pinfo, tree);
9074 offset=lustre_dissect_element_ptlrpc_body_pb_status(tvb, offset, pinfo, tree);
9076 offset=lustre_dissect_element_ptlrpc_body_pb_last_xid(tvb, offset, pinfo, tree);
9078 offset=lustre_dissect_element_ptlrpc_body_pb_last_seen(tvb, offset, pinfo, tree);
9080 offset=lustre_dissect_element_ptlrpc_body_pb_last_committed(tvb, offset, pinfo, tree);
9082 offset=lustre_dissect_element_ptlrpc_body_pb_transno(tvb, offset, pinfo, tree);
9084 offset=lustre_dissect_element_ptlrpc_body_pb_flags(tvb, offset, pinfo, tree);
9086 offset=lustre_dissect_element_ptlrpc_body_pb_op_flags(tvb, offset, pinfo, tree);
9088 offset=lustre_dissect_element_ptlrpc_body_pb_conn_cnt(tvb, offset, pinfo, tree);
9090 offset=lustre_dissect_element_ptlrpc_body_pb_timeout(tvb, offset, pinfo, tree);
9092 offset=lustre_dissect_element_ptlrpc_body_pb_service_time(tvb, offset, pinfo, tree);
9094 offset=lustre_dissect_element_ptlrpc_body_pb_limit(tvb, offset, pinfo, tree);
9096 offset=lustre_dissect_element_ptlrpc_body_pb_slv(tvb, offset, pinfo, tree);
9100 proto_item_set_len(item, offset-old_offset);
9102 /* display some nice infos */
9103 display_info_str(parent_tree, pinfo->cinfo, COL_INFO, val_to_str(opc, lustre_op_codes, "Unknown"));
9104 display_info_fstr(parent_tree, pinfo->cinfo,COL_INFO, " %s ", val_to_str(pb_type, lustre_LMTypes, "Unknown"));
9106 /* on utilise parent_tree pour bien distinguer les différents buffers (relatifs à bufcount + buflen), il s'agit d'un choix de présentation */
9107 offset=lustre_opcode_process(tvb, offset, pinfo, parent_tree, opc, pb_type);
9109 sanity_check(tvb,pinfo,offset-old_offset);
9115 /* IDL: struct lustre_msg_v2 { */
9116 /* IDL: uint32 lm_bufcount; */
9117 /* IDL: uint32 lm_secflvr; */
9118 /* IDL: uint32 lm_magic; */
9119 /* IDL: uint32 lm_repsize; */
9120 /* IDL: uint32 lm_cksum; */
9121 /* IDL: uint32 lm_flags; */
9122 /* IDL: uint32 lm_padding_2; */
9123 /* IDL: uint32 lm_padding_3; */
9124 /* IDL: uint32 lm_buflens[0]; */
9128 lustre_dissect_element_msg_v2_lm_bufcount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9130 proto_tree_add_item(tree, hf_lustre_lustre_msg_v2_lm_bufcount, tvb, offset, 4, TRUE);
9136 lustre_dissect_element_msg_v2_lm_secflvr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9138 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_secflvr);
9144 lustre_dissect_element_msg_v2_lm_magic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9146 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_magic);
9152 lustre_dissect_element_msg_v2_lm_repsize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9154 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_repsize);
9160 lustre_dissect_element_msg_v2_lm_cksum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9162 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_cksum);
9168 lustre_dissect_element_msg_v2_lm_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9170 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_flags);
9176 lustre_dissect_element_msg_v2_lm_padding_2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9178 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_2);
9184 lustre_dissect_element_msg_v2_lm_padding_3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9186 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_padding_3);
9194 lustre_dissect_element_msg_v2_lm_buflens_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_)
9196 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_lustre_msg_v2_lm_buflens);
9202 lustre_dissect_struct_msg_v2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, int hf_index _U_)
9204 proto_item *item = NULL;
9205 proto_tree *tree = NULL;
9209 guint32 buf_len_offset;
9210 guint32 current_buf_len ;
9211 gboolean extra_padding ;
9215 /* to get a light display */
9217 // if (parent_tree) {
9218 // item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE);
9219 // tree = proto_item_add_subtree(item, ett_lustre_lustre_msg_v2);
9222 bufcount = tvb_get_letohl(tvb,offset);
9223 offset=lustre_dissect_element_msg_v2_lm_bufcount(tvb, offset, pinfo, tree);
9225 offset=lustre_dissect_element_msg_v2_lm_secflvr(tvb, offset, pinfo, tree);
9227 offset=lustre_dissect_element_msg_v2_lm_magic(tvb, offset, pinfo, tree);
9229 offset=lustre_dissect_element_msg_v2_lm_repsize(tvb, offset, pinfo, tree);
9231 offset=lustre_dissect_element_msg_v2_lm_cksum(tvb, offset, pinfo, tree);
9233 offset=lustre_dissect_element_msg_v2_lm_flags(tvb, offset, pinfo, tree);
9235 offset=lustre_dissect_element_msg_v2_lm_padding_2(tvb, offset, pinfo, tree);
9237 offset=lustre_dissect_element_msg_v2_lm_padding_3(tvb, offset, pinfo, tree);
9241 if (bufcount & 1) /* we add an extra padding if bufcount is odd */
9246 buf_len_offset=offset ;
9247 for (i=0;i<bufcount;i++) {
9248 offset=lustre_dissect_element_msg_v2_lm_buflens_(tvb, offset, pinfo, tree);
9253 offset=dissect_uint32(tvb, offset, pinfo, tree, hf_lustre_extra_padding);
9258 current_buf_len = tvb_get_letohl(tvb, buf_len_offset);
9259 offset=lustre_dissect_struct_ptlrpc_body(tvb,offset, pinfo, tree, hf_lustre_ptlrpc_body_pb, current_buf_len);
9261 proto_item_set_len(item, offset-old_offset);
9270 dissect_lustre(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
9272 if (check_col(pinfo->cinfo, COL_PROTOCOL))
9273 col_set_str(pinfo->cinfo, COL_PROTOCOL, "Lustre");
9276 if (check_col(pinfo->cinfo, COL_INFO))
9277 col_set_str(pinfo->cinfo, COL_INFO, "");
9278 /* guint32 magic_number ; */
9279 /* magic_number = tvb_get_letohl(tvb, LUSTRE_MAGIC_OFFSET); */
9280 /* switch (magic_number)*/
9282 /* case LUSTRE_MSG_MAGIC_V1:*/
9283 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V1 ");*/
9285 /* case LUSTRE_MSG_MAGIC_V2:*/
9286 /* col_append_fstr(pinfo->cinfo, COL_INFO, " V2 ");*/
9294 guint32 magic_number ;
9296 proto_item *ti = NULL ;
9297 proto_tree * lustre_tree = NULL ;
9300 ti = proto_tree_add_item(tree,proto_lustre,tvb,0,-1,FALSE);
9301 lustre_tree = proto_item_add_subtree(ti,ett_lustre);
9304 magic_number = tvb_get_letohl(tvb, 8);
9307 switch (magic_number){
9308 case LUSTRE_MSG_MAGIC_V1:
9309 /* put some nice info*/
9310 proto_item_append_text(lustre_tree, " V1 ");
9311 offset=lustre_dissect_struct_msg_v1(tvb, 0, pinfo, lustre_tree, proto_lustre ) ;
9313 case LUSTRE_MSG_MAGIC_V2:
9314 /* put some nice info*/
9315 proto_item_append_text(lustre_tree, " V2 ");
9316 offset=lustre_dissect_struct_msg_v2(tvb, 0, pinfo, lustre_tree, proto_lustre ) ;
9325 void proto_register_dcerpc_lustre(void)
9327 static hf_register_info hf[] = {
9328 { &hf_lustre_mdt_body,
9329 { "mdt body", "lustre.mdt_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9330 { &hf_lustre_mdt_body_fid1,
9331 { "Fid1", "lustre.mdt_body.fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9332 { &hf_lustre_mdt_body_fid2,
9333 { "Fid2", "lustre.mdt_body.fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9334 { &hf_lustre_mdt_body_handle,
9335 { "Handle", "lustre.mdt_body.handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9336 { &hf_lustre_mdt_body_valid,
9337 { "Valid", "lustre.mdt_body.valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9338 { &hf_lustre_mdt_body_size,
9339 { "Size", "lustre.mdt_body.size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9340 { &hf_lustre_mdt_body_mtime,
9341 { "Mtime", "lustre.mdt_body.mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9342 { &hf_lustre_mdt_body_atime,
9343 { "Atime", "lustre.mdt_body.atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9344 { &hf_lustre_mdt_body_ctime,
9345 { "Ctime", "lustre.mdt_body.ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9346 { &hf_lustre_mdt_body_blocks,
9347 { "Blocks", "lustre.mdt_body.blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9348 { &hf_lustre_mdt_body_ioepoch,
9349 { "Ioepoch", "lustre.mdt_body.ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9350 { &hf_lustre_mdt_body_ino,
9351 { "Ino", "lustre.mdt_body.ino", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9352 { &hf_lustre_mdt_body_fsuid,
9353 { "Fsuid", "lustre.mdt_body.fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9354 { &hf_lustre_mdt_body_fsgid,
9355 { "Fsgid", "lustre.mdt_body.fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9356 { &hf_lustre_mdt_body_capability,
9357 { "Capability", "lustre.mdt_body.capability", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9358 { &hf_lustre_mdt_body_mode,
9359 { "Mode", "lustre.mdt_body.mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9360 { &hf_lustre_mdt_body_uid,
9361 { "Uid", "lustre.mdt_body.uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9362 { &hf_lustre_mdt_body_gid,
9363 { "Gid", "lustre.mdt_body.gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9364 { &hf_lustre_mdt_body_flags,
9365 { "Flags", "lustre.mdt_body.flags", FT_UINT32, BASE_HEX, VALS(lustre_mds_flags_vals) , 0, "", HFILL }},
9366 { &hf_lustre_mdt_body_rdev,
9367 { "Rdev", "lustre.mdt_body.rdev", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9368 { &hf_lustre_mdt_body_nlink,
9369 { "Nlink", "lustre.mdt_body.nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9370 { &hf_lustre_mdt_body_generation,
9371 { "Generation", "lustre.mdt_body.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9372 { &hf_lustre_mdt_body_suppgid,
9373 { "Suppgid", "lustre.mdt_body.suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9374 { &hf_lustre_mdt_body_eadatasize,
9375 { "Eadatasize", "lustre.mdt_body.eadatasize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9376 { &hf_lustre_mdt_body_aclsize,
9377 { "Aclsize", "lustre.mdt_body.aclsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9378 { &hf_lustre_mdt_body_max_mdsize,
9379 { "Max Mdsize", "lustre.mdt_body.max_mdsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9380 { &hf_lustre_mdt_body_max_cookiesize,
9381 { "Max Cookiesize", "lustre.mdt_body.max_cookiesize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9382 { &hf_lustre_mdt_body_uid_h,
9383 { "Uid H", "lustre.mdt_body.uid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9384 { &hf_lustre_mdt_body_gid_h,
9385 { "Gid H", "lustre.mdt_body.gid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9386 { &hf_lustre_mdt_body_padding_5,
9387 { "Padding 5", "lustre.mdt_body.padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9388 { &hf_lustre_mdt_body_padding_6,
9389 { "Padding 6", "lustre.mdt_body.padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9390 { &hf_lustre_mdt_body_padding_7,
9391 { "Padding 7", "lustre.mdt_body.padding_7", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9392 { &hf_lustre_mdt_body_padding_8,
9393 { "Padding 8", "lustre.mdt_body.padding_8", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9394 { &hf_lustre_mdt_body_padding_9,
9395 { "Padding 9", "lustre.mdt_body.padding_9", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9396 { &hf_lustre_mdt_body_padding_10,
9397 { "Padding 10", "lustre.mdt_body.padding_10", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9399 { &hf_lustre_mdt_rec_setattr,
9400 { "mdt rec setattr", "lustre.mdt_rec_setattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9401 { &hf_lustre_mdt_rec_setattr_sa_opcode,
9402 { "Sa Opcode", "lustre.mdt_rec_setattr.sa_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9403 { &hf_lustre_mdt_rec_setattr_sa_cap,
9404 { "Sa Cap", "lustre.mdt_rec_setattr.sa_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9405 { &hf_lustre_mdt_rec_setattr_sa_fsuid,
9406 { "Sa Fsuid", "lustre.mdt_rec_setattr.sa_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9407 { &hf_lustre_mdt_rec_setattr_sa_fsuid_h,
9408 { "Sa Fsuid H", "lustre.mdt_rec_setattr.sa_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9409 { &hf_lustre_mdt_rec_setattr_sa_fsgid,
9410 { "Sa Fsgid", "lustre.mdt_rec_setattr.sa_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9411 { &hf_lustre_mdt_rec_setattr_sa_fsgid_h,
9412 { "Sa Fsgid H", "lustre.mdt_rec_setattr.sa_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9413 { &hf_lustre_mdt_rec_setattr_sa_suppgid,
9414 { "Sa Suppgid", "lustre.mdt_rec_setattr.sa_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9415 { &hf_lustre_mdt_rec_setattr_sa_suppgid_h,
9416 { "Sa Suppgid H", "lustre.mdt_rec_setattr.sa_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9417 { &hf_lustre_mdt_rec_setattr_sa_padding_1,
9418 { "Sa Padding 1", "lustre.mdt_rec_setattr.sa_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9419 { &hf_lustre_mdt_rec_setattr_sa_padding_1_h,
9420 { "Sa Padding 1 H", "lustre.mdt_rec_setattr.sa_padding_1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9421 { &hf_lustre_mdt_rec_setattr_sa_fid,
9422 { "Sa Fid", "lustre.mdt_rec_setattr.sa_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9423 { &hf_lustre_mdt_rec_setattr_sa_valid,
9424 { "Sa Valid", "lustre.mdt_rec_setattr.sa_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9425 { &hf_lustre_mdt_rec_setattr_sa_uid,
9426 { "Sa Uid", "lustre.mdt_rec_setattr.sa_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9427 { &hf_lustre_mdt_rec_setattr_sa_gid,
9428 { "Sa Gid", "lustre.mdt_rec_setattr.sa_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9429 { &hf_lustre_mdt_rec_setattr_sa_size,
9430 { "Sa Size", "lustre.mdt_rec_setattr.sa_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9431 { &hf_lustre_mdt_rec_setattr_sa_blocks,
9432 { "Sa Blocks", "lustre.mdt_rec_setattr.sa_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9433 { &hf_lustre_mdt_rec_setattr_sa_mtime,
9434 { "Sa Mtime", "lustre.mdt_rec_setattr.sa_mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9435 { &hf_lustre_mdt_rec_setattr_sa_atime,
9436 { "Sa Atime", "lustre.mdt_rec_setattr.sa_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9437 { &hf_lustre_mdt_rec_setattr_sa_ctime,
9438 { "Sa Ctime", "lustre.mdt_rec_setattr.sa_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9439 { &hf_lustre_mdt_rec_setattr_sa_attr_flags,
9440 { "Sa Attr Flags", "lustre.mdt_rec_setattr.sa_attr_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9441 { &hf_lustre_mdt_rec_setattr_sa_mode,
9442 { "Sa Mode", "lustre.mdt_rec_setattr.sa_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9443 { &hf_lustre_mdt_rec_setattr_sa_padding_2,
9444 { "Sa Padding 2", "lustre.mdt_rec_setattr.sa_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9445 { &hf_lustre_mdt_rec_setattr_sa_padding_3,
9446 { "Sa Padding 3", "lustre.mdt_rec_setattr.sa_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9447 { &hf_lustre_mdt_rec_setattr_sa_padding_4,
9448 { "Sa Padding 4", "lustre.mdt_rec_setattr.sa_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9449 { &hf_lustre_mdt_rec_setattr_sa_padding_5,
9450 { "Sa Padding 5", "lustre.mdt_rec_setattr.sa_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9452 { &hf_lustre_mdt_rec_create,
9453 { "mdt rec create", "lustre.mdt_rec_create", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9454 { &hf_lustre_mdt_rec_create_cr_opcode,
9455 { "Cr Opcode", "lustre.mdt_rec_create.cr_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9456 { &hf_lustre_mdt_rec_create_cr_cap,
9457 { "Cr Cap", "lustre.mdt_rec_create.cr_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9458 { &hf_lustre_mdt_rec_create_cr_fsuid,
9459 { "Cr Fsuid", "lustre.mdt_rec_create.cr_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9460 { &hf_lustre_mdt_rec_create_cr_fsuid_h,
9461 { "Cr Fsuid H", "lustre.mdt_rec_create.cr_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9462 { &hf_lustre_mdt_rec_create_cr_fsgid,
9463 { "Cr Fsgid", "lustre.mdt_rec_create.cr_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9464 { &hf_lustre_mdt_rec_create_cr_fsgid_h,
9465 { "Cr Fsgid H", "lustre.mdt_rec_create.cr_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9466 { &hf_lustre_mdt_rec_create_cr_suppgid1,
9467 { "Cr Suppgid1", "lustre.mdt_rec_create.cr_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9468 { &hf_lustre_mdt_rec_create_cr_suppgid1_h,
9469 { "Cr Suppgid1 H", "lustre.mdt_rec_create.cr_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9470 { &hf_lustre_mdt_rec_create_cr_suppgid2,
9471 { "Cr Suppgid2", "lustre.mdt_rec_create.cr_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9472 { &hf_lustre_mdt_rec_create_cr_suppgid2_h,
9473 { "Cr Suppgid2 H", "lustre.mdt_rec_create.cr_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9474 { &hf_lustre_mdt_rec_create_cr_fid1,
9475 { "Cr Fid1", "lustre.mdt_rec_create.cr_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9476 { &hf_lustre_mdt_rec_create_cr_fid2,
9477 { "Cr Fid2", "lustre.mdt_rec_create.cr_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9478 { &hf_lustre_mdt_rec_create_cr_old_handle,
9479 { "Cr Old Handle", "lustre.mdt_rec_create.cr_old_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9480 { &hf_lustre_mdt_rec_create_cr_time,
9481 { "Cr Time", "lustre.mdt_rec_create.cr_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9482 { &hf_lustre_mdt_rec_create_cr_rdev,
9483 { "Cr Rdev", "lustre.mdt_rec_create.cr_rdev", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9484 { &hf_lustre_mdt_rec_create_cr_ioepoch,
9485 { "Cr Ioepoch", "lustre.mdt_rec_create.cr_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9486 { &hf_lustre_mdt_rec_create_cr_padding_1,
9487 { "Cr Padding 1", "lustre.mdt_rec_create.cr_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9488 { &hf_lustre_mdt_rec_create_cr_mode,
9489 { "Cr Mode", "lustre.mdt_rec_create.cr_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9490 { &hf_lustre_mdt_rec_create_cr_bias,
9491 { "Cr Bias", "lustre.mdt_rec_create.cr_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9492 { &hf_lustre_mdt_rec_create_cr_flags_l,
9493 { "Cr Flags L", "lustre.mdt_rec_create.cr_flags_l", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9494 { &hf_lustre_mdt_rec_create_cr_flags_h,
9495 { "Cr Flags H", "lustre.mdt_rec_create.cr_flags_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9496 { &hf_lustre_mdt_rec_create_cr_padding_3,
9497 { "Cr Padding 3", "lustre.mdt_rec_create.cr_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9498 { &hf_lustre_mdt_rec_create_cr_padding_4,
9499 { "Cr Padding 4", "lustre.mdt_rec_create.cr_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9501 { &hf_lustre_mdt_rec_link,
9502 { "mdt rec link", "lustre.mdt_rec_link", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9503 { &hf_lustre_mdt_rec_link_lk_opcode,
9504 { "Lk Opcode", "lustre.mdt_rec_link.lk_opcode", FT_UINT32, BASE_DEC,VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9505 { &hf_lustre_mdt_rec_link_lk_cap,
9506 { "Lk Cap", "lustre.mdt_rec_link.lk_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9507 { &hf_lustre_mdt_rec_link_lk_fsuid,
9508 { "Lk Fsuid", "lustre.mdt_rec_link.lk_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9509 { &hf_lustre_mdt_rec_link_lk_fsuid_h,
9510 { "Lk Fsuid H", "lustre.mdt_rec_link.lk_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9511 { &hf_lustre_mdt_rec_link_lk_fsgid,
9512 { "Lk Fsgid", "lustre.mdt_rec_link.lk_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9513 { &hf_lustre_mdt_rec_link_lk_fsgid_h,
9514 { "Lk Fsgid H", "lustre.mdt_rec_link.lk_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9515 { &hf_lustre_mdt_rec_link_lk_suppgid1,
9516 { "Lk Suppgid1", "lustre.mdt_rec_link.lk_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9517 { &hf_lustre_mdt_rec_link_lk_suppgid1_h,
9518 { "Lk Suppgid1 H", "lustre.mdt_rec_link.lk_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9519 { &hf_lustre_mdt_rec_link_lk_suppgid2,
9520 { "Lk Suppgid2", "lustre.mdt_rec_link.lk_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9521 { &hf_lustre_mdt_rec_link_lk_suppgid2_h,
9522 { "Lk Suppgid2 H", "lustre.mdt_rec_link.lk_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9523 { &hf_lustre_mdt_rec_link_lk_fid1,
9524 { "Lk Fid1", "lustre.mdt_rec_link.lk_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9525 { &hf_lustre_mdt_rec_link_lk_fid2,
9526 { "Lk Fid2", "lustre.mdt_rec_link.lk_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9527 { &hf_lustre_mdt_rec_link_lk_time,
9528 { "Lk Time", "lustre.mdt_rec_link.lk_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9529 { &hf_lustre_mdt_rec_link_lk_padding_1,
9530 { "Lk Padding 1", "lustre.mdt_rec_link.lk_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9531 { &hf_lustre_mdt_rec_link_lk_padding_2,
9532 { "Lk Padding 2", "lustre.mdt_rec_link.lk_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9533 { &hf_lustre_mdt_rec_link_lk_padding_3,
9534 { "Lk Padding 3", "lustre.mdt_rec_link.lk_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9535 { &hf_lustre_mdt_rec_link_lk_padding_4,
9536 { "Lk Padding 4", "lustre.mdt_rec_link.lk_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9537 { &hf_lustre_mdt_rec_link_lk_bias,
9538 { "Lk Bias", "lustre.mdt_rec_link.lk_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9539 { &hf_lustre_mdt_rec_link_lk_padding_5,
9540 { "Lk Padding 5", "lustre.mdt_rec_link.lk_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9541 { &hf_lustre_mdt_rec_link_lk_padding_6,
9542 { "Lk Padding 6", "lustre.mdt_rec_link.lk_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9543 { &hf_lustre_mdt_rec_link_lk_padding_7,
9544 { "Lk Padding 7", "lustre.mdt_rec_link.lk_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9545 { &hf_lustre_mdt_rec_link_lk_padding_8,
9546 { "Lk Padding 8", "lustre.mdt_rec_link.lk_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9547 { &hf_lustre_mdt_rec_link_lk_padding_9,
9548 { "Lk Padding 9", "lustre.mdt_rec_link.lk_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9550 { &hf_lustre_mdt_rec_unlink,
9551 { "mdt rec unlink", "lustre.mdt_rec_unlink", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9552 { &hf_lustre_mdt_rec_unlink_ul_opcode,
9553 { "Ul Opcode", "lustre.mdt_rec_unlink.ul_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9554 { &hf_lustre_mdt_rec_unlink_ul_cap,
9555 { "Ul Cap", "lustre.mdt_rec_unlink.ul_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9556 { &hf_lustre_mdt_rec_unlink_ul_fsuid,
9557 { "Ul Fsuid", "lustre.mdt_rec_unlink.ul_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9558 { &hf_lustre_mdt_rec_unlink_ul_fsuid_h,
9559 { "Ul Fsuid H", "lustre.mdt_rec_unlink.ul_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9560 { &hf_lustre_mdt_rec_unlink_ul_fsgid,
9561 { "Ul Fsgid", "lustre.mdt_rec_unlink.ul_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9562 { &hf_lustre_mdt_rec_unlink_ul_fsgid_h,
9563 { "Ul Fsgid H", "lustre.mdt_rec_unlink.ul_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9564 { &hf_lustre_mdt_rec_unlink_ul_suppgid1,
9565 { "Ul Suppgid1", "lustre.mdt_rec_unlink.ul_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9566 { &hf_lustre_mdt_rec_unlink_ul_suppgid1_h,
9567 { "Ul Suppgid1 H", "lustre.mdt_rec_unlink.ul_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9568 { &hf_lustre_mdt_rec_unlink_ul_suppgid2,
9569 { "Ul Suppgid2", "lustre.mdt_rec_unlink.ul_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9570 { &hf_lustre_mdt_rec_unlink_ul_suppgid2_h,
9571 { "Ul Suppgid2 H", "lustre.mdt_rec_unlink.ul_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9572 { &hf_lustre_mdt_rec_unlink_ul_fid1,
9573 { "Ul Fid1", "lustre.mdt_rec_unlink.ul_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9574 { &hf_lustre_mdt_rec_unlink_ul_fid2,
9575 { "Ul Fid2", "lustre.mdt_rec_unlink.ul_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9576 { &hf_lustre_mdt_rec_unlink_ul_time,
9577 { "Ul Time", "lustre.mdt_rec_unlink.ul_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9578 { &hf_lustre_mdt_rec_unlink_ul_padding_2,
9579 { "Ul Padding 2", "lustre.mdt_rec_unlink.ul_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9580 { &hf_lustre_mdt_rec_unlink_ul_padding_3,
9581 { "Ul Padding 3", "lustre.mdt_rec_unlink.ul_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9582 { &hf_lustre_mdt_rec_unlink_ul_padding_4,
9583 { "Ul Padding 4", "lustre.mdt_rec_unlink.ul_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9584 { &hf_lustre_mdt_rec_unlink_ul_padding_5,
9585 { "Ul Padding 5", "lustre.mdt_rec_unlink.ul_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9586 { &hf_lustre_mdt_rec_unlink_ul_bias,
9587 { "Ul Bias", "lustre.mdt_rec_unlink.ul_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9588 { &hf_lustre_mdt_rec_unlink_ul_mode,
9589 { "Ul Mode", "lustre.mdt_rec_unlink.ul_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9590 { &hf_lustre_mdt_rec_unlink_ul_padding_6,
9591 { "Ul Padding 6", "lustre.mdt_rec_unlink.ul_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9592 { &hf_lustre_mdt_rec_unlink_ul_padding_7,
9593 { "Ul Padding 7", "lustre.mdt_rec_unlink.ul_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9594 { &hf_lustre_mdt_rec_unlink_ul_padding_8,
9595 { "Ul Padding 8", "lustre.mdt_rec_unlink.ul_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9596 { &hf_lustre_mdt_rec_unlink_ul_padding_9,
9597 { "Ul Padding 9", "lustre.mdt_rec_unlink.ul_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9599 { &hf_lustre_mdt_rec_rename,
9600 { "mdt rec rename", "lustre.mdt_rec_rename", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9601 { &hf_lustre_mdt_rec_rename_rn_opcode,
9602 { "Rn Opcode", "lustre.mdt_rec_rename.rn_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals) , 0, "", HFILL }},
9603 { &hf_lustre_mdt_rec_rename_rn_cap,
9604 { "Rn Cap", "lustre.mdt_rec_rename.rn_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9605 { &hf_lustre_mdt_rec_rename_rn_fsuid,
9606 { "Rn Fsuid", "lustre.mdt_rec_rename.rn_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9607 { &hf_lustre_mdt_rec_rename_rn_fsuid_h,
9608 { "Rn Fsuid H", "lustre.mdt_rec_rename.rn_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9609 { &hf_lustre_mdt_rec_rename_rn_fsgid,
9610 { "Rn Fsgid", "lustre.mdt_rec_rename.rn_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9611 { &hf_lustre_mdt_rec_rename_rn_fsgid_h,
9612 { "Rn Fsgid H", "lustre.mdt_rec_rename.rn_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9613 { &hf_lustre_mdt_rec_rename_rn_suppgid1,
9614 { "Rn Suppgid1", "lustre.mdt_rec_rename.rn_suppgid1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9615 { &hf_lustre_mdt_rec_rename_rn_suppgid1_h,
9616 { "Rn Suppgid1 H", "lustre.mdt_rec_rename.rn_suppgid1_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9617 { &hf_lustre_mdt_rec_rename_rn_suppgid2,
9618 { "Rn Suppgid2", "lustre.mdt_rec_rename.rn_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9619 { &hf_lustre_mdt_rec_rename_rn_suppgid2_h,
9620 { "Rn Suppgid2 H", "lustre.mdt_rec_rename.rn_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9621 { &hf_lustre_mdt_rec_rename_rn_fid1,
9622 { "Rn Fid1", "lustre.mdt_rec_rename.rn_fid1", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9623 { &hf_lustre_mdt_rec_rename_rn_fid2,
9624 { "Rn Fid2", "lustre.mdt_rec_rename.rn_fid2", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9625 { &hf_lustre_mdt_rec_rename_rn_time,
9626 { "Rn Time", "lustre.mdt_rec_rename.rn_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9627 { &hf_lustre_mdt_rec_rename_rn_padding_1,
9628 { "Rn Padding 1", "lustre.mdt_rec_rename.rn_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9629 { &hf_lustre_mdt_rec_rename_rn_padding_2,
9630 { "Rn Padding 2", "lustre.mdt_rec_rename.rn_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9631 { &hf_lustre_mdt_rec_rename_rn_padding_3,
9632 { "Rn Padding 3", "lustre.mdt_rec_rename.rn_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9633 { &hf_lustre_mdt_rec_rename_rn_padding_4,
9634 { "Rn Padding 4", "lustre.mdt_rec_rename.rn_padding_4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9635 { &hf_lustre_mdt_rec_rename_rn_bias,
9636 { "Rn Bias", "lustre.mdt_rec_rename.rn_bias", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9637 { &hf_lustre_mdt_rec_rename_rn_mode,
9638 { "Rn Mode", "lustre.mdt_rec_rename.rn_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9639 { &hf_lustre_mdt_rec_rename_rn_padding_5,
9640 { "Rn Padding 5", "lustre.mdt_rec_rename.rn_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9641 { &hf_lustre_mdt_rec_rename_rn_padding_6,
9642 { "Rn Padding 6", "lustre.mdt_rec_rename.rn_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9643 { &hf_lustre_mdt_rec_rename_rn_padding_7,
9644 { "Rn Padding 7", "lustre.mdt_rec_rename.rn_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9645 { &hf_lustre_mdt_rec_rename_rn_padding_8,
9646 { "Rn Padding 8", "lustre.mdt_rec_rename.rn_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9648 { &hf_lustre_mdt_rec_setxattr,
9649 { "mdt rec setxattr", "lustre.mdt_rec_setxattr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9650 { &hf_lustre_mdt_rec_setxattr_sx_opcode,
9651 { "Sx Opcode", "lustre.mdt_rec_setxattr.sx_opcode", FT_UINT32, BASE_DEC, VALS(lustre_mds_reint_t_vals), 0, "", HFILL }},
9652 { &hf_lustre_mdt_rec_setxattr_sx_cap,
9653 { "Sx Cap", "lustre.mdt_rec_setxattr.sx_cap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9654 { &hf_lustre_mdt_rec_setxattr_sx_fsuid,
9655 { "Sx Fsuid", "lustre.mdt_rec_setxattr.sx_fsuid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9656 { &hf_lustre_mdt_rec_setxattr_sx_fsuid_h,
9657 { "Sx Fsuid H", "lustre.mdt_rec_setxattr.sx_fsuid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9658 { &hf_lustre_mdt_rec_setxattr_sx_fsgid,
9659 { "Sx Fsgid", "lustre.mdt_rec_setxattr.sx_fsgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9660 { &hf_lustre_mdt_rec_setxattr_sx_fsgid_h,
9661 { "Sx Fsgid H", "lustre.mdt_rec_setxattr.sx_fsgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9662 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1,
9663 { "Sx Suppgid1", "lustre.mdt_rec_setxattr.sx_suppgid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9664 { &hf_lustre_mdt_rec_setxattr_sx_suppgid1_h,
9665 { "Sx Suppgid1 H", "lustre.mdt_rec_setxattr.sx_suppgid_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9666 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2,
9667 { "Sx Suppgid2", "lustre.mdt_rec_setxattr.sx_suppgid2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9668 { &hf_lustre_mdt_rec_setxattr_sx_suppgid2_h,
9669 { "Sx Suppgid2 H", "lustre.mdt_rec_setxattr.sx_suppgid2_h", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9670 { &hf_lustre_mdt_rec_setxattr_sx_fid,
9671 { "Sx Fid", "lustre.mdt_rec_setxattr.sx_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9672 { &hf_lustre_mdt_rec_setxattr_sx_padding_1,
9673 { "Sx Padding 1", "lustre.mdt_rec_setxattr.sx_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9674 { &hf_lustre_mdt_rec_setxattr_sx_padding_2,
9675 { "Sx Padding 2", "lustre.mdt_rec_setxattr.sx_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9676 { &hf_lustre_mdt_rec_setxattr_sx_padding_3,
9677 { "Sx Padding 3", "lustre.mdt_rec_setxattr.sx_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9678 { &hf_lustre_mdt_rec_setxattr_sx_valid,
9679 { "Sx Valid", "lustre.mdt_rec_setxattr.sx_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9680 { &hf_lustre_mdt_rec_setxattr_sx_time,
9681 { "Sx Time", "lustre.mdt_rec_setxattr.sx_time",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9682 { &hf_lustre_mdt_rec_setxattr_sx_padding_5,
9683 { "Sx Padding 5", "lustre.mdt_rec_setxattr.sx_padding_5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9684 { &hf_lustre_mdt_rec_setxattr_sx_padding_6,
9685 { "Sx Padding 6", "lustre.mdt_rec_setxattr.sx_padding_6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9686 { &hf_lustre_mdt_rec_setxattr_sx_padding_7,
9687 { "Sx Padding 7", "lustre.mdt_rec_setxattr.sx_padding_7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9688 { &hf_lustre_mdt_rec_setxattr_sx_size,
9689 { "Sx Size", "lustre.mdt_rec_setxattr.sx_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9690 { &hf_lustre_mdt_rec_setxattr_sx_flgas,
9691 { "Sx Flags", "lustre.mdt_rec_setxattr.sx_flags", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9692 { &hf_lustre_mdt_rec_setxattr_sx_padding_8,
9693 { "Sx Padding 8", "lustre.mdt_rec_setxattr.sx_padding_8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9694 { &hf_lustre_mdt_rec_setxattr_sx_padding_9,
9695 { "Sx Padding 9", "lustre.mdt_rec_setxattr.sx_padding_9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9696 { &hf_lustre_mdt_rec_setxattr_sx_padding_10,
9697 { "Sx Padding 10", "lustre.mdt_rec_setxattr.sx_padding_10", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9698 { &hf_lustre_mdt_rec_setxattr_sx_padding_11,
9699 { "Sx Padding 11", "lustre.mdt_rec_setxattr.sx_padding_11", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9701 { &hf_lustre_lustre_handle_cookie,
9702 { "Cookie", "lustre.lustre_handle.cookie", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9703 { &hf_lustre_ptlrpc_body_pb_last_committed,
9704 { "Pb Last Committed", "lustre.ptlrpc_body.pb_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9705 { &hf_lustre_ptlrpc_body_pb_version,
9706 { "Pb Version", "lustre.ptlrpc_body.pb_version", FT_UINT32, BASE_DEC, NULL, ~LUSTRE_VERSION_MASK, "", HFILL }},
9707 { &hf_lustre_lustre_msg_v1_lm_bufcount,
9708 { "Lm Bufcount", "lustre.lustre_msg_v1.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9709 { &hf_lustre_obd_ioobj_ioo_id,
9710 { "Ioo Id", "lustre.obd_ioobj.ioo_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9711 { &hf_lustre_ptlrpc_body_pb_slv,
9712 { "Pb Slv", "lustre.ptlrpc_body.pb_slv", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9713 { &hf_lustre_lustre_msg_v1_lm_handle,
9714 { "Lm Handle", "lustre.lustre_msg_v1.lm_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9715 { &hf_lustre_ost_lvb_lvb_atime,
9716 { "Lvb Atime", "lustre.ost_lvb.lvb_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9717 { &hf_lustre_ptlrpc_body_pb_timeout,
9718 { "Pb Timeout", "lustre.ptlrpc_body.pb_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9719 { &hf_lustre_obd_statfs_os_bavail,
9720 { "Os Bavail", "lustre.obd_statfs.os_bavail", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9721 { &hf_lustre_obd_statfs_os_bsize,
9722 { "Os Bsize", "lustre.obd_statfs.os_bsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9723 { &hf_lustre_lustre_msg_v2_lm_repsize,
9724 { "Lm Repsize", "lustre.lustre_msg_v2.lm_repsize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9725 { &hf_lustre_lov_mds_md_v1_lmm_stripe_size,
9726 { "Lmm Stripe Size", "lustre.lov_mds_md_v1.lmm_stripe_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9727 { &hf_lustre_lustre_msg_v1_lm_last_xid,
9728 { "Lm Last Xid", "lustre.lustre_msg_v1.lm_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9729 { &hf_lustre_ll_fid_f_type,
9730 { "F Type", "lustre.ll_fid.f_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9731 { &hf_lustre_lustre_msg_v2_lm_cksum,
9732 { "Lm Cksum", "lustre.lustre_msg_v2.lm_cksum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9733 { &hf_lustre_lustre_msg_v2_lm_buflens,
9734 { "Lm Buflens", "lustre.lustre_msg_v2.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9735 { &hf_lustre_lustre_msg_v1_lm_status,
9736 { "Lm Status", "lustre.lustre_msg_v1.lm_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9737 { &hf_lustre_lustre_msg_v1_lm_type,
9738 { "Lm Type", "lustre.lustre_msg_v1.lm_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
9739 { &hf_lustre_niobuf_remote_len,
9740 { "Len", "lustre.niobuf_remote.len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9741 { &hf_lustre_lov_mds_md_v1_lmm_magic,
9742 { "Lmm Magic", "lustre.lov_mds_md_v1.lmm_magic", FT_UINT32, BASE_HEX, VALS(lustre_lov_magic) , 0, "", HFILL }},
9743 { &hf_lustre_ptlrpc_body_pb_op_flags,
9744 { "Pb Op Flags", "lustre.ptlrpc_body.pb_op_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9745 { &hf_lustre_ost_lvb_lvb_ctime,
9746 { "Lvb Ctime", "lustre.ost_lvb.lvb_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
9747 { &hf_lustre_ptlrpc_body_pb_type,
9748 { "Pb Type", "lustre.ptlrpc_body.pb_type", FT_UINT32, BASE_DEC, VALS(lustre_LMTypes), 0, "", HFILL }},
9749 { &hf_lustre_obd_connect_data_ocd_nllg,
9750 { "Ocd Nllg", "lustre.obd_connect_data.ocd_nllg", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9751 { &hf_lustre_obd_connect_data_ocd_nllu,
9752 { "Ocd Nllu", "lustre.obd_connect_data.ocd_nllu", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9753 { &hf_lustre_ll_fid_generation,
9754 { "Generation", "lustre.ll_fid.generation", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9755 { &hf_lustre_ost_lvb_lvb_mtime,
9756 { "Lvb Mtime", "lustre.ost_lvb.lvb_mtime",FT_ABSOLUTE_TIME, BASE_NONE, NULL, 0, "", HFILL }},
9757 { &hf_lustre_obd_connect_data_ocd_ibits_known,
9758 { "Ocd Ibits Known", "lustre.obd_connect_data.ocd_ibits_known", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9759 { &hf_lustre_lustre_msg_v2_lm_padding_3,
9760 { "Lm Padding 3", "lustre.lustre_msg_v2.lm_padding_3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9761 { &hf_lustre_ptlrpc_body_pb_flags,
9762 { "Pb Flags", "lustre.ptlrpc_body.pb_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9763 { &hf_lustre_obd_statfs_os_spare4,
9764 { "Os Spare4", "lustre.obd_statfs.os_spare4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9765 { &hf_lustre_obd_connect_data_ocd_group,
9766 { "Ocd Group", "lustre.obd_connect_data.ocd_group", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9767 { &hf_lustre_lov_ost_data_v1_l_object_seq,
9768 { "L Object SEQ", "lustre.lov_ost_data_v1.l_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9769 { &hf_lustre_lov_mds_md_v1_lmm_object_seq,
9770 { "Lmm Object SEQ", "lustre.lov_mds_md_v1.lmm_object_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9771 { &hf_lustre_obd_connect_data_ocd_brw_size,
9772 { "Ocd Brw Size", "lustre.obd_connect_data.ocd_brw_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9773 { &hf_lustre_ptlrpc_body_pb_limit,
9774 { "Pb Limit", "lustre.ptlrpc_body.pb_limit", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9775 { &hf_lustre_obd_statfs_os_maxbytes,
9776 { "Os Maxbytes", "lustre.obd_statfs.os_maxbytes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9777 { &hf_lustre_obd_statfs_os_spare5,
9778 { "Os Spare5", "lustre.obd_statfs.os_spare5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9779 { &hf_lustre_lustre_msg_v2_lm_flags,
9780 { "Lm Flags", "lustre.lustre_msg_v2.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9781 { &hf_lustre_obd_statfs_os_ffree,
9782 { "Os Ffree", "lustre.obd_statfs.os_ffree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9783 { &hf_lustre_obd_statfs_os_files,
9784 { "Os Files", "lustre.obd_statfs.os_files", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9785 { &hf_lustre_lov_mds_md_v1_lmm_stripe_count,
9786 { "Lmm Stripe Count", "lustre.lov_mds_md_v1.lmm_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9787 { &hf_lustre_lustre_msg_v1_lm_flags,
9788 { "Lm Flags", "lustre.lustre_msg_v1.lm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9789 { &hf_lustre_lustre_msg_v1_lm_last_committed,
9790 { "Lm Last Committed", "lustre.lustre_msg_v1.lm_last_committed", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9791 { &hf_lustre_obd_statfs_os_spare9,
9792 { "Os Spare9", "lustre.obd_statfs.os_spare9", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9793 { &hf_lustre_obd_connect_data_ocd_index,
9794 { "Ocd Index", "lustre.obd_connect_data.ocd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9795 { &hf_lustre_lustre_msg_v1_lm_buflens,
9796 { "Lm Buflens", "lustre.lustre_msg_v1.lm_buflens", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9797 { &hf_lustre_obd_statfs_os_spare1,
9798 { "Os Spare1", "lustre.obd_statfs.os_spare1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9799 { &hf_lustre_obd_statfs_os_spare8,
9800 { "Os Spare8", "lustre.obd_statfs.os_spare8", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9801 { &hf_lustre_lustre_msg_v1_lm_conn_cnt,
9802 { "Lm Conn Cnt", "lustre.lustre_msg_v1.lm_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9803 { &hf_lustre_ptlrpc_body_pb_transno,
9804 { "Pb Transno", "lustre.ptlrpc_body.pb_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9805 { &hf_lustre_ptlrpc_body_pb_service_time,
9806 { "Pb Service Time", "lustre.ptlrpc_body.pb_service_time",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9807 { &hf_lustre_ptlrpc_body_pb_conn_cnt,
9808 { "Pb Conn Cnt", "lustre.ptlrpc_body.pb_conn_cnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9809 { &hf_lustre_ptlrpc_body_pb_opc,
9810 { "Pb Opc", "lustre.ptlrpc_body.pb_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
9811 { &hf_lustre_obd_connect_data_ocd_connect_flags,
9812 { "Ocd Connect Flags", "lustre.obd_connect_data.ocd_connect_flags", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9813 { &hf_lustre_lov_ost_data_v1_l_object_id,
9814 { "L Object Id", "lustre.lov_ost_data_v1.l_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9815 { &hf_lustre_lov_ost_data_v1_l_ost_gen,
9816 { "L Ost Gen", "lustre.lov_ost_data_v1.l_ost_gen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9817 { &hf_lustre_obd_statfs_os_bfree,
9818 { "Os Bfree", "lustre.obd_statfs.os_bfree", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9819 { &hf_lustre_obd_connect_data_ocd_version,
9820 { "Ocd Version", "lustre.obd_connect_data.ocd_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9821 { &hf_lustre_lov_mds_md_v1_lmm_objects,
9822 { "Lmm Objects", "lustre.lov_mds_md_v1.lmm_objects", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9823 { &hf_lustre_obd_statfs_os_namelen,
9824 { "Os Namelen", "lustre.obd_statfs.os_namelen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9825 { &hf_lustre_obd_statfs_os_blocks,
9826 { "Os Blocks", "lustre.obd_statfs.os_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9827 { &hf_lustre_lustre_msg_v2_lm_secflvr,
9828 { "Lm Secflvr", "lustre.lustre_msg_v2.lm_secflvr", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9829 { &hf_lustre_lustre_msg_v1_lm_transno,
9830 { "Lm Transno", "lustre.lustre_msg_v1.lm_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9831 { &hf_lustre_lov_mds_md_v1_lmm_pattern,
9832 { "Lmm Pattern", "lustre.lov_mds_md_v1.lmm_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9833 { &hf_lustre_lustre_msg_v1_lm_opc,
9834 { "Lm Opc", "lustre.lustre_msg_v1.lm_opc", FT_UINT32, BASE_DEC, VALS(lustre_op_codes), 0, "", HFILL }},
9835 { &hf_lustre_obd_connect_data_ocd_grant,
9836 { "Ocd Grant", "lustre.obd_connect_data.ocd_grant", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9837 { &hf_lustre_obd_ioobj_ioo_bufcnt,
9838 { "Ioo Bufcnt", "lustre.obd_ioobj.ioo_bufcnt", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9839 { &hf_lustre_lustre_msg_v1_lm_version,
9840 { "Lm Version", "lustre.lustre_msg_v1.lm_version", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9841 { &hf_lustre_obd_statfs_os_spare7,
9842 { "Os Spare7", "lustre.obd_statfs.os_spare7", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9843 { &hf_lustre_obd_statfs_os_fsid,
9844 { "Os Fsid", "lustre.obd_statfs.os_fsid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
9845 { &hf_lustre_obd_connect_data_ocd_cksum_types,
9846 { "Ocd Cksum Types", "lustre.obd_connect_data.ocd_cksum_types", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9847 { &hf_lustre_ost_lvb_lvb_size,
9848 { "Lvb Size", "lustre.ost_lvb.lvb_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9849 { &hf_lustre_obd_statfs_os_type,
9850 { "Os Type", "lustre.obd_statfs.os_type", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9851 { &hf_lustre_obd_statfs_os_spare6,
9852 { "Os Spare6", "lustre.obd_statfs.os_spare6", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9853 { &hf_lustre_obd_statfs_os_state,
9854 { "Os State", "lustre.obd_statfs.os_state", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9855 { &hf_lustre_obd_statfs_os_spare3,
9856 { "Os Spare3", "lustre.obd_statfs.os_spare3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9857 { &hf_lustre_lustre_msg_v2_lm_magic,
9858 { "Lm Magic", "lustre.lustre_msg_v2.lm_magic", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
9859 { &hf_lustre_lov_mds_md_v1_lmm_object_id,
9860 { "Lmm Object Id", "lustre.lov_mds_md_v1.lmm_object_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9861 { &hf_lustre_ptlrpc_body_pb_last_seen,
9862 { "Pb Last Seen", "lustre.ptlrpc_body.pb_last_seen", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9863 { &hf_lustre_obd_ioobj_ioo_type, /* TODO : create the corresponding value_string */
9864 { "Ioo Type", "lustre.obd_ioobj.ioo_type", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
9865 { &hf_lustre_ptlrpc_body_pb_last_xid,
9866 { "Pb Last Xid", "lustre.ptlrpc_body.pb_last_xid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9867 { &hf_lustre_ptlrpc_body_pb_status,
9868 { "Pb Status", "lustre.ptlrpc_body.pb_status", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9869 { &hf_lustre_niobuf_remote_flags,
9870 { "Flags", "lustre.niobuf_remote.flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9871 { &hf_lustre_ll_fid_id,
9872 { "Id", "lustre.ll_fid.id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9873 { &hf_lustre_ost_lvb_lvb_blocks,
9874 { "Lvb Blocks", "lustre.ost_lvb.lvb_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9875 { &hf_lustre_lustre_msg_v2_lm_padding_2,
9876 { "Lm Padding 2", "lustre.lustre_msg_v2.lm_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9877 { &hf_lustre_obd_connect_data_padding1,
9878 { "Padding1", "lustre.obd_connect_data.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9879 { &hf_lustre_lov_ost_data_v1_l_ost_idx,
9880 { "L Ost Idx", "lustre.lov_ost_data_v1.l_ost_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9881 { &hf_lustre_obd_connect_data_padding2,
9882 { "Padding2", "lustre.obd_connect_data.padding2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9883 { &hf_lustre_obd_ioobj_ioo_seq,
9884 { "Ioo Gr", "lustre.obd_ioobj.ioo_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9885 { &hf_lustre_niobuf_remote_offset,
9886 { "Offset", "lustre.niobuf_remote.offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9887 { &hf_lustre_obd_statfs_os_spare2,
9888 { "Os Spare2", "lustre.obd_statfs.os_spare2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9889 { &hf_lustre_lustre_msg_v2_lm_bufcount,
9890 { "Lm Bufcount", "lustre.lustre_msg_v2.lm_bufcount", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9891 { &hf_lustre_ptlrpc_body_pb_handle,
9892 { "Pb Handle", "lustre.ptlrpc_body.pb_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9893 { &hf_lustre_obd_connect_data_ocd_transno,
9894 { "Ocd Transno", "lustre.obd_connect_data.ocd_transno", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9895 { &hf_lustre_lustre_msg_v1_lm_magic,
9896 { "Lm Magic", "lustre.lustre_msg_v1.lm_magic", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9897 { &hf_lustre_ptlrpc_body_pb,
9898 { "ptl rpc", "lustre.ptlrpc_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9900 { &hf_lustre_obd_uuid,
9901 { "obd uid name", "lustre.obd_uid", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9902 { &hf_lustre_obd_connect_data ,
9903 { "obd connect data", "lustre.obd_connect_data", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9905 { &hf_lustre_ldlm_intent,
9906 { "ldlm intent", "lustre.ldlm_intent", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9908 { &hf_lustre_obd_ioobj,
9909 { "lustre obd ioobj", "lustre.obd_ioobj", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9910 { &hf_lustre_niobuf_remote,
9911 { "lustre niobuf remote", "lustre.niobuf_remote", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9912 { &hf_lustre_ost_key,
9913 { "lustre ost key", "lustre.ost_key", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9914 { &hf_lustre_ost_val,
9915 { "lustre ost val", "lustre.ost_val", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9916 { &hf_lustre_llogd_chunk,
9917 { "lustre llogd chunk", "lustre.llogd_chunk", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9918 { &hf_lustre_llogd_keyword,
9919 { "lustre llogd keyword", "lustre.llogd_keyword", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9920 { &hf_lustre_llogd_client,
9921 { "lustre llogd client", "lustre.llogd_client", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9922 { &hf_lustre_llogd_name,
9923 { "lustre llogd name", "lustre.llogd_name", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9924 { &hf_lustre_llogd_log_hdr,
9925 { "lustre llogd log hdr", "lustre.llogd_log_hdr", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9926 { &hf_lustre_llog_logid_rec,
9927 { "lustre llog logid rec", "lustre.llog_logid_rec", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9929 { &hf_lustre_llogd_body,
9930 { "lustre llogd body", "lustre.llogd_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL}},
9932 { "lustre nio", "lustre.nio", FT_STRING, BASE_NONE, NULL , 0 , "", HFILL}},
9933 { &hf_lustre_ost_body,
9934 { "ost body", "lustre.ost_body", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9935 { &hf_lustre_obd_statfs,
9936 { "obd statfs", "lustre.obd_statfs", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9937 { &hf_lustre_obd_quotactl,
9938 { "obd quotactl", "lustre.obd_quotacl", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9939 { &hf_lustre_quota_adjust_qunit,
9940 { "obd quota adjust qunit", "lustre.quota_adjust_qunit", FT_NONE, BASE_NONE, NULL , 0 , "", HFILL }},
9941 { &hf_lustre_llog_unlink_rec_lur_tail,
9942 { "Lur Tail", "lustre.llog_unlink_rec.lur_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9943 { &hf_lustre_llog_size_change_rec_lsc_io_epoch,
9944 { "Lsc Io Epoch", "lustre.llog_size_change_rec.lsc_io_epoch", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9945 { &hf_lustre_mgs_target_info_mti_flags,
9946 { "Mti Flags", "lustre.mgs_target_info.mti_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9947 { &hf_lustre_ldlm_reply_lock_policy_res1,
9948 { "Lock Policy Res1", "lustre.ldlm_reply.lock_policy_res1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9949 { &hf_lustre_llogd_body_lgd_len,
9950 { "Lgd Len", "lustre.llogd_body.lgd_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9951 { &hf_lustre_qunit_data_old_qd_id,
9952 { "Qd Id", "lustre.qunit_data_old.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9953 { &hf_lustre_llog_logid_rec_padding1,
9954 { "Padding1", "lustre.llog_logid_rec.padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9955 { &hf_lustre_quota_adjust_qunit_padding1,
9956 { "Padding1", "lustre.quota_adjust_qunit.padding1", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9957 { &hf_lustre_llog_size_change_rec_lsc_fid,
9958 { "Lsc Fid", "lustre.llog_size_change_rec.lsc_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
9959 { &hf_lustre_llog_rec_hdr_padding,
9960 { "Padding", "lustre.llog_rec_hdr.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9961 { &hf_lustre_obdo_o_nlink,
9962 { "O Nlink", "lustre.obdo.o_nlink", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9963 { &hf_lustre_ldlm_extent_gid,
9964 { "Gid", "lustre.ldlm_extent.gid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9965 { &hf_lustre_obdo_o_uid,
9966 { "O Uid", "lustre.obdo.o_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
9967 { &hf_lustre_mds_xattr_name,
9968 { "mds xattr name", "lustre.mds_xattr_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9969 { &hf_lustre_lov_mds_md_v1,
9970 { "lov mds md v1", "lustre.lov_mds_md_v1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9971 { &hf_lustre_llog_cookie,
9972 { "llog cookie", "lustre.llog_cookie", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9973 { &hf_lustre_mds_md_data,
9974 { "mds md data", "lustre.mds_md_data", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9975 { &hf_lustre_mds_reint_opcode,
9976 { "mds reint opcode", "lustre.mds_reint_opcode", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9977 { &hf_lustre_mds_xattr_eadata,
9978 { "mds xattr eadata", "lustre.mds_xattr_eadata", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
9979 { &hf_lustre_reint_name,
9980 { "mds reint name", "lustre.mds_reint_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9981 { &hf_lustre_reint_old_name,
9982 { "mds reint old name", "lustre.mds_reint_old_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9983 { &hf_lustre_reint_new_name,
9984 { "mds reint new name", "lustre.mds_reint_new_name", FT_STRING, BASE_NONE, NULL, 0, "", HFILL }},
9988 { &hf_lustre_obdo_o_valid,
9989 { "O Valid", "lustre.obdo.o_valid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
9990 { &hf_lustre_ldlm_reply_lock_flags,
9991 { "Lock Flags", "lustre.ldlm_reply.lock_flags", FT_UINT32,BASE_HEX, NULL, 0, "", HFILL }},
9993 {&hf_lustre_ldlm_fl_lock_changed, {"LDLM_FL_LOCK_CHANGED", "lustre.ldlm_fl_lock_changed", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_LOCK_CHANGED, "", HFILL}},
9994 {&hf_lustre_ldlm_fl_block_granted, {"LDLM_FL_BLOCK_GRANTED", "lustre.ldlm_fl_block_granted", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_GRANTED, "", HFILL}},
9995 {&hf_lustre_ldlm_fl_block_conv, {"LDLM_FL_BLOCK_CONV", "lustre.ldlm_fl_block_conv", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_CONV, "", HFILL}},
9996 {&hf_lustre_ldlm_fl_block_wait, {"LDLM_FL_BLOCK_WAIT", "lustre.ldlm_fl_block_wait", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_WAIT, "", HFILL}},
9997 {&hf_lustre_ldlm_fl_ast_sent, {"LDLM_FL_AST_SENT", "lustre.ldlm_fl_ast_sent", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_AST_SENT, "", HFILL}},
9998 {&hf_lustre_ldlm_fl_replay, {"LDLM_FL_REPLAY", "lustre.ldlm_fl_replay", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_REPLAY, "", HFILL}},
9999 {&hf_lustre_ldlm_fl_intent_only, {"LDLM_FL_INTENT_ONLY", "lustre.ldlm_fl_intent_only", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_INTENT_ONLY, "", HFILL}},
10000 {&hf_lustre_ldlm_fl_has_intent, {"LDLM_FL_HAS_INTENT", "lustre.ldlm_fl_has_intent", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_HAS_INTENT, "", HFILL}},
10001 {&hf_lustre_ldlm_fl_discard_data, {"LDLM_FL_DISCARD_DATA", "lustre.ldlm_fl_discard_data", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_DISCARD_DATA, "", HFILL}},
10002 {&hf_lustre_ldlm_fl_no_timeout, {"LDLM_FL_NO_TIMEOUT", "lustre.ldlm_fl_no_timeout", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_NO_TIMEOUT, "", HFILL}},
10003 {&hf_lustre_ldlm_fl_block_nowait, {"LDLM_FL_BLOCK_NOWAIT", "lustre.ldlm_fl_block_nowait", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_BLOCK_NOWAIT, "", HFILL}},
10004 {&hf_lustre_ldlm_fl_test_lock, {"LDLM_FL_TEST_LOCK", "lustre.ldlm_fl_test_lock", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_TEST_LOCK, "", HFILL}},
10005 {&hf_lustre_ldlm_fl_cancel_on_block, {"LDLM_FL_CANCEL_ON_BLOCK", "lustre.ldlm_fl_cancel_on_block", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_CANCEL_ON_BLOCK, "", HFILL}},
10006 {&hf_lustre_ldlm_fl_deny_on_contention, {"LDLM_FL_DENY_ON_CONTENTION", "lustre.ldlm_fl_deny_on_contention", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_FL_DENY_ON_CONTENTION, "", HFILL}},
10007 {&hf_lustre_ldlm_ast_discard_data, {"LDLM_AST_DISCARD_DATA", "lustre.ldlm_ast_discard_data", FT_BOOLEAN, 32, TFS(&flags_set_truth), LDLM_AST_DISCARD_DATA, "", HFILL}},
10010 { &hf_lustre_obdo_o_misc,
10011 { "O Misc", "lustre.obdo.o_misc", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10012 { &hf_lustre_ldlm_request_lock_handle,
10013 { "Lock Handle", "lustre.ldlm_request.lock_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10014 { &hf_lustre_llog_logid_lgl_oid,
10015 { "Lgl Oid", "lustre.llog_logid.lgl_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10016 { &hf_lustre_ldlm_inodebits_bits,
10017 { "Bits", "lustre.ldlm_inodebits.bits", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10018 { &hf_lustre_llog_log_hdr_llh_count,
10019 { "Llh Count", "lustre.llog_log_hdr.llh_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10020 { &hf_lustre_llog_gen_rec_lgr_tail,
10021 { "Lgr Tail", "lustre.llog_gen_rec.lgr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10022 { &hf_lustre_llog_catid_lci_padding3,
10023 { "Lci Padding3", "lustre.llog_catid.lci_padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10024 { &hf_lustre_qunit_data_qd_qunit,
10025 { "Qd Qunit", "lustre.qunit_data.qd_qunit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10026 { &hf_lustre_llog_setattr_rec_padding,
10027 { "Padding", "lustre.llog_setattr_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10028 { &hf_lustre_llog_cookie_lgc_lgl,
10029 { "Lgc Lgl", "lustre.llog_cookie.lgc_lgl", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10030 { &hf_lustre_obd_quotactl_qc_dqinfo,
10031 { "Qc Dqinfo", "lustre.obd_quotactl.qc_dqinfo", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10032 { &hf_lustre_llog_log_hdr_llh_bitmap,
10033 { "Llh Bitmap", "lustre.llog_log_hdr.llh_bitmap", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10034 { &hf_lustre_obd_quotactl_qc_stat,
10035 { "Qc Stat", "lustre.obd_quotactl.qc_stat", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10036 { &hf_lustre_qunit_data_old2_qd_id,
10037 { "Qd Id", "lustre.qunit_data_old2.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10038 { &hf_lustre_llog_logid_rec_padding2,
10039 { "Padding2", "lustre.llog_logid_rec.padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10040 { &hf_lustre_llog_orphan_rec_lor_tail,
10041 { "Lor Tail", "lustre.llog_orphan_rec.lor_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10042 { &hf_lustre_llog_logid_rec_padding5,
10043 { "Padding5", "lustre.llog_logid_rec.padding5", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10044 /*-------------------------------------------------------------------------------------------------------------*/
10045 /*all this flags are uint64, but I don't find the way to use something like TFS() with a Uint64*/
10046 { &hf_lustre_ldlm_intent_opc_open,
10047 { "open", "lustre.ldlm_intent.opc_open", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_OPEN, "", HFILL}},
10048 { &hf_lustre_ldlm_intent_opc_creat,
10049 { "creat", "lustre.ldlm_intent.opc_creat", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_CREAT , "", HFILL}},
10050 { &hf_lustre_ldlm_intent_opc_readdir,
10051 { "readdir", "lustre.ldlm_intent.opc_readdir", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_READDIR , "", HFILL}},
10052 { &hf_lustre_ldlm_intent_opc_getattr,
10053 { "getattr", "lustre.ldlm_intent.opc_getattr", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_GETATTR, "", HFILL}},
10054 { &hf_lustre_ldlm_intent_opc_lookup,
10055 { "lookup", "lustre.ldlm_intent.opc_lookup", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_LOOKUP , "", HFILL}},
10056 { &hf_lustre_ldlm_intent_opc_unlink,
10057 { "unlink", "lustre.ldlm_intent.opc_unlink", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_UNLINK , "", HFILL}},
10058 { &hf_lustre_ldlm_intent_opc_getxattr,
10059 { "getxattr", "lustre.ldlm_intent.opc_getxattr", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_GETXATTR , "", HFILL}},
10060 { &hf_lustre_ldlm_intent_opc_exec,
10061 { "exec", "lustre.ldlm_intent.opc_exec", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_EXEC , "", HFILL}},
10062 { &hf_lustre_ldlm_intent_opc_pin,
10063 { "pin", "lustre.ldlm_intent.opc_pin", FT_BOOLEAN, 32, TFS(&flags_set_truth), IT_PIN , "", HFILL}},
10064 /*-------------------------------------------------------------------------------------------------------------*/
10065 { &hf_lustre_ldlm_intent_opc,
10066 { "intent opcode", "lustre.ldlm_intent.opc", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10067 { &hf_lustre_llog_rec_hdr_lrh_type,
10068 { "Lrh Type", "lustre.llog_rec_hdr.lrh_type", FT_UINT32, BASE_HEX, VALS(lustre_llog_op_type), 0, "", HFILL }},
10069 { &hf_lustre_llog_rec_hdr_lrh_len,
10070 { "Lrh Len", "lustre.llog_rec_hdr.lrh_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10071 { &hf_lustre_llog_setattr_rec_lsr_uid,
10072 { "Lsr Uid", "lustre.llog_setattr_rec.lsr_uid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10073 { &hf_lustre_lov_desc_ld_padding_1,
10074 { "Ld Padding 1", "lustre.lov_desc.ld_padding_1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10075 { &hf_lustre_obdo_o_padding_4,
10076 { "O Padding 4", "lustre.obdo.o_padding_4", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10077 { &hf_lustre_mgs_target_info_padding,
10078 { "Padding", "lustre.mgs_target_info.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10079 { &hf_lustre_obd_quotactl_qc_dqblk,
10080 { "Qc Dqblk", "lustre.obd_quotactl.qc_dqblk", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10081 { &hf_lustre_llogd_conn_body_lgdc_gen,
10082 { "Lgdc Gen", "lustre.llogd_conn_body.lgdc_gen", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10083 { &hf_lustre_llog_log_hdr_llh_tail,
10084 { "Llh Tail", "lustre.llog_log_hdr.llh_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10085 { &hf_lustre_obdo_o_size,
10086 { "O Size", "lustre.obdo.o_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10087 { &hf_lustre_ldlm_extent_start,
10088 { "Start", "lustre.ldlm_extent.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10089 { &hf_lustre_llog_size_change_rec_lsc_hdr,
10090 { "Lsc Hdr", "lustre.llog_size_change_rec.lsc_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10091 { &hf_lustre_llog_create_rec_lcr_tail,
10092 { "Lcr Tail", "lustre.llog_create_rec.lcr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10093 { &hf_lustre_llog_logid_lgl_oseq,
10094 { "Lgl SEQ", "lustre.llog_logid.lgl_oseq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10095 { &hf_lustre_llog_create_rec_lcr_hdr,
10096 { "Lcr Hdr", "lustre.llog_create_rec.lcr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10097 { &hf_lustre_llog_cookie_lgc_padding,
10098 { "Lgc Padding", "lustre.llog_cookie.lgc_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10099 { &hf_lustre_qunit_data_old_qd_type,
10100 { "Qd Type", "lustre.qunit_data_old.qd_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10101 { &hf_lustre_ldlm_flock_blocking_export,
10102 { "Blocking Export", "lustre.ldlm_flock.blocking_export", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10103 { &hf_lustre_lov_desc_ld_pattern,
10104 { "Ld Pattern", "lustre.lov_desc.ld_pattern", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10105 { &hf_lustre_qunit_data_qd_id,
10106 { "Qd Id", "lustre.qunit_data.qd_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10107 { &hf_lustre_mgs_target_info_mti_fsname,
10108 { "Mti Fsname", "lustre.mgs_target_info.mti_fsname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10109 { &hf_lustre_ldlm_request_lock_flags,
10110 { "Lock Flags", "lustre.ldlm_request.lock_flags", FT_UINT32, BASE_HEX, NULL, 0 , "", HFILL }},
10111 { &hf_lustre_obdo_o_mode,
10112 { "O Mode", "lustre.obdo.o_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10113 { &hf_lustre_mgs_target_info_mti_svname,
10114 { "Mti Svname", "lustre.mgs_target_info.mti_svname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10115 { &hf_lustre_llogd_body_lgd_logid,
10116 { "Lgd Logid", "lustre.llogd_body.lgd_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10117 { &hf_lustre_llog_log_hdr_llh_size,
10118 { "Llh Size", "lustre.llog_log_hdr.llh_size", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10119 { &hf_lustre_llog_create_rec_padding,
10120 { "Padding", "lustre.llog_create_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10121 { &hf_lustre_obdo_o_handle,
10122 { "O Handle", "lustre.obdo.o_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10123 { &hf_lustre_obdo_o_atime,
10124 { "O Atime", "lustre.obdo.o_atime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10125 { &hf_lustre_quota_adjust_qunit_qaq_id,
10126 { "Qaq Id", "lustre.quota_adjust_qunit.qaq_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10127 { &hf_lustre_ldlm_lock_desc_l_policy_data,
10128 { "L Policy Data", "lustre.ldlm_lock_desc.l_policy_data", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10129 { &hf_lustre_obd_quotactl_qc_cmd,
10130 { "Qc Cmd", "lustre.obd_quotactl.qc_cmd", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10131 { &hf_lustre_qunit_data_padding,
10132 { "Padding", "lustre.qunit_data.padding", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10133 { &hf_lustre_quota_adjust_qunit_qaq_flags,
10134 { "Qaq Flags", "lustre.quota_adjust_qunit.qaq_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10135 { &hf_lustre_ldlm_lock_desc_l_granted_mode,
10136 { "L Granted Mode", "lustre.ldlm_lock_desc.l_granted_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10137 { &hf_lustre_obdo_o_seq,
10138 { "O SEQ", "lustre.obdo.o_seq", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10139 { &hf_lustre_obdo_o_gid,
10140 { "O Gid", "lustre.obdo.o_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10141 { &hf_lustre_llog_catid_lci_logid,
10142 { "Lci Logid", "lustre.llog_catid.lci_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10143 { &hf_lustre_llog_rec_tail_lrt_index,
10144 { "Lrt Index", "lustre.llog_rec_tail.lrt_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10145 { &hf_lustre_lov_desc_ld_default_stripe_count,
10146 { "Ld Default Stripe Count", "lustre.lov_desc.ld_default_stripe_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10147 { &hf_lustre_ldlm_resource_desc_lr_padding,
10148 { "Lr Padding", "lustre.ldlm_resource_desc.lr_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10149 { &hf_lustre_cfg_marker_cm_vers,
10150 { "Cm Vers", "lustre.cfg_marker.cm_vers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10151 { &hf_lustre_llog_unlink_rec_lur_hdr,
10152 { "Lur Hdr", "lustre.llog_unlink_rec.lur_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10153 { &hf_lustre_llogd_body_lgd_index,
10154 { "Lgd Index", "lustre.llogd_body.lgd_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10155 { &hf_lustre_cfg_marker_cm_tgtname,
10156 { "Cm Tgtname", "lustre.cfg_marker.cm_tgtname", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10157 { &hf_lustre_llog_setattr_rec_lsr_ogen,
10158 { "Lsr Ogen", "lustre.llog_setattr_rec.lsr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10159 { &hf_lustre_llog_logid_rec_lid_hdr,
10160 { "Lid Hdr", "lustre.llog_logid_rec.lid_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10161 { &hf_lustre_obdo_o_ioepoch,
10162 { "O IOEpoch", "lustre.obdo.o_ioepoch", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10163 { &hf_lustre_ost_body_oa,
10164 { "Oa", "lustre.ost_body.oa", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10165 { &hf_lustre_llog_logid_rec_padding3,
10166 { "Padding3", "lustre.llog_logid_rec.padding3", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10167 { &hf_lustre_llog_log_hdr_llh_flags,
10168 { "Llh Flags", "lustre.llog_log_hdr.llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10169 {&hf_lustre_llog_hdr_llh_flag_zap_when_empty,
10170 {"LLOG_F_ZAP_WHEN_EMPTY","lustre.lustre.llog_log_hdr.llh_flag_zap",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_ZAP_WHEN_EMPTY,"",HFILL}},
10171 {&hf_lustre_llog_hdr_llh_flag_is_cat,
10172 {"LLOG_F_IS_CAT","lustre.lustre.llog_log_hdr.llh_flag_cat",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_IS_CAT,"",HFILL}},
10173 {&hf_lustre_llog_hdr_llh_flag_is_play,
10174 {"LOG_F_IS_PLAIN","lustre.lustre.llog_log_hdr.llh_flag_play",FT_BOOLEAN,32,TFS(&flags_set_truth),LLOG_F_IS_PLAIN,"",HFILL}},
10176 { &hf_lustre_llog_setattr_rec_lsr_oid,
10177 { "Lsr Oid", "lustre.llog_setattr_rec.lsr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10178 { &hf_lustre_llog_size_change_rec_padding,
10179 { "Padding", "lustre.llog_size_change_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10180 { &hf_lustre_mgs_target_info_mti_config_ver,
10181 { "Mti Config Ver", "lustre.mgs_target_info.mti_config_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10182 { &hf_lustre_cfg_marker_cm_createtime,
10183 { "Cm Createtime", "lustre.cfg_marker.cm_createtime",FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10184 { &hf_lustre_qunit_data_old_qd_count,
10185 { "Qd Count", "lustre.qunit_data_old.qd_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10186 { &hf_lustre_llog_catid_lci_padding1,
10187 { "Lci Padding1", "lustre.llog_catid.lci_padding1", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10188 { &hf_lustre_lov_desc_ld_active_tgt_count,
10189 { "Ld Active Tgt Count", "lustre.lov_desc.ld_active_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10190 { &hf_lustre_obdo_o_lcookie,
10191 { "O Lcookie", "lustre.obdo.o_lcookie", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10192 { &hf_lustre_llog_gen_rec_lgr_gen,
10193 { "Lgr Gen", "lustre.llog_gen_rec.lgr_gen", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10194 { &hf_lustre_obdo_o_id,
10195 { "O Id", "lustre.obdo.o_id", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10196 { &hf_lustre_mgs_target_info_mti_uuid,
10197 { "Mti Uuid", "lustre.mgs_target_info.mti_uuid", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10198 { &hf_lustre_llog_rec_hdr_lrh_index,
10199 { "Lrh Index", "lustre.llog_rec_hdr.lrh_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10200 { &hf_lustre_llog_setattr_rec_lsr_hdr,
10201 { "Lsr Hdr", "lustre.llog_setattr_rec.lsr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10202 { &hf_lustre_mgs_target_info_mti_stripe_index,
10203 { "Mti Stripe Index", "lustre.mgs_target_info.mti_stripe_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10204 { &hf_lustre_llog_gen_conn_cnt,
10205 { "Conn Cnt", "lustre.llog_gen.conn_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10206 { &hf_lustre_obdo_o_padding_6,
10207 { "O Padding 6", "lustre.obdo.o_padding_6", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10208 { &hf_lustre_llog_cookie_lgc_index,
10209 { "Lgc Index", "lustre.llog_cookie.lgc_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10210 { &hf_lustre_lov_desc_ld_uuid,
10211 { "Ld Uuid", "lustre.lov_desc.ld_uuid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10212 { &hf_lustre_llog_create_rec_lcr_oid,
10213 { "Lcr Oid", "lustre.llog_create_rec.lcr_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10214 { &hf_lustre_ldlm_reply_lock_desc,
10215 { "Lock Desc", "lustre.ldlm_reply.lock_desc", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10216 { &hf_lustre_lov_desc_ld_padding_0,
10217 { "Ld Padding 0", "lustre.lov_desc.ld_padding_0", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10218 { &hf_lustre_llog_unlink_rec_lur_ogen,
10219 { "Lur Ogen", "lustre.llog_unlink_rec.lur_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10220 { &hf_lustre_llog_orphan_rec_lor_hdr,
10221 { "Lor Hdr", "lustre.llog_orphan_rec.lor_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10222 { &hf_lustre_cfg_marker_cm_flags,
10223 { "Cm Flags", "lustre.cfg_marker.cm_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10224 { &hf_lustre_obdo_o_padding_3,
10225 { "O Padding 3", "lustre.obdo.o_padding_3", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10226 { &hf_lustre_ldlm_request_lock_desc,
10227 { "Lock Desc", "lustre.ldlm_request.lock_desc", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10228 { &hf_lustre_llog_orphan_rec_padding,
10229 { "Padding", "lustre.llog_orphan_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10230 { &hf_lustre_obdo_o_flags,
10231 { "O Flags", "lustre.obdo.o_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10232 { &hf_lustre_mgs_target_info_mti_params,
10233 { "Mti Params", "lustre.mgs_target_info.mti_params", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10234 { &hf_lustre_llog_logid_lgl_ogen,
10235 { "Lgl Ogen", "lustre.llog_logid.lgl_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10236 { &hf_lustre_cfg_marker_cm_comment,
10237 { "Cm Comment", "lustre.cfg_marker.cm_comment", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10238 { &hf_lustre_llog_unlink_rec_lur_oid,
10239 { "Lur Oid", "lustre.llog_unlink_rec.lur_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10240 { &hf_lustre_qunit_data_qd_count,
10241 { "Qd Count", "lustre.qunit_data.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10242 { &hf_lustre_obdo_o_mtime,
10243 { "O Mtime", "lustre.obdo.o_mtime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10244 { &hf_lustre_obdo_o_blksize,
10245 { "O Blksize", "lustre.obdo.o_blksize", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10246 { &hf_lustre_ldlm_res_id_name,
10247 { "Name", "lustre.ldlm_res_id.name", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10248 { &hf_lustre_ldlm_reply_lock_handle,
10249 { "Lock Handle", "lustre.ldlm_reply.lock_handle", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10250 { &hf_lustre_llogd_body_lgd_saved_index,
10251 { "Lgd Saved Index", "lustre.llogd_body.lgd_saved_index", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10252 { &hf_lustre_qunit_data_old_qd_isblk,
10253 { "Qd Isblk", "lustre.qunit_data_old.qd_isblk", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10254 { &hf_lustre_obdo_o_blocks,
10255 { "O Blocks", "lustre.obdo.o_blocks", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10256 { &hf_lustre_lov_desc_ld_padding_2,
10257 { "Ld Padding 2", "lustre.lov_desc.ld_padding_2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10258 { &hf_lustre_llog_logid_rec_lid_tail,
10259 { "Lid Tail", "lustre.llog_logid_rec.lid_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10260 { &hf_lustre_obdo_o_grant,
10261 { "O Grant", "lustre.obdo.o_grant", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10262 { &hf_lustre_obdo_o_padding_2,
10263 { "O Padding 2", "lustre.obdo.o_padding_2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10264 { &hf_lustre_quota_adjust_qunit_qaq_iunit_sz,
10265 { "Qaq Iunit Sz", "lustre.quota_adjust_qunit.qaq_iunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10266 { &hf_lustre_llog_unlink_rec_padding,
10267 { "Padding", "lustre.llog_unlink_rec.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10268 { &hf_lustre_ldlm_lock_desc_l_req_mode,
10269 { "L Req Mode", "lustre.ldlm_lock_desc.l_req_mode", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_mode_t_vals), 0, "", HFILL }},
10270 { &hf_lustre_ldlm_extent_end,
10271 { "End", "lustre.ldlm_extent.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10272 { &hf_lustre_llog_gen_rec_lgr_hdr,
10273 { "Lgr Hdr", "lustre.llog_gen_rec.lgr_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10274 { &hf_lustre_llog_orphan_rec_lor_ogen,
10275 { "Lor Ogen", "lustre.llog_orphan_rec.lor_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10276 { &hf_lustre_llogd_body_lgd_llh_flags,
10277 { "Lgd Llh Flags", "lustre.llogd_body.lgd_llh_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10278 { &hf_lustre_llog_log_hdr_llh_cat_idx,
10279 { "Llh Cat Idx", "lustre.llog_log_hdr.llh_cat_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10280 { &hf_lustre_llog_log_hdr_llh_bitmap_offset,
10281 { "Llh Bitmap Offset", "lustre.llog_log_hdr.llh_bitmap_offset", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10282 { &hf_lustre_llog_orphan_rec_lor_oid,
10283 { "Lor Oid", "lustre.llog_orphan_rec.lor_oid", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10284 { &hf_lustre_ldlm_reply_lock_padding,
10285 { "Lock Padding", "lustre.ldlm_reply.lock_padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10286 { &hf_lustre_obd_quotactl_qc_id,
10287 { "Qc Id", "lustre.obd_quotactl.qc_id", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10288 { &hf_lustre_llog_logid_rec_padding4,
10289 { "Padding4", "lustre.llog_logid_rec.padding4", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10290 { &hf_lustre_llog_setattr_rec_lsr_gid,
10291 { "Lsr Gid", "lustre.llog_setattr_rec.lsr_gid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10292 { &hf_lustre_obd_quotactl_qc_type,
10293 { "Qc Type", "lustre.obd_quotactl.qc_type", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10294 { &hf_lustre_cfg_marker_padding,
10295 { "Padding", "lustre.cfg_marker.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10296 { &hf_lustre_mgs_target_info_mti_nids,
10297 { "Mti Nids", "lustre.mgs_target_info.mti_nids", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10298 { &hf_lustre_obdo_o_stripe_idx,
10299 { "O Stripe Idx", "lustre.obdo.o_stripe_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10300 { &hf_lustre_llogd_conn_body_lgdc_logid,
10301 { "Lgdc Logid", "lustre.llogd_conn_body.lgdc_logid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10302 { &hf_lustre_ldlm_flock_blocking_pid,
10303 { "Blocking Pid", "lustre.ldlm_flock.blocking_pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10304 { &hf_lustre_lov_desc_ld_tgt_count,
10305 { "Ld Tgt Count", "lustre.lov_desc.ld_tgt_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10306 { &hf_lustre_llogd_body_lgd_cur_offset,
10307 { "Lgd Cur Offset", "lustre.llogd_body.lgd_cur_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10308 { &hf_lustre_llog_create_rec_lcr_ogen,
10309 { "Lcr Ogen", "lustre.llog_create_rec.lcr_ogen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10310 { &hf_lustre_qunit_data_old2_qd_count,
10311 { "Qd Count", "lustre.qunit_data_old2.qd_count", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10312 { &hf_lustre_opnum,
10313 { "Operation", "lustre.opnum", FT_UINT16, BASE_DEC, NULL, 0, "", HFILL }},
10314 { &hf_lustre_qunit_data_old2_qd_flags,
10315 { "Qd Flags", "lustre.qunit_data_old2.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10316 { &hf_lustre_ldlm_flock_start,
10317 { "Start", "lustre.ldlm_flock.start", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10318 { &hf_lustre_quota_adjust_qunit_qaq_bunit_sz,
10319 { "Qaq Bunit Sz", "lustre.quota_adjust_qunit.qaq_bunit_sz", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10320 { &hf_lustre_ldlm_flock_pid,
10321 { "Pid", "lustre.ldlm_flock.pid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10322 { &hf_lustre_lov_desc_ld_default_stripe_size,
10323 { "Ld Default Stripe Size", "lustre.lov_desc.ld_default_stripe_size", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10324 { &hf_lustre_llog_log_hdr_llh_tgtuuid,
10325 { "Llh Tgtuuid", "lustre.llog_log_hdr.llh_tgtuuid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10326 { &hf_lustre_cfg_marker_cm_step,
10327 { "Cm Step", "lustre.cfg_marker.cm_step", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10328 { &hf_lustre_mgs_send_param_mgs_param,
10329 { "Mgs Param", "lustre.mgs_send_param.mgs_param", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }},
10330 { &hf_lustre_llog_create_rec_lcr_fid,
10331 { "Lcr Fid", "lustre.llog_create_rec.lcr_fid", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10332 { &hf_lustre_lov_desc_ld_default_stripe_offset,
10333 { "Ld Default Stripe Offset", "lustre.lov_desc.ld_default_stripe_offset", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10334 { &hf_lustre_ldlm_resource_desc_lr_name,
10335 { "Lr Name", "lustre.ldlm_resource_desc.lr_name", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10336 { &hf_lustre_llog_rec_tail_lrt_len,
10337 { "Lrt Len", "lustre.llog_rec_tail.lrt_len", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10338 { &hf_lustre_llog_log_hdr_llh_timestamp,
10339 { "Llh Timestamp", "lustre.llog_log_hdr.llh_timestamp", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10340 { &hf_lustre_llog_catid_lci_padding2,
10341 { "Lci Padding2", "lustre.llog_catid.lci_padding2", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10342 { &hf_lustre_llogd_conn_body_lgdc_ctxt_idx,
10343 { "Lgdc Ctxt Idx", "lustre.llogd_conn_body.lgdc_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10344 { &hf_lustre_cfg_marker_cm_canceltime,
10345 { "Cm Canceltime", "lustre.cfg_marker.cm_canceltime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10346 { &hf_lustre_mgs_target_info_mti_lustre_ver,
10347 { "Mti Lustre Ver", "lustre.mgs_target_info.mti_lustre_ver", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10348 { &hf_lustre_obdo_o_parent_ver,
10349 { "O Parent VER", "lustre.obdo.o_parent_ver", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10350 { &hf_lustre_qunit_data_qd_flags,
10351 { "Qd Flags", "lustre.qunit_data.qd_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10352 { &hf_lustre_llog_logid_rec_lid_id,
10353 { "Lid Id", "lustre.llog_logid_rec.lid_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10354 { &hf_lustre_obdo_o_parent_oid,
10355 { "O Parent OID", "lustre.obdo.o_parent_oid", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }},
10356 { &hf_lustre_llog_gen_mnt_cnt,
10357 { "Mnt Cnt", "lustre.llog_gen.mnt_cnt", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10358 { &hf_lustre_llog_size_change_rec_lsc_tail,
10359 { "Lsc Tail", "lustre.llog_size_change_rec.lsc_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10360 { &hf_lustre_obdo_o_padding_5,
10361 { "O Padding 5", "lustre.obdo.o_padding_5", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10362 { &hf_lustre_ldlm_lock_desc_l_resource,
10363 { "L Resource", "lustre.ldlm_lock_desc.l_resource", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10364 { &hf_lustre_obdo_o_parent_seq,
10365 { "O Parent SEQ", "lustre.obdo.o_parent_seq", FT_UINT64, BASE_HEX, NULL, 0, "", HFILL }},
10366 { &hf_lustre_ldlm_request_lock_count,
10367 { "Lock Count", "lustre.ldlm_request.lock_count", FT_UINT32, BASE_HEX_DEC, NULL, 0, "", HFILL }},
10368 { &hf_lustre_ldlm_flock_end,
10369 { "End", "lustre.ldlm_flock.end", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10370 { &hf_lustre_mgs_target_info_mti_nid_count,
10371 { "Mti Nid Count", "lustre.mgs_target_info.mti_nid_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10372 /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
10373 { &hf_lustre_mgs_target_info,
10374 { "mgs target info", "lustre.mgs_target_info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10375 { &hf_lustre_mgs_send_param,
10376 { "mgs send param", "lustre.mgs_send_param", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10377 /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
10378 { &hf_lustre_ost_lvb,
10379 { "ost lvb data", "lustre.ost_lvb", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }},
10381 { &hf_lustre_obdo_o_ctime,
10382 { "O Ctime", "lustre.obdo.o_ctime",FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10383 { &hf_lustre_ldlm_reply_lock_policy_res2,
10384 { "Lock Policy Res2", "lustre.ldlm_reply.lock_policy_res2", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10385 { &hf_lustre_llogd_body_lgd_ctxt_idx,
10386 { "Lgd Ctxt Idx", "lustre.llogd_body.lgd_ctxt_idx", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10387 { &hf_lustre_lov_desc_ld_qos_maxage,
10388 { "Ld Qos Maxage", "lustre.lov_desc.ld_qos_maxage", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10389 { &hf_lustre_ldlm_resource_desc_lr_type,
10390 { "Lr Type", "lustre.ldlm_resource_desc.lr_type", FT_UINT16, BASE_DEC, VALS(lustre_ldlm_type_t_vals), 0, "", HFILL }},
10391 { &hf_lustre_llog_setattr_rec_lsr_tail,
10392 { "Lsr Tail", "lustre.llog_setattr_rec.lsr_tail", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10393 { &hf_lustre_llog_cookie_lgc_subsys,
10394 { "Lgc Subsys", "lustre.llog_cookie.lgc_subsys", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10395 { &hf_lustre_llog_log_hdr_llh_hdr,
10396 { "Llh Hdr", "lustre.llog_log_hdr.llh_hdr", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }},
10397 { &hf_lustre_llog_log_hdr_llh_reserved,
10398 { "Llh Reserved", "lustre.llog_log_hdr.llh_reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10400 { &hf_lustre_extra_padding,
10401 { "extra padding", "lustre.msg_v2_extra_padding", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10402 { &hf_lustre_ldlm_reply,
10403 { "ldlm reply", "lustre.ldlm_reply", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10404 { &hf_lustre_ldlm_request,
10405 { "ldlm request", "lustre.ldlm_request", FT_NONE, BASE_NONE, NULL, 0, "", HFILL}},
10407 /* add for lustre_user.h */
10408 { &hf_lustre_obd_dqinfo_dqi_valid,
10409 { "Dqi Valid", "lustre.obd_dqinfo.dqi_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10410 { &hf_lustre_obd_dqblk_dqb_isoftlimit,
10411 { "Dqb Isoftlimit", "lustre.obd_dqblk.dqb_isoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10412 { &hf_lustre_obd_dqblk_dqb_bhardlimit,
10413 { "Dqb Bhardlimit", "lustre.obd_dqblk.dqb_bhardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10414 { &hf_lustre_obd_dqblk_dqb_curspace,
10415 { "Dqb Curspace", "lustre.obd_dqblk.dqb_curspace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10416 { &hf_lustre_obd_dqblk_dqb_itime,
10417 { "Dqb Itime", "lustre.obd_dqblk.dqb_itime", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10418 { &hf_lustre_obd_dqblk_dqb_valid,
10419 { "Dqb Valid", "lustre.obd_dqblk.dqb_valid", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10420 { &hf_lustre_obd_dqinfo_dqi_igrace,
10421 { "Dqi Igrace", "lustre.obd_dqinfo.dqi_igrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10422 { &hf_lustre_obd_dqinfo_dqi_bgrace,
10423 { "Dqi Bgrace", "lustre.obd_dqinfo.dqi_bgrace", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10424 { &hf_lustre_obd_dqblk_padding,
10425 { "Padding", "lustre.obd_dqblk.padding", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10426 { &hf_lustre_obd_dqblk_dqb_curinodes,
10427 { "Dqb Curinodes", "lustre.obd_dqblk.dqb_curinodes", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10428 { &hf_lustre_obd_dqblk_dqb_bsoftlimit,
10429 { "Dqb Bsoftlimit", "lustre.obd_dqblk.dqb_bsoftlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }},
10430 { &hf_lustre_obd_dqinfo_dqi_flags,
10431 { "Dqi Flags", "lustre.obd_dqinfo.dqi_flags", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }},
10432 { &hf_lustre_obd_dqblk_dqb_btime,
10433 { "Dqb Btime", "lustre.obd_dqblk.dqb_btime", FT_ABSOLUTE_TIME, BASE_DEC, NULL, 0, "", HFILL }},
10434 { &hf_lustre_obd_dqblk_dqb_ihardlimit,
10435 { "Dqb Ihardlimit", "lustre.obd_dqblk.dqb_ihardlimit", FT_UINT64, BASE_DEC, NULL, 0, "", HFILL }}
10440 static gint *ett[] = {
10442 &ett_lustre_lustre_handle_cookie,
10443 &ett_lustre_lustre_msg_v1,
10444 &ett_lustre_lustre_handle_v1,
10445 &ett_lustre_lustre_msg_v2,
10446 &ett_lustre_ptlrpc_body,
10447 &ett_lustre_lustre_handle_v2,
10448 &ett_lustre_obd_connect_data,
10449 &ett_lustre_lov_mds_md_v1,
10450 &ett_lustre_lov_ost_data_v1,
10451 &ett_lustre_obd_statfs,
10452 &ett_lustre_obd_ioobj,
10453 &ett_lustre_niobuf_remote,
10454 &ett_lustre_ost_lvb,
10455 &ett_lustre_ll_fid,
10456 &ett_lustre_obd_quotactl,
10457 &ett_lustre_obd_dqinfo,
10458 &ett_lustre_obd_dqblk,
10459 &ett_lustre_quota_adjust_qunit,
10460 &ett_lustre_mdt_body,
10461 &ett_lustre_mdt_rec_setattr,
10462 &ett_lustre_mdt_rec_create,
10463 &ett_lustre_mdt_rec_link,
10464 &ett_lustre_mdt_rec_unlink,
10465 &ett_lustre_mdt_rec_rename,
10466 &ett_lustre_mdt_rec_setxattr,
10467 &ett_lustre_lov_desc,
10468 &ett_lustre_obd_uuid,
10469 &ett_lustre_ldlm_res_id,
10470 &ett_lustre_ldlm_extent,
10471 &ett_lustre_ldlm_inodebits,
10472 &ett_lustre_ldlm_flock,
10473 &ett_lustre_ldlm_intent_opc,
10474 &ett_lustre_ldlm_resource_desc,
10475 &ett_lustre_ldlm_res_id,
10476 &ett_lustre_ldlm_lock_desc,
10477 &ett_lustre_ldlm_resource_desc,
10478 &ett_lustre_ldlm_request,
10479 &ett_lustre_ldlm_lock_desc,
10480 &ett_lustre_lustre_handle,
10481 &ett_lustre_ldlm_reply,
10482 &ett_lustre_ldlm_lock_desc,
10483 &ett_lustre_lustre_handle,
10484 &ett_lustre_mgs_send_param,
10485 &ett_lustre_mgs_target_info,
10486 &ett_lustre_cfg_marker,
10487 &ett_lustre_llog_logid,
10488 &ett_lustre_llog_catid,
10489 &ett_lustre_llog_logid,
10490 &ett_lustre_lov_mds_md,
10491 &ett_lustre_llog_logid,
10492 &ett_lustre_llog_rec_hdr,
10493 &ett_lustre_llog_rec_tail,
10494 &ett_lustre_llog_logid_rec,
10495 &ett_lustre_llog_rec_hdr,
10496 &ett_lustre_llog_logid,
10497 &ett_lustre_llog_rec_tail,
10498 &ett_lustre_lov_mds_md,
10499 &ett_lustre_llog_rec_hdr,
10500 &ett_lustre_llog_rec_tail,
10501 &ett_lustre_llog_create_rec,
10502 &ett_lustre_llog_rec_hdr,
10503 &ett_lustre_ll_fid,
10504 &ett_lustre_llog_rec_tail,
10505 &ett_lustre_llog_orphan_rec,
10506 &ett_lustre_llog_rec_hdr,
10507 &ett_lustre_llog_rec_tail,
10508 &ett_lustre_llog_unlink_rec,
10509 &ett_lustre_llog_rec_hdr,
10510 &ett_lustre_llog_rec_tail,
10511 &ett_lustre_llog_setattr_rec,
10512 &ett_lustre_llog_rec_hdr,
10513 &ett_lustre_llog_rec_tail,
10514 &ett_lustre_llog_size_change_rec,
10515 &ett_lustre_llog_rec_hdr,
10516 &ett_lustre_ll_fid,
10517 &ett_lustre_llog_rec_tail,
10518 &ett_lustre_llog_gen,
10519 &ett_lustre_llog_gen_rec,
10520 &ett_lustre_llog_rec_hdr,
10521 &ett_lustre_llog_gen,
10522 &ett_lustre_llog_rec_tail,
10523 &ett_lustre_llog_log_hdr,
10524 &ett_lustre_llog_rec_hdr,
10525 &ett_lustre_obd_uuid,
10526 &ett_lustre_llog_rec_tail,
10527 &ett_lustre_llog_cookie,
10528 &ett_lustre_llog_logid,
10529 &ett_lustre_llogd_body,
10530 &ett_lustre_llog_logid,
10531 &ett_lustre_llogd_conn_body,
10532 &ett_lustre_llog_gen,
10533 &ett_lustre_llog_logid,
10534 &ett_lustre_llog_logid,
10536 &ett_lustre_lustre_handle,
10537 &ett_lustre_llog_cookie,
10538 &ett_lustre_ost_body,
10540 &ett_lustre_qunit_data,
10541 &ett_lustre_qunit_data_old2,
10542 &ett_lustre_qunit_data_old,
10543 &ett_lustre_ldlm_lock_flags,
10544 &ett_lustre_llog_log_llh_flags,
10548 proto_lustre = proto_register_protocol("Lustre", "lustre", "lustre");
10549 proto_register_field_array(proto_lustre, hf, array_length (hf));
10550 proto_register_subtree_array(ett, array_length(ett));
10554 void proto_reg_handoff_lustre(void)
10556 dissector_handle_t lustre_handle;
10557 lustre_handle=create_dissector_handle(dissect_lustre, proto_lustre);
10558 /* we use Lustre only if we get ptl_index = One of this code (we have removed the bulk code) */
10559 /* in LNET we test if the message is a put or not before adding an lnet.ptl_index value */
10560 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
10561 dissector_add("lnet.ptl_index", CONNMGR_REQUEST_PORTAL , lustre_handle);
10562 dissector_add("lnet.ptl_index", CONNMGR_REPLY_PORTAL , lustre_handle);
10563 dissector_add("lnet.ptl_index", OSC_REPLY_PORTAL , lustre_handle);
10564 dissector_add("lnet.ptl_index", OST_IO_PORTAL , lustre_handle);
10565 dissector_add("lnet.ptl_index", OST_CREATE_PORTAL , lustre_handle);
10566 dissector_add("lnet.ptl_index", MDC_REPLY_PORTAL , lustre_handle);
10567 dissector_add("lnet.ptl_index", MDS_REQUEST_PORTAL , lustre_handle);
10568 dissector_add("lnet.ptl_index", LDLM_CB_REQUEST_PORTAL , lustre_handle);
10569 dissector_add("lnet.ptl_index", LDLM_CB_REPLY_PORTAL , lustre_handle);
10570 dissector_add("lnet.ptl_index", LDLM_CANCEL_REQUEST_PORTAL, lustre_handle);
10571 dissector_add("lnet.ptl_index", LDLM_CANCEL_REPLY_PORTAL , lustre_handle);
10572 dissector_add("lnet.ptl_index", MDS_SETATTR_PORTAL , lustre_handle);
10573 dissector_add("lnet.ptl_index", MDS_READPAGE_PORTAL , lustre_handle);
10574 dissector_add("lnet.ptl_index", MGC_REPLY_PORTAL , lustre_handle);
10575 dissector_add("lnet.ptl_index", MGS_REQUEST_PORTAL , lustre_handle);
10576 dissector_add("lnet.ptl_index", MGS_REPLY_PORTAL , lustre_handle);
10577 dissector_add("lnet.ptl_index", OST_REQUEST_PORTAL , lustre_handle);