ibv_alloc_pd, ibv_dealloc_pd — allocate or deallocate a protection domain (PDs)


#include <infiniband/verbs.h>

struct ibv_pd *ibv_alloc_pd(struct ibv_context *context);

int ibv_dealloc_pd(struct ibv_pd *pd);


ibv_alloc_pd() allocates a PD for the RDMA device context context.

ibv_dealloc_pd() deallocates the PD pd.

Return Value

ibv_alloc_pd() returns a pointer to the allocated PD, or NULL if the request fails.

ibv_dealloc_pd() returns 0 on success, or the value of errno on failure (which indicates the failure reason).


ibv_dealloc_pd() may fail if any other resource is still associated with the PD being freed.

See Also

ibv_reg_mr(3), ibv_create_srq(3), ibv_create_qp(3), ibv_create_ah(3), ibv_create_ah_from_wc(3)


Dotan Barak <dotanba@gmail.com>

Referenced By

ibv_alloc_mw(3), ibv_alloc_parent_domain(3), ibv_create_ah(3), ibv_create_ah_from_wc(3), ibv_create_qp(3), ibv_create_qp_ex(3), ibv_create_srq(3), ibv_create_srq_ex(3), ibv_get_srq_num(3), ibv_open_qp(3), ibv_reg_mr(3).

The man page ibv_dealloc_pd(3) is an alias of ibv_alloc_pd(3).

2006-10-31 Libibverbs Programmer's Manual