ibv_req_notify_cq

Requests the completion notification on a completion queue (CQ).

Syntax

#include <rdma/verbs.h>
int ibv_req_notify_cq(struct ibv_cq *cq, int solicited_only);

Description

The ibv_req_notify_cq() routine requests a completion notification on the completion queue (CQ) cq.

Upon addition of a new CQ entry (CQE) to cq, a completion event is added to the completion channel associated with the CQ. If the argument solicited_only is zero, a completion event is generated for any new CQE. If solicited_only is non-zero, an event is generated for a new CQE that is considered solicited. A CQE is solicited if it is a receive completion for a message with the Solicited Event header bit set, or if the status is not successful. All other successful receive completions, or any successful send completion is unsolicited.

Note: The request for notification is only once. Only one completion event is generated for each call to ibv_req_notify_cq().

Parameters

cq Specifies the struct ibv_cq from ibv_create_cq.
solicited_only Notifies only if WR is flagged as solicited.

Return Values

0 On success.
EINVAL Error, if cq, or cq->context is NULL.
[ Feedback ]