Lines Matching refs:grh

363 	if (dest->grh.sgid_attr)  in rdma_copy_ah_attr()
364 rdma_hold_gid_attr(dest->grh.sgid_attr); in rdma_copy_ah_attr()
383 if (old->grh.sgid_attr) in rdma_replace_ah_attr()
384 rdma_hold_gid_attr(old->grh.sgid_attr); in rdma_replace_ah_attr()
403 src->grh.sgid_attr = NULL; in rdma_move_ah_attr()
422 if (ah_attr->grh.sgid_attr) { in rdma_check_ah_attr()
427 if (ah_attr->grh.sgid_attr->index != ah_attr->grh.sgid_index || in rdma_check_ah_attr()
428 ah_attr->grh.sgid_attr->port_num != ah_attr->port_num) in rdma_check_ah_attr()
443 struct ib_global_route *grh; in rdma_fill_sgid_attr() local
446 *old_sgid_attr = ah_attr->grh.sgid_attr; in rdma_fill_sgid_attr()
455 grh = rdma_ah_retrieve_grh(ah_attr); in rdma_fill_sgid_attr()
456 if (grh->sgid_attr) in rdma_fill_sgid_attr()
460 rdma_get_gid_attr(device, ah_attr->port_num, grh->sgid_index); in rdma_fill_sgid_attr()
465 grh->sgid_attr = sgid_attr; in rdma_fill_sgid_attr()
476 if (ah_attr->grh.sgid_attr == old_sgid_attr) in rdma_unfill_sgid_attr()
494 rdma_hold_gid_attr(ah_attr->grh.sgid_attr); in rdma_update_sgid_attr()
495 return ah_attr->grh.sgid_attr; in rdma_update_sgid_attr()
656 const struct ib_grh *grh) in ib_get_net_type_by_grh() argument
663 grh_version = ib_get_rdma_header_version((union rdma_network_hdr *)grh); in ib_get_net_type_by_grh()
668 if (grh->next_hdr == IPPROTO_UDP) in ib_get_net_type_by_grh()
750 struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); in ib_resolve_unicast_gid_dmac() local
751 const struct ib_gid_attr *sgid_attr = grh->sgid_attr; in ib_resolve_unicast_gid_dmac()
758 if (rdma_link_local_addr((struct in6_addr *)grh->dgid.raw) && in ib_resolve_unicast_gid_dmac()
760 rdma_get_ll_mac((struct in6_addr *)grh->dgid.raw, in ib_resolve_unicast_gid_dmac()
765 ret = rdma_addr_find_l2_eth_by_grh(&sgid_attr->gid, &grh->dgid, in ib_resolve_unicast_gid_dmac()
769 grh->hop_limit = hop_limit; in ib_resolve_unicast_gid_dmac()
786 const struct ib_wc *wc, const struct ib_grh *grh, in ib_init_ah_attr_from_wc() argument
806 net_type = ib_get_net_type_by_grh(device, port_num, grh); in ib_init_ah_attr_from_wc()
809 ret = ib_get_gids_from_rdma_hdr((union rdma_network_hdr *)grh, net_type, in ib_init_ah_attr_from_wc()
830 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
859 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
893 attr->grh.sgid_attr = sgid_attr; in rdma_move_grh_sgid_attr()
908 if (ah_attr->grh.sgid_attr) { in rdma_destroy_ah_attr()
909 rdma_put_gid_attr(ah_attr->grh.sgid_attr); in rdma_destroy_ah_attr()
910 ah_attr->grh.sgid_attr = NULL; in rdma_destroy_ah_attr()
916 const struct ib_grh *grh, u32 port_num) in ib_create_ah_from_wc() argument
922 ret = ib_init_ah_attr_from_wc(pd->device, port_num, wc, grh, &ah_attr); in ib_create_ah_from_wc()
957 ah_attr->grh.sgid_attr = NULL; in rdma_query_ah()
1723 if (rdma_is_multicast_addr((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1724 if (ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1727 memcpy(&addr, ah_attr->grh.dgid.raw + 12, 4); in ib_resolve_eth_dmac()
1730 ipv6_eth_mc_map((struct in6_addr *)ah_attr->grh.dgid.raw, in ib_resolve_eth_dmac()
1946 qp_attr->ah_attr.grh.sgid_attr = NULL; in ib_query_qp()
1947 qp_attr->alt_ah_attr.grh.sgid_attr = NULL; in ib_query_qp()