| .\" -*- nroff -*- |
| .\" |
| .TH IBV_OPEN_QP 3 2011-08-12 libibverbs "Libibverbs Programmer's Manual" |
| .SH "NAME" |
| ibv_open_qp \- open a shareable queue pair (QP) |
| .SH "SYNOPSIS" |
| .nf |
| .B #include <infiniband/verbs.h> |
| .sp |
| .BI "struct ibv_qp *ibv_open_qp(struct ibv_context " "*context" , |
| .BI " struct ibv_qp_open_attr " "*qp_open_attr" ); |
| .fi |
| .SH "DESCRIPTION" |
| .B ibv_open_qp() |
| opens an existing queue pair (QP) associated with the extended protection domain |
| .I xrcd\fR. |
| The argument |
| .I qp_open_attr |
| is an ibv_qp_open_attr struct, as defined in <infiniband/verbs.h>. |
| .PP |
| .nf |
| struct ibv_qp_open_attr { |
| .in +8 |
| uint32_t comp_mask; /* Identifies valid fields */ |
| uint32_t qp_num; /* QP number */ |
| struct *ibv_xrcd; /* XRC domain */ |
| void *qp_context; /* User defined opaque value */ |
| enum ibv_qp_type qp_type; /* QP transport service type */ |
| .fi |
| .PP |
| .B ibv_destroy_qp() |
| closes the opened QP and destroys the underlying QP if it has no |
| other references. |
| .I qp\fR. |
| .SH "RETURN VALUE" |
| .B ibv_open_qp() |
| returns a pointer to the opened QP, or NULL if the request fails. |
| Check the QP number (\fBqp_num\fR) in the returned QP. |
| .SH "NOTES" |
| .B ibv_open_qp() |
| will fail if a it is asked to open a QP that does not exist within |
| the xrcd with the specified qp_num and qp_type. |
| .SH "SEE ALSO" |
| .BR ibv_alloc_pd (3), |
| .BR ibv_create_qp (3), |
| .BR ibv_create_qp_ex (3), |
| .BR ibv_modify_qp (3), |
| .BR ibv_query_qp (3) |
| .SH "AUTHORS" |
| .TP |
| Sean Hefty <sean.hefty@intel.com> |