ibv_create_comp_channel(3)

ibv_create_comp_channel3

Create or destroy a completion event channel

Usage

#include <infiniband/verbs.h>

struct ibv_comp_channel *ibv_create_comp_channel(struct ibv_context
                                                 *context);

int ibv_destroy_comp_channel(struct ibv_comp_channel *channel);

Overview

ibv_create_comp_channel() creates a completion event channel for the RDMA device context context.

ibv_destroy_comp_channel() destroys the completion event channel channel.

Return value

ibv_create_comp_channel() returns a pointer to the created completion event channel, or NULL if the request fails, and errno is set to indicate the reason.

ibv_destroy_comp_channel() returns 0 on success, or the value of errno on failure (which indicates the failure reason).

Notes

A "completion channel" is an abstraction introduced by libibverbs that does not exist in the InfiniBand Architecture verbs specification or RDMA Protocol Verbs Specification. A completion channel is essentially file descriptor that is used to deliver completion notifications to a userspace process. When a completion event is generated for a completion queue (CQ), the event is delivered via the completion channel attached to that CQ. This may be useful to steer completion events to different threads by using multiple completion channels.

ibv_destroy_comp_channel() fails if any CQs are still associated with the completion event channel being destroyed.

Releases

10 releases since Debian 5.0 (Lenny); the text changed 3 times.

  1. 5.0
  2. 6.0–9
  3. 10–13
  4. Arch

Authors

Dotan Barak <[email protected]>

From rdma-core 65.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.