ib_ah_attr
struct ib_ah_attr *ah_attr;
static int bnxt_re_init_dmac(struct bnxt_re_dev *rdev, struct ib_ah_attr *ah_attr,
int bnxt_re_create_ah(struct ib_ah *ah_in, struct ib_ah_attr *attr,
struct ib_ah_attr *ah_attr = attr;
int bnxt_re_modify_ah(struct ib_ah *ib_ah, struct ib_ah_attr *ah_attr)
int bnxt_re_query_ah(struct ib_ah *ib_ah, struct ib_ah_attr *ah_attr)
struct ib_ah_attr *ah_attr;
struct ib_ah_attr *ah_attr,
int bnxt_re_create_ah(struct ib_ah *ah_in, struct ib_ah_attr *attr,
int bnxt_re_modify_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr);
int bnxt_re_query_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr);
struct ib_ah_attr *ah_attr, u32 flags,
struct ib_ah_attr *attr, u32 flags,
struct ib_ah_attr *attr, u32 flags,
void irdma_ether_copy(u8 *dmac, struct ib_ah_attr *attr);
struct ib_ah_attr *attr, u32 flags,
struct ib_ah_attr *attr, u32 flags,
irdma_ether_copy(u8 *dmac, struct ib_ah_attr *attr)
struct ib_ah_attr *attr, u32 flags,
irdma_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr)
struct ib_ah_attr attrs;
int mlx4_ib_create_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr, u32 flags,
int mlx4_ib_create_ah_slave(struct ib_ah *ah, struct ib_ah_attr *ah_attr,
int mlx4_ib_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr);
u32 qkey, struct ib_ah_attr *attr, u8 *s_mac,
int mlx4_ib_create_ah(struct ib_ah *ib_ah, struct ib_ah_attr *ah_attr,
int mlx4_ib_create_ah_slave(struct ib_ah *ah, struct ib_ah_attr *ah_attr,
struct ib_ah_attr slave_attr = *ah_attr;
int mlx4_ib_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr)
static int create_ib_ah(struct ib_ah *ib_ah, struct ib_ah_attr *ah_attr)
static int create_iboe_ah(struct ib_ah *ib_ah, struct ib_ah_attr *ah_attr)
u32 remote_qpn, u32 qkey, struct ib_ah_attr *attr,
struct ib_ah_attr *ah_attr)
struct ib_ah_attr ah_attr;
struct ib_ah_attr ah_attr;
struct ib_ah_attr attr;
struct ib_ah_attr ah_attr;
struct ib_ah_attr ah_attr;
static int _mlx4_set_path(struct mlx4_ib_dev *dev, const struct ib_ah_attr *ah,
static void to_ib_ah_attr(struct mlx4_ib_dev *ibdev, struct ib_ah_attr *ib_ah_attr,
memset(ib_ah_attr, 0, sizeof *ib_ah_attr);
ib_ah_attr->port_num = path->sched_queue & 0x40 ? 2 : 1;
if (ib_ah_attr->port_num == 0 || ib_ah_attr->port_num > dev->caps.num_ports)
is_eth = rdma_port_get_link_layer(&ibdev->ib_dev, ib_ah_attr->port_num) ==
ib_ah_attr->sl = ((path->sched_queue >> 3) & 0x7) |
ib_ah_attr->sl = (path->sched_queue >> 2) & 0xf;
ib_ah_attr->dlid = be16_to_cpu(path->rlid);
ib_ah_attr->src_path_bits = path->grh_mylmc & 0x7f;
ib_ah_attr->static_rate = path->static_rate ? path->static_rate - 5 : 0;
ib_ah_attr->ah_flags = (path->grh_mylmc & (1 << 7)) ? IB_AH_GRH : 0;
if (ib_ah_attr->ah_flags) {
ib_ah_attr->grh.sgid_index = path->mgid_index;
ib_ah_attr->grh.hop_limit = path->hop_limit;
ib_ah_attr->grh.traffic_class =
ib_ah_attr->grh.flow_label =
memcpy(ib_ah_attr->grh.dgid.raw,
path->rgid, sizeof ib_ah_attr->grh.dgid.raw);
int mlx5_ib_create_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr, u32 flags,
int mlx5_ib_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr);
struct ib_ah_attr *ah_attr,
int mlx5_ib_create_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr,
int mlx5_ib_query_ah(struct ib_ah *ibah, struct ib_ah_attr *ah_attr)
const struct ib_ah_attr *ah,
static void to_ib_ah_attr(struct mlx5_ib_dev *ibdev, struct ib_ah_attr *ib_ah_attr,
memset(ib_ah_attr, 0, sizeof(*ib_ah_attr));
ib_ah_attr->port_num = path->port;
if (ib_ah_attr->port_num == 0 ||
ib_ah_attr->port_num > MLX5_CAP_GEN(dev, num_ports))
ib_ah_attr->sl = path->dci_cfi_prio_sl & 0xf;
ib_ah_attr->dlid = be16_to_cpu(path->rlid);
ib_ah_attr->src_path_bits = path->grh_mlid & 0x7f;
ib_ah_attr->static_rate = path->static_rate ? path->static_rate - 5 : 0;
ib_ah_attr->ah_flags = (path->grh_mlid & (1 << 7)) ? IB_AH_GRH : 0;
if (ib_ah_attr->ah_flags) {
ib_ah_attr->grh.sgid_index = path->mgid_index;
ib_ah_attr->grh.hop_limit = path->hop_limit;
ib_ah_attr->grh.traffic_class =
ib_ah_attr->grh.flow_label =
memcpy(ib_ah_attr->grh.dgid.raw,
path->rgid, sizeof(ib_ah_attr->grh.dgid.raw));
struct ib_ah_attr *ah_attr,
int mthca_ah_query(struct ib_ah *ibah, struct ib_ah_attr *attr)
struct ib_ah_attr *ah_attr,
int mthca_ah_query(struct ib_ah *ibah, struct ib_ah_attr *attr);
struct ib_ah_attr ah_attr;
struct ib_ah_attr *init_attr, u32 flags,
static void to_ib_ah_attr(struct mthca_dev *dev, struct ib_ah_attr *ib_ah_attr,
memset(ib_ah_attr, 0, sizeof *ib_ah_attr);
ib_ah_attr->port_num = (be32_to_cpu(path->port_pkey) >> 24) & 0x3;
if (ib_ah_attr->port_num == 0 || ib_ah_attr->port_num > dev->limits.num_ports)
ib_ah_attr->dlid = be16_to_cpu(path->rlid);
ib_ah_attr->sl = be32_to_cpu(path->sl_tclass_flowlabel) >> 28;
ib_ah_attr->src_path_bits = path->g_mylmc & 0x7f;
ib_ah_attr->static_rate = mthca_rate_to_ib(dev,
ib_ah_attr->port_num);
ib_ah_attr->ah_flags = (path->g_mylmc & (1 << 7)) ? IB_AH_GRH : 0;
if (ib_ah_attr->ah_flags) {
ib_ah_attr->grh.sgid_index = path->mgid_index & (dev->limits.gid_table_len - 1);
ib_ah_attr->grh.hop_limit = path->hop_limit;
ib_ah_attr->grh.traffic_class =
ib_ah_attr->grh.flow_label =
memcpy(ib_ah_attr->grh.dgid.raw,
path->rgid, sizeof ib_ah_attr->grh.dgid.raw);
static int mthca_path_set(struct mthca_dev *dev, const struct ib_ah_attr *ah,
qlnxr_get_vlan_id_gsi(struct ib_ah_attr *ah_attr, u16 *vlan_id)
struct ib_ah_attr *ah_attr = &get_qlnxr_ah((ud_wr(swr)->ah))->attr;
struct ib_ah_attr attr;
qlnxr_get_dmac(struct qlnxr_dev *dev, struct ib_ah_attr *ah_attr, u8 *mac_addr)
struct ib_ah_attr *attr, u32 flags,
qlnxr_query_ah(struct ib_ah *ibah, struct ib_ah_attr *attr)
qlnxr_modify_ah(struct ib_ah *ibah, struct ib_ah_attr *attr)
struct ib_ah_attr *attr, u32 flags,
struct ib_ah_attr *attr);
struct ib_ah_attr *attr);
struct ib_ah_attr ah_attr;
struct ib_ah_attr new_ah_attr;
struct ib_ah_attr attr;
struct ib_ah_attr ah_attr;
struct ib_ah_attr *ah_attr)
struct ib_ah_attr ah_attr;
struct ib_sa_path_rec *rec, struct ib_ah_attr *ah_attr)
struct ib_ah_attr ah_attr;
struct ib_ah_attr ah_attr;
struct ib_ah_attr *rdma_attr)
struct ib_ah_attr *rdma_attr,
struct ib_ah_attr attr = {};
struct ib_ah_attr *src)
struct ib_ah_attr *ah_attr)
struct ib_ah_attr *ah_attr,
struct ib_ah *ib_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr,
struct ib_ah_attr *ah_attr,
struct ib_ah_attr *ah_attr)
struct ib_ah_attr ah_attr;
int ib_modify_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr)
int ib_query_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr)
struct ib_pd *pd, struct ib_ah_attr *attr);
struct ib_pd *pd, struct ib_ah_attr *attr)
struct ib_ah_attr av;
struct ib_ah_attr av = {
struct ib_ah_attr *src);
struct ib_ah_attr *ah_attr);
struct ib_ah_attr *ah_attr);
struct ib_ah_attr ah_attr;
struct ib_ah_attr alt_ah_attr;
int (*create_ah)(struct ib_ah *ah, struct ib_ah_attr *ah_attr,
struct ib_ah_attr *ah_attr);
struct ib_ah_attr *ah_attr);
struct ib_ah *ib_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr,
struct ib_ah_attr *ah_attr,
struct ib_ah_attr *ah_attr);
int ib_modify_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr);
int ib_query_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr);
struct ib_ah_attr *ah_attr);
struct ib_ah_attr ah_attr;
struct ib_ah_attr attr;
int (*check_ah)(struct ib_device *, struct ib_ah_attr *);
void (*notify_new_ah)(struct ib_device *, struct ib_ah_attr *,
int rvt_check_ah(struct ib_device *ibdev, struct ib_ah_attr *ah_attr);
struct ib_ah_attr remote_ah_attr;
struct ib_ah_attr alt_ah_attr;