hnsdv_create_qp(3)

hnsdv_create_qp3

Creates a hns specific queue pair (qp)

Usage

#include <infiniband/hnsdv.h>
struct ibv_qp *hnsdv_create_qp(struct ibv_context *context,
                               struct ibv_qp_init_attr_ex *qp_attr,
                               struct hnsdv_qp_init_attr *hns_attr);

Overview

hnsdv_create_qp() creates a HNS specific queue pair (QP) with specific driver properties.

Arguments

Please see ibv_create_qp_ex(3) man page for context and qp_attr.

hns_attr

struct hnsdv_qp_init_attr {
        uint64_t comp_mask;
        uint32_t create_flags;
        uint8_t congest_type;
        uint8_t reserved[3];
};
comp_mask

Bitmask specifying what fields in the structure are valid:

HNSDV_QP_INIT_ATTR_MASK_QP_CONGEST_TYPE:
    Valid values in congest_type. Allow setting a congestion control algorithm for QP.
create_flags

Enable the QP of a feature.

congest_type

Type of congestion control algorithm:

HNSDV_QP_CREATE_ENABLE_DCQCN: Data Center Quantized Congestion Notification HNSDV_QP_CREATE_ENABLE_LDCP: Low Delay Control Protocol HNSDV_QP_CREATE_ENABLE_HC3: Huawei Converged Congestion Control HNSDV_QP_CREATE_ENABLE_DIP: Destination IP based Quantized Congestion Notification

Return value

hnsdv_create_qp() returns a pointer to the created QP, on error NULL will be returned and errno will be set.

Releases

2 releases since Debian 13 (Trixie); the text changed 1 time.

  1. 13
  2. Arch

Author

Junxian Huang ⟨[email protected]⟩\c

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