Donadini Thibault
2007-Mar-21 08:10 UTC
[Lustre-discuss] Some strange values for lnet_hdr fields
Hi, In analyzing dump of lnet_hdr I notice some strange values i don''t understand : Below is a lnet_hdr screenshot for LNET_MSG_HELLO: 0000: ed 0d bc ee 01 00 00 00 65 01 01 0e 00 00 02 00 ........e....... 0010: 04 00 00 00 39 30 00 00 04 00 00 00 04 00 00 00 ....90.......... 0020: 02 c2 3f 9b 30 2c 04 00 02 00 00 00 10 00 00 00 ..?.0,.......... 0030: 02 00 03 fe 0e 01 01 65 00 00 00 00 00 00 00 00 .......e........ 0040: 02 00 00 00 00 00 00 00 65 01 01 0e ........e... I get : - 0xeebc0ded which is magic number for TCP (no pb) - 0x00000001 for protocol version 1 (no pb) - 0x000200000e010165 : 0e010165 is the peer''s nid (no pb) but what is/means 00020000 ? - the 2 next fields are for pids, dest_pid=00000004 (but sometimes i get 81e69fca or 0) and src_pid=00003039 (12345 in decimal which is the normal pid) - 0x00000004 for type (LNET_MSG_HELLO ,no pb) - 0x00000004 for payload_length (sometimes 0) But in lib-types.h it is notified that : /* A message contains a magic number and protocol version * code in the header''s dest_nid, the peer''s NID in the src_nid, and * LNET_MSG_HELLO in the type field. All other common fields are zero * (including payload_size; i.e. no payload). What are/mean non-zero values i get ? (pids, payload_length) Moreover, lnet_hello_t struct contains 2 fields : - incarnation and type Incarnation looks like a cookie, is it? I get type=1 or 2 or 3 what does it mean? Regards, Thibault DONADINI