manadv_init_obj - Man Page
Initialize mana direct verbs object from ibv_xxx structures
Synopsis”
#include <infiniband/manadv.h> int manadv_init_obj(struct manadv_obj *obj, uint64_t obj_type);
Description
manadv_init_obj() This function will initialize manadv_xxx structs based on supplied type. The information for initialization is taken from ibv_xx structs supplied as part of input.
Arguments
- obj
The manadv_xxx structs be to returned.
struct manadv_qp { void *sq_buf; uint32_t sq_count; uint32_t sq_size; uint32_t sq_id; uint32_t tx_vp_offset; void *db_page; }; struct manadv_cq { void *buf; uint32_t count; uint32_t cq_id; }; struct manadv_rwq { void *buf; uint32_t count; uint32_t size; uint32_t wq_id; void *db_page; }; struct manadv_obj { struct { struct ibv_qp *in; struct manadv_qp *out; } qp; struct { struct ibv_cq *in; struct manadv_cq *out; } cq; struct { struct ibv_wq *in; struct manadv_rwq *out; } rwq; };
- obj_type
The types of the manadv_xxx structs to be returned.
enum manadv_obj_type { MANADV_OBJ_QP = 1 << 0, MANADV_OBJ_CQ = 1 << 1, MANADV_OBJ_RWQ = 1 << 2, };
Return Value
0 on success or the value of errno on failure (which indicates the failure reason).
Authors
Long Li <longli@microsoft.com>