Lines Matching refs:grh

369 	if (dest->grh.sgid_attr)  in rdma_copy_ah_attr()
370 rdma_hold_gid_attr(dest->grh.sgid_attr); in rdma_copy_ah_attr()
389 if (old->grh.sgid_attr) in rdma_replace_ah_attr()
390 rdma_hold_gid_attr(old->grh.sgid_attr); in rdma_replace_ah_attr()
409 src->grh.sgid_attr = NULL; in rdma_move_ah_attr()
428 if (ah_attr->grh.sgid_attr) { in rdma_check_ah_attr()
433 if (ah_attr->grh.sgid_attr->index != ah_attr->grh.sgid_index || in rdma_check_ah_attr()
434 ah_attr->grh.sgid_attr->port_num != ah_attr->port_num) in rdma_check_ah_attr()
449 struct ib_global_route *grh; in rdma_fill_sgid_attr() local
452 *old_sgid_attr = ah_attr->grh.sgid_attr; in rdma_fill_sgid_attr()
461 grh = rdma_ah_retrieve_grh(ah_attr); in rdma_fill_sgid_attr()
462 if (grh->sgid_attr) in rdma_fill_sgid_attr()
466 rdma_get_gid_attr(device, ah_attr->port_num, grh->sgid_index); in rdma_fill_sgid_attr()
471 grh->sgid_attr = sgid_attr; in rdma_fill_sgid_attr()
482 if (ah_attr->grh.sgid_attr == old_sgid_attr) in rdma_unfill_sgid_attr()
500 rdma_hold_gid_attr(ah_attr->grh.sgid_attr); in rdma_update_sgid_attr()
501 return ah_attr->grh.sgid_attr; in rdma_update_sgid_attr()
659 const struct ib_grh *grh) in ib_get_net_type_by_grh() argument
666 grh_version = ib_get_rdma_header_version((union rdma_network_hdr *)grh); in ib_get_net_type_by_grh()
671 if (grh->next_hdr == IPPROTO_UDP) in ib_get_net_type_by_grh()
753 struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); in ib_resolve_unicast_gid_dmac() local
754 const struct ib_gid_attr *sgid_attr = grh->sgid_attr; in ib_resolve_unicast_gid_dmac()
761 if (rdma_link_local_addr((struct in6_addr *)grh->dgid.raw) && in ib_resolve_unicast_gid_dmac()
763 rdma_get_ll_mac((struct in6_addr *)grh->dgid.raw, in ib_resolve_unicast_gid_dmac()
768 ret = rdma_addr_find_l2_eth_by_grh(&sgid_attr->gid, &grh->dgid, in ib_resolve_unicast_gid_dmac()
772 grh->hop_limit = hop_limit; in ib_resolve_unicast_gid_dmac()
789 const struct ib_wc *wc, const struct ib_grh *grh, in ib_init_ah_attr_from_wc() argument
809 net_type = ib_get_net_type_by_grh(device, port_num, grh); in ib_init_ah_attr_from_wc()
812 ret = ib_get_gids_from_rdma_hdr((union rdma_network_hdr *)grh, net_type, in ib_init_ah_attr_from_wc()
833 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
862 flow_class = be32_to_cpu(grh->version_tclass_flow); in ib_init_ah_attr_from_wc()
896 attr->grh.sgid_attr = sgid_attr; in rdma_move_grh_sgid_attr()
911 if (ah_attr->grh.sgid_attr) { in rdma_destroy_ah_attr()
912 rdma_put_gid_attr(ah_attr->grh.sgid_attr); in rdma_destroy_ah_attr()
913 ah_attr->grh.sgid_attr = NULL; in rdma_destroy_ah_attr()
919 const struct ib_grh *grh, u8 port_num) in ib_create_ah_from_wc() argument
925 ret = ib_init_ah_attr_from_wc(pd->device, port_num, wc, grh, &ah_attr); in ib_create_ah_from_wc()
960 ah_attr->grh.sgid_attr = NULL; in rdma_query_ah()
1641 if (rdma_is_multicast_addr((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1642 if (ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw)) { in ib_resolve_eth_dmac()
1645 memcpy(&addr, ah_attr->grh.dgid.raw + 12, 4); in ib_resolve_eth_dmac()
1648 ipv6_eth_mc_map((struct in6_addr *)ah_attr->grh.dgid.raw, in ib_resolve_eth_dmac()
1862 qp_attr->ah_attr.grh.sgid_attr = NULL; in ib_query_qp()
1863 qp_attr->alt_ah_attr.grh.sgid_attr = NULL; in ib_query_qp()