Lines Matching refs:ah_attr

341 struct ib_ah *ib_create_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr)
345 ah = pd->device->create_ah(pd, ah_attr, NULL);
492 struct ib_ah_attr *ah_attr)
503 memset(ah_attr, 0, sizeof *ah_attr);
536 ret = rdma_addr_find_l2_eth_by_grh(&dgid, &sgid, ah_attr->dmac,
544 ah_attr->dlid = wc->slid;
545 ah_attr->sl = wc->sl;
546 ah_attr->src_path_bits = wc->dlid_path_bits;
547 ah_attr->port_num = port_num;
550 ah_attr->ah_flags = IB_AH_GRH;
551 ah_attr->grh.dgid = sgid;
564 ah_attr->grh.sgid_index = (u8) gid_index;
566 ah_attr->grh.flow_label = flow_class & 0xFFFFF;
567 ah_attr->grh.hop_limit = hoplimit;
568 ah_attr->grh.traffic_class = (flow_class >> 20) & 0xFF;
577 struct ib_ah_attr ah_attr;
580 ret = ib_init_ah_from_wc(pd->device, port_num, wc, grh, &ah_attr);
584 return ib_create_ah(pd, &ah_attr);
588 int ib_modify_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr)
591 ah->device->modify_ah(ah, ah_attr) :
596 int ib_query_ah(struct ib_ah *ah, struct ib_ah_attr *ah_attr)
599 ah->device->query_ah(ah, ah_attr) :
1194 struct ib_ah_attr *ah_attr)
1201 if (ah_attr->port_num < rdma_start_port(device) ||
1202 ah_attr->port_num > rdma_end_port(device))
1205 if (!rdma_cap_eth_ah(device, ah_attr->port_num))
1208 if (rdma_is_multicast_addr((struct in6_addr *)ah_attr->grh.dgid.raw)) {
1209 if (ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw)) {
1212 memcpy(&addr, ah_attr->grh.dgid.raw + 12, 4);
1213 ip_eth_mc_map(addr, (char *)ah_attr->dmac);
1215 ipv6_eth_mc_map((struct in6_addr *)ah_attr->grh.dgid.raw,
1216 (char *)ah_attr->dmac);
1222 ah_attr->port_num,
1223 ah_attr->grh.sgid_index,
1231 &ah_attr->grh.dgid,
1232 ah_attr->dmac,
1236 ah_attr->grh.hop_limit = hop_limit;
1249 ret = ib_resolve_eth_dmac(qp->device, &qp_attr->ah_attr);