1mlx5dv_create_cq(3) mlx5 Programmer’s Manual mlx5dv_create_cq(3)
2
3
4
6 mlx5dv_create_cq - creates a completion queue (CQ)
7
9 #include <infiniband/mlx5dv.h>
10
11 struct ibv_cq_ex *mlx5dv_create_cq(struct ibv_context *context,
12 struct ibv_cq_init_attr_ex *cq_attr,
13 struct mlx5dv_cq_init_attr *mlx5_cq_attr);
14
16 mlx5dv_create_cq() creates a completion queue (CQ) with specific driver
17 properties.
18
20 Please see ibv_create_cq_ex(3) man page for context and cq_attr
21
22 mlx5_cq_attr
23 struct mlx5dv_cq_init_attr {
24 uint64_t comp_mask;
25 uint8_t cqe_comp_res_format;
26 uint32_t flags;
27 uint16_t cqe_size;
28 };
29
30 comp_mask
31 Bitmask specifying what fields in the structure are valid:
32
33 MLX5DV_CQ_INIT_ATTR_MASK_COMPRESSED_CQE enables creating a CQ in
34 a mode that few CQEs may be compressed into a single CQE, valid
35 values in cqe_comp_res_format
36
37 MLX5DV_CQ_INIT_ATTR_MASK_FLAGS valid values in flags
38
39 MLX5DV_CQ_INIT_ATTR_MASK_CQE_SIZE valid values in cqe_size
40
41 cqe_comp_res_format
42 A bitwise OR of the various CQE response formats of the respon‐
43 der side:
44
45 MLX5DV_CQE_RES_FORMAT_HASH CQE compression with hash
46
47 MLX5DV_CQE_RES_FORMAT_CSUM CQE compression with RX checksum
48
49 MLX5DV_CQE_RES_FORMAT_CSUM_STRIDX CQE compression with stride
50 index
51
52 flags A bitwise OR of the various values described below:
53
54 MLX5DV_CQ_INIT_ATTR_FLAGS_CQE_PAD create a padded 128B CQE
55
56 cqe_size
57 configure the CQE size to be 64 or 128 bytes other values will
58 fail mlx5dv_create_cq.
59
61 mlx5dv_create_cq() returns a pointer to the created CQ, or NULL if the
62 request fails and errno will be set.
63
65 ibv_create_cq_ex(3),
66
68 Yonatan Cohen <yonatanc@mellanox.com>
69
70
71
72mlx5 2018-9-1 mlx5dv_create_cq(3)