logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

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

Arguments

qp The local queue pair (QP) to query. op The operation type to query about. Different operation types may write data in a different order. For RDMA read operations: describes ordering of RDMA reads posted on this local QP. For RDMA write operations: describes ordering of remote RDMA writes being done into this local QP. For RDMA send operations: describes ordering of remote RDMA sends being done into this local QP. This function should not be used to determine ordering of other operation types. flags Flags are used to select a query type. Supported values: IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS - Query for supported capabilities and return a capabilities vector. Passing 0 is equivalent to using IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS and checking for IBV_QUERY_QP_DATA_IN_ORDER_WHOLE_MSG support.

Author

Patrisious Haddad phaddad@nvidia.com Yochai Cohen yochai@nvidia.com libibverbs 2020-3-3 ibv_query_qp_data_in_order(3)

Description

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

Name

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

Notes

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

Return Value

ibv_query_qp_data_in_order() Return value is determined by flags. For each capability bit, 1 is returned if the data is guaranteed to be written in-order for selected operation and type, 0 otherwise. If IBV_QUERY_QP_DATA_IN_ORDER_RETURN_CAPS flag is used, return value can consist of following capabilities: IBV_QUERY_QP_DATA_IN_ORDER_WHOLE_MSG - All data is being written in order. IBV_QUERY_QP_DATA_IN_ORDER_ALIGNED_128_BYTES - Each 128 bytes aligned block is being written in order. If flags is 0, the function will return 1 if IBV_QUERY_QP_DATA_IN_ORDER_WHOLE_MSG is supported and 0 otherwise.

See Also

ibv_query_qp(3)

Synopsis

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

See Also