blob: d447ab2b765c38bc2195e590a6f184801ffc802a [file] [view]
---
layout: page
title: EFADV_QUERY_DEVICE
section: 3
tagline: Verbs
date: 2019-04-22
header: "EFA Direct Verbs Manual"
footer: efa
---
# NAME
efadv_query_device - Query device capabilities
# SYNOPSIS
```c
#include <infiniband/efadv.h>
int efadv_query_device(struct ibv_context *ibvctx,
struct efadv_device_attr *attr,
uint32_t inlen);
```
# DESCRIPTION
**efadv_query_device()** Queries EFA device specific attributes.
Compatibility is handled using the comp_mask and inlen fields.
```c
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
*max_rdma_size*
: Maximum RDMA transfer size in bytes.
# RETURN VALUE
**efadv_query_device()** returns 0 on success, or the value of errno on failure
(which indicates the failure reason).
# SEE ALSO
**efadv**(7)
# NOTES
* Compatibility mask (comp_mask) is an out field and currently has no values.
# AUTHORS
Gal Pressman <galpress@amazon.com>