NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |NOTES |SEE ALSO |AUTHORS |COLOPHON | |
IBV_OPEN_DEVICE(3) Libibverbs Programmer's ManualIBV_OPEN_DEVICE(3)ibv_open_device, ibv_close_device - open and close an RDMA device context
#include <infiniband/verbs.h>struct ibv_context *ibv_open_device(struct ibv_device*device);int ibv_close_device(struct ibv_context*context);
ibv_open_device()opens the devicedevice and creates a context for further use.ibv_close_device()closes the device contextcontext.
ibv_open_device()returns a pointer to the allocated device context, or NULL if the request fails.ibv_close_device()returns 0 on success, -1 on failure.
ibv_close_device()does not release all the resources allocated using contextcontext. To avoid resource leaks, the user should release all associated resources before closing a context. Setting the environment variable **RDMAV_ALLOW_DISASSOC_DESTROY** tells the library to relate an EIO from destroy commands as a success as the kernel resources were already released. This comes to prevent memory leakage in the user space area upon device disassociation. Applications using this flag cannot call ibv_get_cq_event or ibv_get_async_event concurrently with any call to an object destruction function.
ibv_get_device_list(3),ibv_query_device(3),ibv_query_port(3),ibv_query_gid(3),ibv_query_pkey(3)
Dotan Barak <dotanba@gmail.com>
This page is part of therdma-core (RDMA Core Userspace Libraries and Daemons) project. Information about the project can be found at ⟨https://github.com/linux-rdma/rdma-core⟩. If you have a bug report for this manual page, send it to linux-rdma@vger.kernel.org. This page was obtained from the project's upstream Git repository ⟨https://github.com/linux-rdma/rdma-core.git⟩ on 2025-08-11. (At that time, the date of the most recent commit that was found in the repository was 2025-08-04.) If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up-to-date source for the page, or you have corrections or improvements to the information in this COLOPHON (which isnot part of the original manual page), send a mail to man-pages@man7.orglibibverbs 2006-10-31IBV_OPEN_DEVICE(3)Pages that refer to this page:ibv_create_ah_from_wc(3), ibv_create_comp_channel(3), ibv_free_device_list(3), ibv_get_async_event(3), ibv_get_device_guid(3), ibv_get_device_index(3), ibv_get_device_list(3), ibv_get_device_name(3), ibv_get_pkey_index(3), ibv_import_device(3), ibv_query_device(3), ibv_query_device_ex(3), ibv_query_gid(3), ibv_query_gid_ex(3), ibv_query_gid_table(3), ibv_query_pkey(3), ibv_query_rt_values_ex(3)
HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface. For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere. Hosting byjambit GmbH. | ![]() |