1ibv_query_qp_data_in_ordeLri(b3i)bverbs Programmer’s Mainbuva_lquery_qp_data_in_order(3)
2
3
4

NAME

6       ibv_query_qp_data_in_order  -  check  if qp data is guaranteed to be in
7       order.
8

SYNOPSIS

10              #include <infiniband/verbs.h>
11
12              int ibv_query_qp_data_in_order(struct ibv_qp *qp, enum ibv_wr_opcode op, uint32_t flags);
13

DESCRIPTION

15       ibv_query_qp_data_in_order() Checks whether WQE data is  guaranteed  to
16       be  written in-order, and thus reader may poll for data instead of poll
17       for completion.  This function indicates data is written in-order with‐
18       in  each WQE, but cannot be used to determine ordering between separate
19       WQEs.  This function describes ordering at the receiving  side  of  the
20       QP, not the sending side.
21

ARGUMENTS

23       qp
24
25              The local queue pair (QP) to query.
26
27       op
28
29              The operation type to query about. Different operation types may write data in a different order.
30              For RDMA read operations: describes ordering of RDMA reads post‐
31              ed on this local QP.  For RDMA write operations:  describes  or‐
32              dering of remote RDMA writes being done into this local QP.  For
33              RDMA send operations: describes ordering of  remote  RDMA  sends
34              being done into this local QP.  This function should not be used
35              to determine ordering of other operation types.
36
37       flags  Flags are used to select a query type.  Supported values:
38
39       IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS - Query for supported  capabili‐
40       ties and return a capabilities vector.
41
42       Passing 0 is equivalent to using IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS
43       and checking for IBV_QUERY_QP_DATA_IN_ORDER_WHOLE_MSG support.
44

RETURN VALUE

46       ibv_query_qp_data_in_order() Return value is determined by flags.   For
47       each  capability  bit,  1  is  returned if the data is guaranteed to be
48       written in-order for selected operation  and  type,  0  otherwise.   If
49       IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS  flag  is used, return value can
50       consist of following capabilities:
51
52       IBV_QUERY_QP_DATA_IN_ORDER_WHOLE_MSG - All data is being written in or‐
53       der.
54
55       IBV_QUERY_QP_DATA_IN_ORDER_ALIGNED_128_BYTES  -  Each 128 bytes aligned
56       block is being written in order.
57
58       If flags is 0, the function will return 1  if  IBV_QUERY_QP_DATA_IN_OR‐
59       DER_WHOLE_MSG is supported and 0 otherwise.
60

NOTES

62       Return value is valid only when the data is read by the CPU and relaxed
63       ordering MR is not the target of the transfer.
64

SEE ALSO

66       ibv_query_qp(3)
67

AUTHOR

69       Patrisious Haddad <phaddad@nvidia.com>
70
71       Yochai Cohen <yochai@nvidia.com>
72
73
74
75libibverbs                         2020-3-3      ibv_query_qp_data_in_order(3)
Impressum