NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |SEE ALSO |AUTHORS |COLOPHON | |
IBV_ALLOC_TD(3) Libibverbs Programmer's ManualIBV_ALLOC_TD(3)ibv_alloc_td(), ibv_dealloc_td() - allocate and deallocate thread domain object
#include <infiniband/verbs.h>struct ibv_td *ibv_alloc_td(struct ibv_context*context,struct ibv_td_init_attr*init_attr);int ibv_dealloc_td(struct ibv_td*td);
ibv_alloc_td()allocates a thread domain object for the RDMA device contextcontext. The thread domain object defines how the verbs libraries and provider will use locks and additional hardware capabilities to achieve best performance for handling multi-thread or single- thread protection. An application assigns verbs resources to a thread domain when it creates a verbs object. If theibv_td object is specified then any objects created under this thread domain will disable internal locking designed to protect against concurrent access to that object from multiple user threads. By default all verbs objects are safe for multi- threaded access, whether or not a thread domain is specified. Astruct ibv_td can be added to a parent domain viaibv_alloc_parent_domain()and then the parent domain can be used to create verbs objects.ibv_dealloc_td()will deallocate the thread domaintd. All resources created with thetd should be destroyed prior to deallocating thetd.
ibv_alloc_td()returns a pointer to the allocated structibv_td object, or NULL if the request fails (and sets errno to indicate the failure reason).ibv_dealloc_td()returns 0 on success, or the value of errno on failure (which indicates the failure reason).
ibv_alloc_parent_domain(3),
Alex Rosenbaum <alexr@mellanox.com> Yishai Hadas <yishaih@mellanox.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 2017-11-06IBV_ALLOC_TD(3)Pages that refer to this page:ibv_alloc_parent_domain(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. | ![]() |