IBV_OPEN_XRCD(3) | Libibverbs Programmer's Manual | IBV_OPEN_XRCD(3) |
ibv_open_xrcd, ibv_close_xrcd - open or close an XRC protection domain (XRCDs)
#include <infiniband/verbs.h> struct ibv_xrcd *ibv_open_xrcd(struct ibv_context *context, struct ibv_xrcd_init_attr *xrcd_init_attr); int ibv_close_xrcd(struct ibv_xrcd *xrcd);
ibv_open_xrcd() open an XRC domain for the RDMA device context context xrcd_init_attr is an ibv_xrcd_init_attr struct, as defined in <infiniband/verbs.h>.
struct ibv_xrcd_init_attr {
uint32_t comp_mask; /* Identifies valid fields */ int fd; int oflag;
fd is the file descriptor to associate with the XRCD. oflag describes the desired creation attributes. It is a bitwise OR of zero or more of the following flags:
If fd equals -1, no inode is associated with the XRCD. To indicate that XRCD should be created, use oflag = O_CREAT.
ibv_close_xrcd() closes the XRCD xrcd. If this is the last reference, the XRCD will be destroyed.
ibv_open_xrcd() returns a pointer to the opened XRCD, or NULL if the request fails.
ibv_close_xrcd() returns 0 on success, or the value of errno on failure (which indicates the failure reason).
ibv_close_xrcd() may fail if any other resource is still associated with the XRCD being closed.
2011-06-17 | libibverbs |