ibv_create_ah(3) — Linux manual page


IBV_CREATE_AH(3)     Libibverbs Programmer's Manual     IBV_CREATE_AH(3)

NAME         top

       ibv_create_ah, ibv_destroy_ah - create or destroy an address
       handle (AH)

SYNOPSIS         top

       #include <infiniband/verbs.h>

       struct ibv_ah *ibv_create_ah(struct ibv_pd *pd,
                                    struct ibv_ah_attr *attr);

       int ibv_destroy_ah(struct ibv_ah *ah);

DESCRIPTION         top

       ibv_create_ah() creates an address handle (AH) associated with
       the protection domain pd.  The argument attr is an ibv_ah_attr
       struct, as defined in <infiniband/verbs.h>.

       struct ibv_ah_attr {
               struct ibv_global_route grh;            /* Global Routing Header (GRH) attributes */
               uint16_t                dlid;           /* Destination LID */
               uint8_t                 sl;             /* Service Level */
               uint8_t                 src_path_bits;  /* Source path bits */
               uint8_t                 static_rate;    /* Maximum static rate */
               uint8_t                 is_global;      /* GRH attributes are valid */
               uint8_t                 port_num;       /* Physical port number */

       struct ibv_global_route {
               union ibv_gid           dgid;           /* Destination GID or MGID */
               uint32_t                flow_label;     /* Flow label */
               uint8_t                 sgid_index;     /* Source GID index */
               uint8_t                 hop_limit;      /* Hop limit */
               uint8_t                 traffic_class;  /* Traffic class */

       ibv_destroy_ah() destroys the AH ah.

RETURN VALUE         top

       ibv_create_ah() returns a pointer to the created AH, or NULL if
       the request fails.

NOTES         top

       If port flag IBV_QPF_GRH_REQUIRED is set then ibv_create_ah()
       must be created with definition of 'struct ibv_ah_attr {
       .is_global = 1; .grh = {...}; }'.

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

SEE ALSO         top

       ibv_alloc_pd(3), ibv_init_ah_from_wc(3), ibv_create_ah_from_wc(3)

AUTHORS         top

       Dotan Barak <dotanba@gmail.com>

COLOPHON         top

       This page is part of the rdma-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 2023-12-22.  (At
       that time, the date of the most recent commit that was found in
       the repository was 2023-12-20.)  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 is not part of the original manual page), send a mail to

libibverbs                     2006-10-31               IBV_CREATE_AH(3)

Pages that refer to this page: ibv_alloc_pd(3)ibv_create_ah_from_wc(3)ibv_modify_qp(3)ibv_post_send(3)ibv_query_port(3)ibv_query_qp(3)