IBV_QUERY_GID_EX(3) Libibverbs Programmer’s Manual IBV_QUERY_GID_EX(3)

ibv_query_gid_ex - Query an InfiniBand port’s GID table entry

#include <infiniband/verbs.h>
int ibv_query_gid_ex(struct ibv_context *context,
                     uint32_t port_num,
                     uint32_t gid_index,
                     struct ibv_gid_entry *entry,
                     uint32_t flags);

ibv_query_gid_ex() returns the GID entry at entry for gid_index of port port_num for device context context.

The context of the device to query.
The number of port to query its GID table.
The index of the GID table entry to query.
## entry Argument
An ibv_gid_entry struct, as defined in <infiniband/verbs.h>.
struct ibv_gid_entry {
    union ibv_gid gid;
    uint32_t gid_index;
    uint32_t port_num;
    uint32_t gid_type;
    uint32_t ndev_ifindex;
};

gid

    The GID entry.

gid_index

    The GID table index of this entry.

port_num

    The port number that this GID belongs to.

gid_type

    enum ibv_gid_type, can be one of IBV_GID_TYPE_IB, IBV_GID_TYPE_ROCE_V1 or IBV_GID_TYPE_ROCE_V2.

ndev_ifindex

    The interface index of the net device associated with this GID.
    It is 0 if there is no net device associated with it.
Extra fields to query post ndev_ifindex, for now must be 0.

ibv_query_gid_ex() returns 0 on success or errno value on error.

gid_index is within the GID table size of port port_num but there is no data in this index.

ibv_open_device(3), ibv_query_device(3), ibv_query_pkey(3), ibv_query_port(3), ibv_query_gid_table(3)

Parav Pandit <parav@nvidia.com>

2020-04-24 libibverbs