Lines Matching refs:grh

339 	if (dest->grh.sgid_attr)  in rdma_copy_ah_attr()
340 rdma_hold_gid_attr(dest->grh.sgid_attr); in rdma_copy_ah_attr()
359 if (old->grh.sgid_attr) in rdma_replace_ah_attr()
360 rdma_hold_gid_attr(old->grh.sgid_attr); in rdma_replace_ah_attr()
379 src->grh.sgid_attr = NULL; in rdma_move_ah_attr()
398 if (ah_attr->grh.sgid_attr) { in rdma_check_ah_attr()
403 if (ah_attr->grh.sgid_attr->index != ah_attr->grh.sgid_index || in rdma_check_ah_attr()
404 ah_attr->grh.sgid_attr->port_num != ah_attr->port_num) in rdma_check_ah_attr()
419 struct ib_global_route *grh; in rdma_fill_sgid_attr() local
422 *old_sgid_attr = ah_attr->grh.sgid_attr; in rdma_fill_sgid_attr()
431 grh = rdma_ah_retrieve_grh(ah_attr); in rdma_fill_sgid_attr()
432 if (grh->sgid_attr) in rdma_fill_sgid_attr()
436 rdma_get_gid_attr(device, ah_attr->port_num, grh->sgid_index); in rdma_fill_sgid_attr()
441 grh->sgid_attr = sgid_attr; in rdma_fill_sgid_attr()
452 if (ah_attr->grh.sgid_attr == old_sgid_attr) in rdma_unfill_sgid_attr()
470 rdma_hold_gid_attr(ah_attr->grh.sgid_attr); in rdma_update_sgid_attr()
471 return ah_attr->grh.sgid_attr; in rdma_update_sgid_attr()
603 const struct ib_grh *grh) in ib_get_net_type_by_grh() argument
610 grh_version = ib_get_rdma_header_version((union rdma_network_hdr *)grh); in ib_get_net_type_by_grh()
615 if (grh->next_hdr == IPPROTO_UDP) in ib_get_net_type_by_grh()
696 struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); in ib_resolve_unicast_gid_dmac() local
697 const struct ib_gid_attr *sgid_attr = grh->sgid_attr; in ib_resolve_unicast_gid_dmac()
704 if (rdma_link_local_addr((struct in6_addr *)grh->dgid.raw) && in ib_resolve_unicast_gid_dmac()
706 rdma_get_ll_mac((struct in6_addr *)grh->dgid.raw, in ib_resolve_unicast_gid_dmac()
711 ret = rdma_addr_find_l2_eth_by_grh(&sgid_attr->gid, &grh->dgid, in ib_resolve_unicast_gid_dmac()
715 grh->hop_limit = hop_limit; in ib_resolve_unicast_gid_dmac()
732 const struct ib_wc *wc, const struct ib_grh *grh, in ib_init_ah_attr_from_wc() argument
752 net_type = ib_get_net_type_by_grh(device, port_num, grh); in ib_init_ah_attr_from_wc()
755 ret = ib_get_gids_from_rdma_hdr((union rdma_network_hdr *)grh, net_type, in ib_init_ah_attr_from_wc()
776 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
805 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
839 attr->grh.sgid_attr = sgid_attr; in rdma_move_grh_sgid_attr()
854 if (ah_attr->grh.sgid_attr) { in rdma_destroy_ah_attr()
855 rdma_put_gid_attr(ah_attr->grh.sgid_attr); in rdma_destroy_ah_attr()
856 ah_attr->grh.sgid_attr = NULL; in rdma_destroy_ah_attr()
862 const struct ib_grh *grh, u8 port_num) in ib_create_ah_from_wc() argument
868 ret = ib_init_ah_attr_from_wc(pd->device, port_num, wc, grh, &ah_attr); in ib_create_ah_from_wc()
903 ah_attr->grh.sgid_attr = NULL; in rdma_query_ah()
1552 if (rdma_is_multicast_addr((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1553 if (ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1556 memcpy(&addr, ah_attr->grh.dgid.raw + 12, 4); in ib_resolve_eth_dmac()
1559 ipv6_eth_mc_map((struct in6_addr *)ah_attr->grh.dgid.raw, in ib_resolve_eth_dmac()
1752 qp_attr->ah_attr.grh.sgid_attr = NULL; in ib_query_qp()
1753 qp_attr->alt_ah_attr.grh.sgid_attr = NULL; in ib_query_qp()