NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | NOTES | AUTHORS | COLOPHON |
|
|
EFADV_QUERY_DEVICE(3) EFA Direct Verbs Manual EFADV_QUERY_DEVICE(3)
efadv_query_device - Query device capabilities
#include <infiniband/efadv.h> int efadv_query_device(struct ibv_context *ibvctx, struct efadv_device_attr *attr, uint32_t inlen);
efadv_query_device() Queries EFA device specific attributes. Compatibility is handled using the comp_mask and inlen fields. struct efadv_device_attr { uint64_t comp_mask; uint32_t max_sq_wr; uint32_t max_rq_wr; uint16_t max_sq_sge; uint16_t max_rq_sge; uint16_t inline_buf_size; uint8_t reserved[2]; uint32_t device_caps; uint32_t max_rdma_size; }; inlen In: Size of struct efadv_device_attr. comp_mask Compatibility mask. max_sq_wr Maximum Send Queue (SQ) Work Requests (WRs). max_rq_wr Maximum Receive Queue (RQ) Work Requests (WRs). max_sq_sge Maximum Send Queue (SQ) Scatter Gather Elements (SGEs). max_rq_sge Maximum Receive Queue (RQ) Scatter Gather Elements (SGEs). inline_buf_size Maximum inline buffer size. device_caps Bitmask of device capabilities: EFADV_DEVICE_ATTR_CAPS_RDMA_READ: RDMA read is supported. EFADV_DEVICE_ATTR_CAPS_RNR_RETRY: RNR retry is supported for SRD QPs. EFADV_DEVICE_ATTR_CAPS_CQ_WITH_SGID: Reading source address (SGID) from receive completion descriptors is supported. Valid only for unknown AH. EFADV_DEVICE_ATTR_CAPS_RDMA_WRITE: RDMA write is supported EFADV_DEVICE_ATTR_CAPS_UNSOLICITED_WRITE_RECV: Indicates the device has support for creating QPs that can receive unsolicited RDMA write with immediate. RQ with this feature enabled will not consume any work requests in order to receive RDMA write with immediate and a WC generated for such receive will be marked as unsolicited. EFADV_DEVICE_ATTR_CAPS_CQ_WITH_EXT_MEM_DMABUF: Indicates that creating CQs with external memory buffers by passing dmabuf is supported. max_rdma_size Maximum RDMA transfer size in bytes.
efadv_query_device() returns 0 on success, or the value of errno on failure (which indicates the failure reason).
efadv(7)
• Compatibility mask (comp_mask) is an out field and currently has no values.
Gal Pressman ⟨galpress@amazon.com⟩
This page is part of the rdma-core (RDMA Core Userspace Libraries
and Daemons) project. Information about the project can be found
at ⟨https://github.com/linux-rdma/rdma-core⟩. If you have a bug
report for this manual page, send it to
linux-rdma@vger.kernel.org. This page was obtained from the
project's upstream Git repository
⟨https://github.com/linux-rdma/rdma-core.git⟩ on 2025-08-11. (At
that time, the date of the most recent commit that was found in
the repository was 2025-08-04.) If you discover any rendering
problems in this HTML version of the page, or you believe there is
a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
man-pages@man7.org
efa 2019-04-22 EFADV_QUERY_DEVICE(3)