Queue Pair (QP) error causes
Queue Pair (QP) error causes¶
The following table lists the possible RDMA Queue Pair (QP) specific errors.
Category |
Error |
Description |
|
|---|---|---|---|
Receiver Engine (RXE) |
[RX] pkt err, pkt bad format |
Received packet has an invalid format. |
|
[RX] pkt err, parser FSM invalid |
Packet parser finite state machine (FSM) encountered an invalid state. |
||
[RX] pkt err, HDR size invalid |
Packet header (HDR) size is invalid. |
||
[RX] pkt err, IPv4-len invalid |
IPv4 packet length field is invalid. |
||
[RX] pkt err, IPv6-len invalid |
IPv6 packet length field is invalid. |
||
[RX] pkt err, pkt tunnel invalid |
Tunneled packet format is invalid. |
||
[RX] pkt err, parser hint invalid |
Packet parser hint is invalid. |
||
[RX] pkt err, BTH opcode invalid |
Base Transport Header (BTH) opcode is invalid. |
||
[RX] pkt err, syndrome invalid |
Packet syndrome value is invalid. |
||
[RX] pkt err, RC max size invalid |
Reliable Connection (RC) packet maximum size is invalid. |
||
[RX] pkt err, RC min size invalid |
Reliable Connection (RC) packet minimum size is invalid. |
||
[RX] pkt err, Raw pkt invalid |
Raw packet format is invalid. |
||
[RX] pkt err, Raw max size invalid |
Raw packet maximum size is invalid. |
||
[RX] pkt err, Raw min size invalid |
Raw packet minimum size is invalid. |
||
[RX] QPC err, QP invalid |
Queue Pair (QP) is in an invalid state. |
||
[RX] QPC err, QPC Transport Service mismatch |
Queue Pair Context (QPC) transport service type does not match the packet type. |
||
[RX] QPC err, QPC Requester connection state invalid |
Requester’s connection state in Queue Pair Context (QPC) is invalid. |
||
[RX] QPC err, QPC Responder Connection state invalid |
Responder’s connection state in Queue Pair Context (QPC) is invalid. |
||
[RX] QPC err, QPC Responder resync invalid |
Responder’s resynchronization state is invalid. |
||
[RX] QPC err, QPC Requester PSN invalid |
Requester’s Packet Sequence Number (PSN) is invalid. |
||
[RX] QPC err, QPC Requester PSN unset |
Requester’s Packet Sequence Number (PSN) is not set. |
||
[RX] QPC err, Requester SAL NTS invalid |
Requester’s Selective Acknowledgement List (SAL) Next To Send (NTS) value is invalid. |
||
[RX] QPC err, QPC Responder RKEY invalid |
Responder’s Remote Key (RKEY) validation failed. |
||
[RX] QPC err, Requester SAL PSN invalid |
Requester’s Selective Acknowledgement List (SAL) Packet Sequence Number (PSN) is invalid. |
||
[RX] WQE err, WQE-index mismatch |
Work Queue Element (WQE) index mismatch between expected and received. |
||
[RX] WQE err, WQE write opcode invalid |
Work Queue Element (WQE) write operation opcode is invalid. |
||
[RX] WQE err, WQE Rendezvous opcode invalid |
Work Queue Element (WQE) rendezvous operation opcode is invalid. |
||
[RX] WQE err, WQE Read opcode invalid |
Work Queue Element (WQE) read operation opcode is invalid. |
||
[RX] WQE err, WQE Write Zero |
Work Queue Element (WQE) write operation has zero size. |
||
[RX] WQE err, WQE multi zero |
Work Queue Element (WQE) multi-stride operation has zero size. |
||
[RX] WQE err, WQE Write send big |
Work Queue Element (WQE) write or send operation exceeds maximum allowed size. |
||
[RX] WQE err, WQE multi big |
Work Queue Element (WQE) multi-stride operation exceeds maximum allowed size. |
||
Transmit Engine (TXE) |
[TX] QPC.wq_type is write does not support WQE.opcode |
Queue Pair Context (QPC) work queue type is configured as write but does not support the Work Queue Element (WQE) opcode. |
|
[TX] QPC.wq_type is rendezvous does not support WQE.opcode |
Queue Pair Context (QPC) work queue type is configured as rendezvous but does not support the Work Queue Element (WQE) opcode. |
||
[TX] QPC.wq_type is read does not support WQE.opcode |
Queue Pair Context (QPC) work queue type is configured as read but does not support the Work Queue Element (WQE) opcode. |
||
[TX] WQE is inline but does not support WQE.opcode |
Work Queue Element (WQE) is marked as inline but the opcode does not support inline operations. |
||
[TX] WQE.opcode is write but WQE.size is 0 |
Work Queue Element (WQE) opcode is write but the size field is zero. |
||
[TX] WQE.opcode is multi-stride|local-stride|multi-dual but WQE.size is 0 |
Work Queue Element (WQE) opcode is multi-stride, local-stride, or multi-dual but the size field is zero. |
||
[TX] WQE.opcode is send but WQE.size is 0 |
Work Queue Element (WQE) opcode is send but the size field is zero. |
||
[TX] WQE.opcode is rendezvous-write|rendezvous-read but WQE.size is 0 |
Work Queue Element (WQE) opcode is rendezvous-write or rendezvous-read but the size field is zero. |
||
[TX] WQE.opcode is write but size > configured max-write-send-size |
Work Queue Element (WQE) opcode is write but size exceeds the configured maximum write-send size. |
||
[TX] WQE.opcode is multi-stride|local-stride|multi-dual but size > configured max-stride-size |
Work Queue Element (WQE) opcode is multi-stride, local-stride, or multi-dual but size exceeds the configured maximum stride size. |
||
[TX] WQE.opcode is rendezvous-write|rendezvous-read but QPC.remote_wq_log_size < = configured min-remote-log-size |
Work Queue Element (WQE) opcode is rendezvous-write or rendezvous-read but the remote work queue log size is less than or equal to the configured minimum. |
||
[TX] WQE.opcode is rendezvous-write but WQE.size != configured rdv-wqe-size (per granularity) |
Work Queue Element (WQE) opcode is rendezvous-write but size does not match the configured rendezvous WQE size for the granularity. |
||
[TX] WQE.opcode is rendezvous-read but WQE.size != configured rdv-wqe-size (per granularity) |
Work Queue Element (WQE) opcode is rendezvous-read but size does not match the configured rendezvous WQE size for the granularity. |
||
[TX] WQE.inline is set but WQE.size != configured inline-wqe-size (per granularity) |
Work Queue Element (WQE) inline flag is set but size does not match the configured inline WQE size for the granularity. |
||
[TX] WQE.opcode is multi-stride|local-stride|multi-dual but QPC.swq_granularity is 0 |
Work Queue Element (WQE) opcode is multi-stride, local-stride, or multi-dual but the send work queue granularity in Queue Pair Context (QPC) is zero. |
||
[TX] QP-RAW and not compression nor down/up-convert |
Queue Pair (QP) is configured for RAW mode but operation is neither compression nor data type conversion. |
||
[TX] WQE.opcode is multi-stride|local-stride|multi-dual but WQE.size < stride-size |
Work Queue Element (WQE) opcode is multi-stride, local-stride, or multi-dual but WQE size is less than the stride size. |
||
[TX] Upscale with unaligned remote address |
Data type upscaling operation has a remote address that is not properly aligned. |
||
[TX] WQE.reduction_opcode is upscale but does not support WQE.opcode |
Work Queue Element (WQE) reduction opcode is upscale but the WQE opcode does not support upscaling. |
||
[TX] RAW packet but WQE.size not supported |
RAW packet transmission with an unsupported Work Queue Element (WQE) size. |
||
[TX] QP-SACK with WQE NOP |
Queue Pair (QP) with Selective Acknowledgment (SACK) enabled contains a no-operation (NOP) Work Queue Element (WQE). |
||
[TX] QP-RAW with non-linear WQE opcode |
Queue Pair (QP) in RAW mode contains a non-linear Work Queue Element (WQE) opcode. |
||
[TX] Wrong opcode for QP-plain-RDMA |
Work Queue Element (WQE) opcode is not valid for plain RDMA Queue Pair (QP) type. |
||
[TX] QP-plain RDMA with up/down-convert |
Plain RDMA Queue Pair (QP) is using data type upscaling or downscaling conversion, which is not supported. |
||
[TX] Down/up-convert with non 4B align size/address/stride |
Data type downscaling or upscaling conversion with size, address, or stride not aligned to 4-byte boundary. |
||
[TX] WQE’s sent bytes exceeds WQE’s size |
Number of bytes already sent for the Work Queue Element (WQE) exceeds the WQE’s total size. |
||
[TX] QPC WQ-log-size below cfg |
Queue Pair Context (QPC) work queue logarithmic size is below the configured minimum. |
||
[TX] QPC WQ-log-size above cfg |
Queue Pair Context (QPC) work queue logarithmic size exceeds the configured maximum. |
||
[TX] QP-RAW with WQE size above cfg |
RAW Queue Pair (QP) contains a Work Queue Element (WQE) with size exceeding the configured maximum. |
||
[TX] QP-RAW with WQE size below cfg |
RAW Queue Pair (QP) contains a Work Queue Element (WQE) with size below the configured minimum. |
||
[TX] WQE.opcode is RD-RDV but WQE.inline is set |
Work Queue Element (WQE) opcode is read-rendezvous (RD-RDV) but the inline flag is set, which is not allowed. |
||
[TX] WQE fetch&add WR size not 0 |
Work Queue Element (WQE) fetch-and-add write (WR) size is not zero as required. |
||
[TX] WQE fetch&add WR addr not mod4 |
Work Queue Element (WQE) fetch-and-add write (WR) address is not aligned to a 4-byte boundary. |
||
[TX] WQE.opcode above 15 |
Work Queue Element (WQE) opcode value exceeds the maximum allowed value of 15. |
||
[TX] WQE bad opcode |
Work Queue Element (WQE) contains an invalid or unsupported opcode. |
||
[TX] WQE bad size |
Work Queue Element (WQE) contains an invalid size value. |
||
[TX] Tunnel 0-size |
Tunnel encapsulation header has zero size, which is invalid. |
||
[TX] Tunnel max size |
Tunnel encapsulation header exceeds the maximum allowed size. |
||
Queue Pair Context (QPC) |
Requestor door-bell (DB) |
[qpc] [req DB] QP not valid |
Queue Pair (QP) is not in a valid state for door-bell operation. |
[qpc] [req DB] ASID not valid |
Address Space Identifier (ASID) validation failed. |
||
[qpc] [req DB] security check |
Door-bell security validation check failed. |
||
[qpc] [req DB] (PI - CI) > last-index |
Producer Index (PI) minus Consumer Index (CI) exceeds the work queue’s last valid index. |
||
[qpc] [req DB] wq-type is READ |
Work queue type is configured as READ, which does not support requester door-bell. |
||
Patcher door-bell (DB) |
[qpc] [patcher DB] QP not valid |
Queue Pair (QP) is not in a valid state for patcher door-bell operation. |
|
[qpc] [patcher DB] ASID not valid |
Address Space Identifier (ASID) validation failed for patcher operation. |
||
[qpc] [patcher DB] security check |
Patcher door-bell security validation check failed. |
||
Congestion control door-bell (DB) |
[qpc] [CC DB] QP not valid |
Queue Pair (QP) is not in a valid state for congestion control door-bell operation. |
|
[qpc] [CC DB] ASID not valid |
Address Space Identifier (ASID) validation failed for congestion control operation. |
||
[qpc] [CC DB] security check |
Congestion control door-bell security validation check failed. |
||
Responder transmit (TX) |
[qpc] [res TX] QP not valid |
Queue Pair (QP) is not in a valid state for responder transmit operation. |
|
Responder receive (RX) |
[qpc] [res RX] QP not valid |
Queue Pair (QP) is not in a valid state for responder receive operation. |
|
[qpc] [res RX] H9-5674 rem-ci mismatch bug |
Hardware bug H9-5674: Remote Consumer Index (rem-ci) mismatch detected. |
||
Requestor transmit (TX) |
[qpc] [req TX] QP not valid |
Queue Pair (QP) is not in a valid state for requestor transmit operation. |
|
[qpc] [req TX] RDV WQE but wq-type is not WRITE |
Rendezvous Work Queue Element (RDV WQE) encountered but work queue type is not configured as WRITE. |
||
Requestor receive (RX) |
[qpc] [req RX] QP not valid |
Queue Pair (QP) is not in a valid state for requestor receive operation. |
|
[qpc] [req RX] max-retry-cnt exceeded |
Maximum retry count exceeded during requestor receive operation. |
||
[qpc] [TMR] max-retry-cnt exceeded |
Timer: Maximum retry count exceeded. |
||
Requestor rendezvous (RDV) |
[qpc] [req RDV] QP not valid |
Queue Pair (QP) is not in a valid state for requestor rendezvous operation. |
|
[qpc] [req RDV] wrong wq-type |
Work queue type is incorrect for rendezvous operation. |
||