iPXE
ib_mad.h
Go to the documentation of this file.
1 #ifndef _IPXE_IB_MAD_H
2 #define _IPXE_IB_MAD_H
3 
4 /** @file
5  *
6  * Infiniband management datagrams
7  *
8  */
9 
10 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11 FILE_SECBOOT ( PERMITTED );
12 
13 #include <stdint.h>
14 #include <ipxe/ib_packet.h>
15 
16 /*****************************************************************************
17  *
18  * Subnet management MADs
19  *
20  *****************************************************************************
21  */
22 
23 /** A subnet management header
24  *
25  * Defined in sections 14.2.1.1 and 14.2.1.2 of the IBA.
26  */
27 struct ib_smp_hdr {
32 } __attribute__ (( packed ));
33 
34 /** Subnet management class version */
35 #define IB_SMP_CLASS_VERSION 1
36 
37 /** Subnet management direction bit
38  *
39  * This bit resides in the "status" field in the MAD header.
40  */
41 #define IB_SMP_STATUS_D_INBOUND 0x8000
42 
43 /* Subnet management attributes */
44 #define IB_SMP_ATTR_NOTICE 0x0002
45 #define IB_SMP_ATTR_NODE_DESC 0x0010
46 #define IB_SMP_ATTR_NODE_INFO 0x0011
47 #define IB_SMP_ATTR_SWITCH_INFO 0x0012
48 #define IB_SMP_ATTR_GUID_INFO 0x0014
49 #define IB_SMP_ATTR_PORT_INFO 0x0015
50 #define IB_SMP_ATTR_PKEY_TABLE 0x0016
51 #define IB_SMP_ATTR_SL_TO_VL_TABLE 0x0017
52 #define IB_SMP_ATTR_VL_ARB_TABLE 0x0018
53 #define IB_SMP_ATTR_LINEAR_FORWARD_TABLE 0x0019
54 #define IB_SMP_ATTR_RANDOM_FORWARD_TABLE 0x001A
55 #define IB_SMP_ATTR_MCAST_FORWARD_TABLE 0x001B
56 #define IB_SMP_ATTR_SM_INFO 0x0020
57 #define IB_SMP_ATTR_VENDOR_DIAG 0x0030
58 #define IB_SMP_ATTR_LED_INFO 0x0031
59 #define IB_SMP_ATTR_VENDOR_MASK 0xFF00
60 
61 /**
62  * A Node Description attribute
63  *
64  * Defined in section 14.2.5.2 of the IBA
65  */
66 struct ib_node_desc {
67  char node_string[64];
68 } __attribute__ (( packed ));
69 
70 /** A Node Information attribute
71  *
72  * Defined in section 14.2.5.3 of the IBA.
73  */
74 struct ib_node_info {
87 } __attribute__ ((packed));
88 
89 #define IB_NODE_TYPE_HCA 0x01
90 #define IB_NODE_TYPE_SWITCH 0x02
91 #define IB_NODE_TYPE_ROUTER 0x03
92 
93 /** A GUID Information attribute
94  *
95  * Defined in section 14.2.5.5 of the IBA.
96  */
97 struct ib_guid_info {
98  uint8_t guid[8][8];
99 } __attribute__ (( packed ));
100 
101 /** A Port Information attribute
102  *
103  * Defined in section 14.2.5.6 of the IBA.
104  */
105 struct ib_port_info {
138 } __attribute__ (( packed ));
139 
140 #define IB_LINK_WIDTH_1X 0x01
141 #define IB_LINK_WIDTH_4X 0x02
142 #define IB_LINK_WIDTH_8X 0x04
143 #define IB_LINK_WIDTH_12X 0x08
144 
145 #define IB_LINK_SPEED_SDR 0x01
146 #define IB_LINK_SPEED_DDR 0x02
147 #define IB_LINK_SPEED_QDR 0x04
148 #define IB_LINK_SPEED_FDR10 0x08
149 #define IB_LINK_SPEED_FDR 0x10
150 #define IB_LINK_SPEED_EDR 0x20
151 
152 #define IB_PORT_STATE_DOWN 0x01
153 #define IB_PORT_STATE_INIT 0x02
154 #define IB_PORT_STATE_ARMED 0x03
155 #define IB_PORT_STATE_ACTIVE 0x04
156 
157 #define IB_PORT_PHYS_STATE_SLEEP 0x01
158 #define IB_PORT_PHYS_STATE_POLLING 0x02
159 
160 #define IB_MTU_256 0x01
161 #define IB_MTU_512 0x02
162 #define IB_MTU_1024 0x03
163 #define IB_MTU_2048 0x04
164 #define IB_MTU_4096 0x05
165 
166 #define IB_VL_0 0x01
167 #define IB_VL_0_1 0x02
168 #define IB_VL_0_3 0x03
169 #define IB_VL_0_7 0x04
170 #define IB_VL_0_14 0x05
171 
172 /** A Partition Key Table attribute
173  *
174  * Defined in section 14.2.5.7 of the IBA.
175  */
178 } __attribute__ (( packed ));
179 
180 /** A subnet management attribute */
181 union ib_smp_data {
188 } __attribute__ (( packed ));
189 
190 /** A subnet management directed route path */
193 } __attribute__ (( packed ));
194 
195 /** Subnet management MAD class-specific data */
199 } __attribute__ (( packed ));
200 
201 /*****************************************************************************
202  *
203  * Subnet administration MADs
204  *
205  *****************************************************************************
206  */
207 
208 #define IB_SA_CLASS_VERSION 2
209 
210 #define IB_SA_METHOD_DELETE_RESP 0x95
211 
212 struct ib_rmpp_hdr {
214 } __attribute__ (( packed ));
215 
216 struct ib_sa_hdr {
221 } __attribute__ (( packed ));
222 
223 #define IB_SA_ATTR_SERVICE_REC 0x31
224 #define IB_SA_ATTR_PATH_REC 0x35
225 #define IB_SA_ATTR_MC_MEMBER_REC 0x38
226 
229  union ib_gid gid;
234  char name[64];
239 } __attribute__ (( packed ));
240 
241 #define IB_SA_SERVICE_REC_NAME (1<<6)
242 
245  union ib_gid dgid;
246  union ib_gid sgid;
257 } __attribute__ (( packed ));
258 
259 #define IB_SA_PATH_REC_DGID (1<<2)
260 #define IB_SA_PATH_REC_SGID (1<<3)
261 
263  union ib_gid mgid;
277 } __attribute__ (( packed ));
278 
279 #define IB_SA_MCMEMBER_REC_MGID (1<<0)
280 #define IB_SA_MCMEMBER_REC_PORT_GID (1<<1)
281 #define IB_SA_MCMEMBER_REC_QKEY (1<<2)
282 #define IB_SA_MCMEMBER_REC_MLID (1<<3)
283 #define IB_SA_MCMEMBER_REC_MTU_SELECTOR (1<<4)
284 #define IB_SA_MCMEMBER_REC_MTU (1<<5)
285 #define IB_SA_MCMEMBER_REC_TRAFFIC_CLASS (1<<6)
286 #define IB_SA_MCMEMBER_REC_PKEY (1<<7)
287 #define IB_SA_MCMEMBER_REC_RATE_SELECTOR (1<<8)
288 #define IB_SA_MCMEMBER_REC_RATE (1<<9)
289 #define IB_SA_MCMEMBER_REC_PACKET_LIFE_TIME_SELECTOR (1<<10)
290 #define IB_SA_MCMEMBER_REC_PACKET_LIFE_TIME (1<<11)
291 #define IB_SA_MCMEMBER_REC_SL (1<<12)
292 #define IB_SA_MCMEMBER_REC_FLOW_LABEL (1<<13)
293 #define IB_SA_MCMEMBER_REC_HOP_LIMIT (1<<14)
294 #define IB_SA_MCMEMBER_REC_SCOPE (1<<15)
295 #define IB_SA_MCMEMBER_REC_JOIN_STATE (1<<16)
296 #define IB_SA_MCMEMBER_REC_PROXY_JOIN (1<<17)
297 
298 union ib_sa_data {
302 } __attribute__ (( packed ));
303 
304 /*****************************************************************************
305  *
306  * Communication management MADs
307  *
308  *****************************************************************************
309  */
310 
311 /** Communication management class version */
312 #define IB_CM_CLASS_VERSION 2
313 
314 /* Communication management attributes */
315 #define IB_CM_ATTR_CLASS_PORT_INFO 0x0001
316 #define IB_CM_ATTR_CONNECT_REQUEST 0x0010
317 #define IB_CM_ATTR_MSG_RCPT_ACK 0x0011
318 #define IB_CM_ATTR_CONNECT_REJECT 0x0012
319 #define IB_CM_ATTR_CONNECT_REPLY 0x0013
320 #define IB_CM_ATTR_READY_TO_USE 0x0014
321 #define IB_CM_ATTR_DISCONNECT_REQUEST 0x0015
322 #define IB_CM_ATTR_DISCONNECT_REPLY 0x0016
323 #define IB_CM_ATTR_SERVICE_ID_RES_REQ 0x0016
324 #define IB_CM_ATTR_SERVICE_ID_RES_REQ_RESP 0x0018
325 #define IB_CM_ATTR_LOAD_ALTERNATE_PATH 0x0019
326 #define IB_CM_ATTR_ALTERNATE_PATH_RESPONSE 0x001a
327 
328 /** Communication management common fields */
329 struct ib_cm_common {
330  /** Local communication ID */
332  /** Remote communication ID */
334  /** Reserved */
336 } __attribute__ (( packed ));
337 
338 /** A communication management path */
339 struct ib_cm_path {
340  /** Local port LID */
342  /** Remote port LID */
344  /** Local port GID */
346  /** Remote port GID */
348  /** Flow label and rate */
350  /** Traffic class */
352  /** Hop limit */
354  /** SL and subnet local*/
356  /** Local ACK timeout */
358 } __attribute__ (( packed ));
359 
360 /** A communication management connection request
361  *
362  * Defined in section 12.6.5 of the IBA.
363  */
365  /** Local communication ID */
367  /** Reserved */
369  /** Service ID */
371  /** Local CA GUID */
373  /** Reserved */
375  /** Local queue key */
377  /** Local QPN and responder resources*/
379  /** Local EECN and initiator depth */
381  /** Remote EECN, remote CM response timeout, transport service
382  * type, EE flow control
383  */
385  /** Starting PSN, local CM response timeout and retry count */
387  /** Partition key */
389  /** Path packet payload MTU, RDC exists, RNR retry count */
391  /** Max CM retries and SRQ */
393  /** Primary path */
395  /** Alternate path */
397  /** Private data */
399 } __attribute__ (( packed ));
400 
401 /** CM transport types */
402 #define IB_CM_TRANSPORT_RC 0
403 #define IB_CM_TRANSPORT_UC 1
404 #define IB_CM_TRANSPORT_RD 2
405 
406 /** A communication management connection rejection
407  *
408  * Defined in section 12.6.7 of the IBA.
409  */
411  /** Local communication ID */
413  /** Remote communication ID */
415  /** Message rejected */
417  /** Reject information length */
419  /** Rejection reason */
421  /** Additional rejection information */
423  /** Private data */
425 } __attribute__ (( packed ));
426 
427 /** CM rejection reasons */
428 #define IB_CM_REJECT_BAD_SERVICE_ID 8
429 #define IB_CM_REJECT_STALE_CONN 10
430 #define IB_CM_REJECT_CONSUMER 28
431 
432 /** A communication management connection reply
433  *
434  * Defined in section 12.6.8 of the IBA.
435  */
437  /** Local communication ID */
439  /** Remote communication ID */
441  /** Local queue key */
443  /** Local QPN */
445  /** Local EECN */
447  /** Starting PSN */
449  /** Responder resources */
451  /** Initiator depth */
453  /** Target ACK delay, failover accepted, and end-to-end flow control */
455  /** RNR retry count, SRQ */
457  /** Local CA GUID */
459  /** Private data */
461 } __attribute__ (( packed ));
462 
463 /** A communication management ready to use reply
464  *
465  * Defined in section 12.6.9 of the IBA.
466  */
468  /** Local communication ID */
470  /** Remote communication ID */
472  /** Private data */
474 } __attribute__ (( packed ));
475 
476 /** A communication management disconnection request
477  *
478  * Defined in section 12.6.10 of the IBA.
479  */
481  /** Local communication ID */
483  /** Remote communication ID */
485  /** Remote QPN/EECN */
487  /** Private data */
489 } __attribute__ (( packed ));
490 
491 /** A communication management disconnection reply
492  *
493  * Defined in section 12.6.11 of the IBA.
494  */
496  /** Local communication ID */
498  /** Remote communication ID */
500  /** Private data */
502 } __attribute__ (( packed ));
503 
504 /** A communication management attribute */
505 union ib_cm_data {
514 } __attribute__ (( packed ));
515 
516 /*****************************************************************************
517  *
518  * MADs
519  *
520  *****************************************************************************
521  */
522 
523 /** Management datagram class_specific data */
527 } __attribute__ (( packed ));
528 
529 /** A management datagram transaction identifier */
530 struct ib_mad_tid {
533 } __attribute__ (( packed ));
534 
535 /** A management datagram common header
536  *
537  * Defined in section 13.4.2 of the IBA.
538  */
539 struct ib_mad_hdr {
546  struct ib_mad_tid tid;
550 } __attribute__ (( packed ));
551 
552 /* Management base version */
553 #define IB_MGMT_BASE_VERSION 1
554 
555 /* Management classes */
556 #define IB_MGMT_CLASS_SUBN_LID_ROUTED 0x01
557 #define IB_MGMT_CLASS_SUBN_DIRECTED_ROUTE 0x81
558 #define IB_MGMT_CLASS_SUBN_ADM 0x03
559 #define IB_MGMT_CLASS_PERF_MGMT 0x04
560 #define IB_MGMT_CLASS_BM 0x05
561 #define IB_MGMT_CLASS_DEVICE_MGMT 0x06
562 #define IB_MGMT_CLASS_CM 0x07
563 #define IB_MGMT_CLASS_SNMP 0x08
564 #define IB_MGMT_CLASS_VENDOR_RANGE2_START 0x30
565 #define IB_MGMT_CLASS_VENDOR_RANGE2_END 0x4f
566 
567 #define IB_MGMT_CLASS_MASK 0x7f
568 
569 /* Management methods */
570 #define IB_MGMT_METHOD_GET 0x01
571 #define IB_MGMT_METHOD_SET 0x02
572 #define IB_MGMT_METHOD_GET_RESP 0x81
573 #define IB_MGMT_METHOD_SEND 0x03
574 #define IB_MGMT_METHOD_TRAP 0x05
575 #define IB_MGMT_METHOD_REPORT 0x06
576 #define IB_MGMT_METHOD_REPORT_RESP 0x86
577 #define IB_MGMT_METHOD_TRAP_REPRESS 0x07
578 #define IB_MGMT_METHOD_DELETE 0x15
579 
580 /* Status codes */
581 #define IB_MGMT_STATUS_OK 0x0000
582 #define IB_MGMT_STATUS_BAD_VERSION 0x0001
583 #define IB_MGMT_STATUS_UNSUPPORTED_METHOD 0x0002
584 #define IB_MGMT_STATUS_UNSUPPORTED_METHOD_ATTR 0x0003
585 #define IB_MGMT_STATUS_INVALID_VALUE 0x0004
586 
587 /** A subnet management MAD */
588 struct ib_mad_smp {
594 } __attribute__ (( packed ));
595 
596 /** A subnet administration MAD */
597 struct ib_mad_sa {
602 } __attribute__ (( packed ));
603 
604 /** A communication management MAD */
605 struct ib_mad_cm {
608 } __attribute__ (( packed ));
609 
610 /** A management datagram */
611 union ib_mad {
612  struct ib_mad_hdr hdr;
613  struct ib_mad_smp smp;
614  struct ib_mad_sa sa;
615  struct ib_mad_cm cm;
617 } __attribute__ (( packed ));
618 
619 #endif /* _IPXE_IB_MAD_H */
uint16_t pkey
Partition key.
Definition: ib_mad.h:388
uint32_t starting_psn__local_timeout__retry_count
Starting PSN, local CM response timeout and retry count.
Definition: ib_mad.h:386
uint16_t remote_lid
Remote port LID.
Definition: ib_mad.h:343
struct ib_node_info node_info
Definition: ib_mad.h:183
uint32_t lease
Definition: ib_mad.h:232
A communication management connection reply.
Definition: ib_mad.h:436
uint32_t reserved1[37]
Definition: ib_mad.h:276
uint8_t method
Definition: ib_mad.h:543
uint32_t local_eecn
Local EECN.
Definition: ib_mad.h:446
uint32_t flow_label__rate
Flow label and rate.
Definition: ib_mad.h:349
unsigned short uint16_t
Definition: stdint.h:11
uint32_t data32[4]
Definition: ib_mad.h:237
struct ib_mad_hdr mad_hdr
Definition: ib_mad.h:606
uint16_t reason
Rejection reason.
Definition: ib_mad.h:420
uint8_t scope__join_state
Definition: ib_mad.h:273
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:484
uint8_t num_ports
Definition: ib_mad.h:78
uint8_t private_data[224]
Private data.
Definition: ib_mad.h:473
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
union ib_gid port_gid
Definition: ib_mad.h:264
uint8_t link_width_enabled
Definition: ib_mad.h:114
uint8_t tc
Traffic class.
Definition: ib_mad.h:351
struct ib_mad_hdr mad_hdr
Definition: ib_mad.h:589
uint16_t slid
Definition: ib_mad.h:248
uint8_t port_phys_state__link_down_def_state
Definition: ib_mad.h:118
char name[64]
Definition: ib_mad.h:234
uint8_t reserved[28]
Definition: ib_mad.h:31
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:469
uint8_t link_width_active
Definition: ib_mad.h:116
uint32_t comp_mask[2]
Definition: ib_mad.h:220
uint16_t max_credit_hint
Definition: ib_mad.h:136
uint64_t mkey
Definition: ib_mad.h:28
uint16_t mastersm_lid
Definition: ib_mad.h:109
uint32_t remote_qpn_eecn
Remote QPN/EECN.
Definition: ib_mad.h:486
union ib_smp_data smp_data
Definition: ib_mad.h:591
A subnet management MAD.
Definition: ib_mad.h:588
union ib_guid node_guid
Definition: ib_mad.h:80
uint16_t device_id
Definition: ib_mad.h:83
struct ib_cm_path primary
Primary path.
Definition: ib_mad.h:394
uint16_t slid
Definition: ib_mad.h:29
unsigned long long uint64_t
Definition: stdint.h:13
uint8_t private_data[196]
Private data.
Definition: ib_mad.h:460
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:499
uint8_t hop_limit
Hop limit.
Definition: ib_mad.h:353
A communication management disconnection reply.
Definition: ib_mad.h:495
uint16_t lid
Definition: ib_mad.h:108
union ib_guid service_id
Service ID.
Definition: ib_mad.h:370
union ib_gid dgid
Definition: ib_mad.h:245
A Node Description attribute.
Definition: ib_mad.h:66
uint8_t info[72]
Additional rejection information.
Definition: ib_mad.h:422
uint8_t resp_time_value
Definition: ib_mad.h:134
uint8_t hop_pointer
Definition: ib_mad.h:197
uint8_t message
Message rejected.
Definition: ib_mad.h:416
uint8_t mkey_prot_bits__lmc
Definition: ib_mad.h:119
uint64_t data64[2]
Definition: ib_mad.h:238
uint8_t reserved1
Definition: ib_mad.h:251
uint8_t mgmt_class
Definition: ib_mad.h:541
A subnet management header.
Definition: ib_mad.h:27
An Infiniband Global Identifier.
Definition: ib_packet.h:34
uint8_t private_data[92]
Private data.
Definition: ib_mad.h:398
uint32_t starting_psn
Starting PSN.
Definition: ib_mad.h:448
uint8_t link_speed_active__link_speed_enabled
Definition: ib_mad.h:120
uint8_t node_type
Definition: ib_mad.h:77
uint8_t mtu_selector__mtu
Definition: ib_mad.h:253
uint8_t base_version
Definition: ib_mad.h:75
struct ib_port_info port_info
Definition: ib_mad.h:185
uint32_t sl__flow_label__hop_limit
Definition: ib_mad.h:272
uint8_t local_phy_errors__overrun_errors
Definition: ib_mad.h:135
uint8_t guid[8][8]
Definition: ib_mad.h:98
A communication management MAD.
Definition: ib_mad.h:605
uint32_t low
Definition: ib_mad.h:532
uint8_t target_ack_delay__failover_accepted__ee_flow_ctrl
Target ACK delay, failover accepted, and end-to-end flow control.
Definition: ib_mad.h:454
uint64_t mkey
Definition: ib_mad.h:106
uint32_t local_qpn__responder_resources
Local QPN and responder resources.
Definition: ib_mad.h:378
uint8_t class_version
Definition: ib_mad.h:542
uint8_t initiator_depth
Initiator depth.
Definition: ib_mad.h:452
A communication management ready to use reply.
Definition: ib_mad.h:467
union ib_sa_data sa_data
Definition: ib_mad.h:601
struct ib_sa_hdr sa_hdr
Definition: ib_mad.h:600
union ib_guid local_ca
Local CA GUID.
Definition: ib_mad.h:458
uint32_t sm_key[2]
Definition: ib_mad.h:217
uint8_t local_port_num
Definition: ib_mad.h:85
uint8_t reserved__sl
Definition: ib_mad.h:252
uint8_t rnr_retry__srq
RNR retry count, SRQ.
Definition: ib_mad.h:456
uint16_t attrib_offset
Definition: ib_mad.h:219
uint8_t link_speed_supported__port_state
Definition: ib_mad.h:117
struct ib_smp_dr_path initial_path
Definition: ib_mad.h:592
uint32_t local_eecn__initiator_depth
Local EECN and initiator depth.
Definition: ib_mad.h:380
union ib_gid gid
Definition: ib_mad.h:229
uint32_t pkey__numb_path__reversible__tclass
Definition: ib_mad.h:250
A Node Information attribute.
Definition: ib_mad.h:74
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:471
struct ib_smp_hdr __attribute__((packed))
uint32_t remote_eecn__remote_timeout__service_type__ee_flow_ctrl
Remote EECN, remote CM response timeout, transport service type, EE flow control.
Definition: ib_mad.h:384
uint8_t responder_resources
Responder resources.
Definition: ib_mad.h:450
struct ib_cm_common common
Definition: ib_mad.h:506
uint8_t rate_selector__rate
Definition: ib_mad.h:254
uint16_t data16[8]
Definition: ib_mad.h:236
A communication management disconnection request.
Definition: ib_mad.h:480
uint8_t local_ack_timeout
Local ACK timeout.
Definition: ib_mad.h:357
uint16_t local_lid
Local port LID.
Definition: ib_mad.h:341
uint8_t reserved[224]
Reserved.
Definition: ib_mad.h:335
uint16_t pkey[32]
Definition: ib_mad.h:177
struct ib_cm_connect_reply connect_reply
Definition: ib_mad.h:509
struct ib_mad_cm cm
Definition: ib_mad.h:615
Communication management common fields.
Definition: ib_mad.h:329
union ib_gid remote_gid
Remote port GID.
Definition: ib_mad.h:347
A communication management connection request.
Definition: ib_mad.h:364
struct ib_mad_smp smp
Definition: ib_mad.h:613
uint8_t reserved[2]
Definition: ib_mad.h:548
struct ib_rmpp_hdr rmpp_hdr
Definition: ib_mad.h:599
uint32_t hop_limit__flow_label__raw_traffic
Definition: ib_mad.h:249
uint16_t pkey_violations
Definition: ib_mad.h:130
uint8_t client_reregister__subnet_timeout
Definition: ib_mad.h:133
uint8_t neighbour_mtu__mastersm_sl
Definition: ib_mad.h:121
uint32_t reserved0[1]
Reserved.
Definition: ib_mad.h:368
uint16_t reserved0
Definition: ib_mad.h:275
A management datagram common header.
Definition: ib_mad.h:539
uint16_t dlid
Definition: ib_mad.h:247
struct ib_service_record service_record
Definition: ib_mad.h:299
An Infiniband Globally Unique Identifier.
Definition: ib_packet.h:19
uint32_t qkey
Definition: ib_mad.h:265
char node_string[64]
Definition: ib_mad.h:67
struct ib_cm_ready_to_use ready_to_use
Definition: ib_mad.h:510
struct ib_path_record path_record
Definition: ib_mad.h:300
uint32_t raw[3]
Definition: ib_mad.h:213
struct ib_cm_disconnect_reply disconnect_reply
Definition: ib_mad.h:512
uint8_t private_data[224]
Private data.
Definition: ib_mad.h:501
uint8_t private_data[148]
Private data.
Definition: ib_mad.h:424
uint32_t cap_mask
Definition: ib_mad.h:110
uint8_t mtu_selector__mtu
Definition: ib_mad.h:267
unsigned char uint8_t
Definition: stdint.h:10
uint8_t private_data[220]
Private data.
Definition: ib_mad.h:488
uint8_t proxy_join__reserved
Definition: ib_mad.h:274
uint8_t vl_arbitration_low_cap
Definition: ib_mad.h:125
uint8_t guid_cap
Definition: ib_mad.h:132
uint8_t bytes[256]
Definition: ib_mad.h:616
struct ib_cm_connect_reject connect_reject
Definition: ib_mad.h:508
uint16_t qkey_violations
Definition: ib_mad.h:131
union ib_cm_data cm_data
Definition: ib_mad.h:607
A subnet management attribute.
Definition: ib_mad.h:181
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:331
uint8_t gid_prefix[8]
Definition: ib_mad.h:107
struct ib_mad_sa sa
Definition: ib_mad.h:614
uint32_t local_qkey
Local queue key.
Definition: ib_mad.h:376
unsigned int uint32_t
Definition: stdint.h:12
uint8_t vl_arbitration_high_cap
Definition: ib_mad.h:124
struct ib_mad_tid tid
Definition: ib_mad.h:546
struct ib_cm_path alternate
Alternate path.
Definition: ib_mad.h:396
uint32_t reserved2[35]
Definition: ib_mad.h:256
struct ib_mc_member_record mc_member_record
Definition: ib_mad.h:301
uint8_t tclass
Definition: ib_mad.h:268
uint8_t class_version
Definition: ib_mad.h:76
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:412
union ib_gid local_gid
Local port GID.
Definition: ib_mad.h:345
union ib_gid mgid
Definition: ib_mad.h:263
struct ib_cm_connect_request connect_request
Definition: ib_mad.h:507
uint8_t hops[64]
Definition: ib_mad.h:192
uint8_t key[16]
Definition: ib_mad.h:233
uint32_t local_qpn
Local QPN.
Definition: ib_mad.h:444
uint16_t diag_code
Definition: ib_mad.h:111
uint32_t revision
Definition: ib_mad.h:84
uint8_t base_version
Definition: ib_mad.h:540
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:482
uint8_t link_width_supported
Definition: ib_mad.h:115
A communication management connection rejection.
Definition: ib_mad.h:410
union ib_mad_class_specific class_specific
Definition: ib_mad.h:545
struct ib_mad_hdr hdr
Definition: ib_mad.h:612
uint8_t data8[16]
Definition: ib_mad.h:235
uint8_t max_cm_retries__srq
Max CM retries and SRQ.
Definition: ib_mad.h:392
union ib_guid local_ca
Local CA GUID.
Definition: ib_mad.h:372
uint64_t id
Definition: ib_mad.h:228
A communication management path.
Definition: ib_mad.h:339
struct ib_guid_info guid_info
Definition: ib_mad.h:184
struct ib_mad_hdr mad_hdr
Definition: ib_mad.h:598
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:333
uint8_t vl_high_limit
Definition: ib_mad.h:123
Infiniband packet format.
struct ib_cm_disconnect_request disconnect_request
Definition: ib_mad.h:511
uint32_t local_qkey
Local queue key.
Definition: ib_mad.h:442
uint8_t packet_lifetime_selector__packet_lifetime
Definition: ib_mad.h:271
uint8_t info_len
Reject information length.
Definition: ib_mad.h:418
struct ib_smp_hdr smp_hdr
Definition: ib_mad.h:590
struct ib_node_desc node_desc
Definition: ib_mad.h:182
FILE_SECBOOT(PERMITTED)
struct ib_smp_class_specific smp
Definition: ib_mad.h:526
uint8_t bytes[232]
Definition: ib_mad.h:513
uint16_t reserved
Definition: ib_mad.h:218
uint16_t attr_id
Definition: ib_mad.h:547
union ib_guid port_guid
Definition: ib_mad.h:81
uint8_t payload_mtu__rdc_exists__rnr_retry
Path packet payload MTU, RDC exists, RNR retry count.
Definition: ib_mad.h:390
A management datagram.
Definition: ib_mad.h:611
uint32_t high
Definition: ib_mad.h:531
uint32_t attr_mod
Definition: ib_mad.h:549
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:414
struct ib_pkey_table pkey_table
Definition: ib_mad.h:186
uint16_t partition_cap
Definition: ib_mad.h:82
uint16_t mkey_lease_period
Definition: ib_mad.h:112
uint16_t pkey
Definition: ib_mad.h:230
union ib_gid sgid
Definition: ib_mad.h:246
A Partition Key Table attribute.
Definition: ib_mad.h:176
uint8_t local_port_num
Definition: ib_mad.h:113
uint16_t reserved
Definition: ib_mad.h:231
uint32_t remote_id
Remote communication ID.
Definition: ib_mad.h:440
uint8_t init_type_reply__mtu_cap
Definition: ib_mad.h:126
uint16_t dlid
Definition: ib_mad.h:30
uint32_t preference__packet_lifetime__packet_lifetime_selector
Definition: ib_mad.h:255
uint32_t reserved1[1]
Reserved.
Definition: ib_mad.h:374
uint16_t mkey_violations
Definition: ib_mad.h:129
uint32_t link_round_trip_latency
Definition: ib_mad.h:137
A GUID Information attribute.
Definition: ib_mad.h:97
A subnet management directed route path.
Definition: ib_mad.h:191
union ib_guid sys_guid
Definition: ib_mad.h:79
uint8_t bytes[64]
Definition: ib_mad.h:187
uint32_t reserved0[2]
Definition: ib_mad.h:244
uint8_t operational_vls__enforcement
Definition: ib_mad.h:128
struct ib_smp_dr_path return_path
Definition: ib_mad.h:593
Subnet management MAD class-specific data.
Definition: ib_mad.h:196
A subnet administration MAD.
Definition: ib_mad.h:597
uint8_t rate_selector__rate
Definition: ib_mad.h:270
A Port Information attribute.
Definition: ib_mad.h:105
uint8_t vl_cap__init_type
Definition: ib_mad.h:122
A management datagram transaction identifier.
Definition: ib_mad.h:530
uint16_t pkey
Definition: ib_mad.h:269
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:497
uint8_t vendor_id[3]
Definition: ib_mad.h:86
uint16_t mlid
Definition: ib_mad.h:266
uint8_t sl__subnet_local
SL and subnet local.
Definition: ib_mad.h:355
uint16_t status
Definition: ib_mad.h:544
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:366
uint32_t local_id
Local communication ID.
Definition: ib_mad.h:438
Management datagram class_specific data.
Definition: ib_mad.h:524
A communication management attribute.
Definition: ib_mad.h:505
uint8_t vl_stall_count__hoq_life
Definition: ib_mad.h:127