Class IBVQueuePair

Class Documentation

class IBVQueuePair

Infiniband Queue Pair that manages the send and recv completion queues.

Public Functions

IBVQueuePair() = default

Construct a new IBVQueuePair object.

IBVQueuePair(RDMACommunicationManager *cm, IBVProtectionDomain *pd, IBVCompletionQueue *cq, int n_slots)

Construct a new IBVQueuePair object and initalize the ibv_qp struct. Creates a queue pair that associated with the protection domain.

Parameters
~IBVQueuePair()

Destroy the IBVQueuePair object.

inline ibv_qp *get() const

Return a pointer to the ibv_qp struct managed by this class.

Returns

ibv_qp* pointer to the ibv_qp struct managed by this class

void post_recv(ibv_recv_wr *wr)

posts the work request to the receive queue of the queue pair.

Parameters

wr – work request to be posted to the receive queue

void modify(ibv_qp_state qp_state)

Modify the state of the queue pair.

Parameters

qp_state – new state to transition the queue pair to.