grh 81 drivers/infiniband/core/agent.c void agent_send_response(const struct ib_mad_hdr *mad_hdr, const struct ib_grh *grh, grh 102 drivers/infiniband/core/agent.c ah = ib_create_ah_from_wc(agent->qp->pd, wc, grh, port_num); grh 47 drivers/infiniband/core/agent.h extern void agent_send_response(const struct ib_mad_hdr *mad_hdr, const struct ib_grh *grh, grh 393 drivers/infiniband/core/cm.c mad_recv_wc->recv_buf.grh, port->port_num); grh 457 drivers/infiniband/core/cm.c struct ib_grh *grh, struct cm_av *av) grh 474 drivers/infiniband/core/cm.c grh, &new_ah_attr); grh 483 drivers/infiniband/core/cm.c struct ib_grh *grh, struct cm_av *av) grh 489 drivers/infiniband/core/cm.c grh, &av->ah_attr); grh 1712 drivers/infiniband/core/cm.c param->ppath_sgid_attr = cm_id_priv->av.ah_attr.grh.sgid_attr; grh 1936 drivers/infiniband/core/cm.c const struct ib_global_route *grh; grh 1949 drivers/infiniband/core/cm.c work->mad_recv_wc->recv_buf.grh, grh 1981 drivers/infiniband/core/cm.c grh = rdma_ah_read_grh(&cm_id_priv->av.ah_attr); grh 1982 drivers/infiniband/core/cm.c gid_attr = grh->sgid_attr; grh 2002 drivers/infiniband/core/cm.c work->path[0].hop_limit = grh->hop_limit; grh 3283 drivers/infiniband/core/cm.c work->mad_recv_wc->recv_buf.grh, grh 3546 drivers/infiniband/core/cm.c param->sgid_attr = rx_cm_id->av.ah_attr.grh.sgid_attr; grh 3570 drivers/infiniband/core/cm.c work->mad_recv_wc->recv_buf.grh, grh 3695 drivers/infiniband/core/cm.c param->sgid_attr = cm_id_priv->av.ah_attr.grh.sgid_attr; grh 1945 drivers/infiniband/core/mad.c const struct ib_global_route *grh = grh 1949 drivers/infiniband/core/mad.c grh->sgid_index, &sgid)) grh 1951 drivers/infiniband/core/mad.c return !memcmp(sgid.raw, rwc->recv_buf.grh->dgid.raw, grh 1960 drivers/infiniband/core/mad.c rwc->recv_buf.grh->sgid.raw, grh 2131 drivers/infiniband/core/mad.c response->header.recv_wc.recv_buf.grh = &response->grh; grh 2134 drivers/infiniband/core/mad.c &response->grh, wc, grh 2158 drivers/infiniband/core/mad.c response->header.recv_wc.recv_buf.grh = &response->grh; grh 2221 drivers/infiniband/core/mad.c response->header.recv_wc.recv_buf.grh = &response->grh; grh 2224 drivers/infiniband/core/mad.c &response->grh, wc, grh 2309 drivers/infiniband/core/mad.c recv->header.recv_wc.recv_buf.grh = &recv->grh; grh 2343 drivers/infiniband/core/mad.c &recv->grh, (const struct ib_mad_hdr *)recv->mad, grh 2355 drivers/infiniband/core/mad.c &recv->grh, wc, grh 2376 drivers/infiniband/core/mad.c agent_send_response((const struct ib_mad_hdr *)response->mad, &recv->grh, wc, grh 2801 drivers/infiniband/core/mad.c local->mad_priv->header.recv_wc.recv_buf.grh = NULL; grh 2958 drivers/infiniband/core/mad.c &mad_priv->grh, grh 81 drivers/infiniband/core/mad_priv.h struct ib_grh grh; grh 164 drivers/infiniband/core/mad_rmpp.c recv_wc->recv_buf.grh, agent->port_num); grh 297 drivers/infiniband/core/mad_rmpp.c mad_recv_wc->recv_buf.grh, grh 187 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, ip_version), grh 191 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, traffic_class), grh 195 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, flow_label), grh 199 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, payload_length), grh 203 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, next_header), grh 207 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, hop_limit), grh 211 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, source_gid), grh 215 drivers/infiniband/core/ud_header.c { STRUCT_FIELD(grh, destination_gid), grh 356 drivers/infiniband/core/ud_header.c header->grh.ip_version = 6; grh 357 drivers/infiniband/core/ud_header.c header->grh.payload_length = grh 364 drivers/infiniband/core/ud_header.c header->grh.next_header = udp_present ? IPPROTO_UDP : 0x1b; grh 435 drivers/infiniband/core/ud_header.c &header->grh, buf + len); grh 495 drivers/infiniband/core/ud_header.c buf, &header->grh); grh 498 drivers/infiniband/core/ud_header.c if (header->grh.ip_version != 6) { grh 500 drivers/infiniband/core/ud_header.c header->grh.ip_version); grh 503 drivers/infiniband/core/ud_header.c if (header->grh.next_header != 0x1b) { grh 505 drivers/infiniband/core/ud_header.c header->grh.next_header); grh 263 drivers/infiniband/core/user_mad.c const struct ib_global_route *grh; grh 268 drivers/infiniband/core/user_mad.c mad_recv_wc->recv_buf.grh, grh 273 drivers/infiniband/core/user_mad.c grh = rdma_ah_read_grh(&ah_attr); grh 274 drivers/infiniband/core/user_mad.c packet->mad.hdr.gid_index = grh->sgid_index; grh 275 drivers/infiniband/core/user_mad.c packet->mad.hdr.hop_limit = grh->hop_limit; grh 276 drivers/infiniband/core/user_mad.c packet->mad.hdr.traffic_class = grh->traffic_class; grh 277 drivers/infiniband/core/user_mad.c memcpy(packet->mad.hdr.gid, &grh->dgid, 16); grh 278 drivers/infiniband/core/user_mad.c packet->mad.hdr.flow_label = cpu_to_be32(grh->flow_label); grh 1628 drivers/infiniband/core/uverbs_cmd.c const struct ib_global_route *grh; grh 1637 drivers/infiniband/core/uverbs_cmd.c grh = rdma_ah_read_grh(rdma_attr); grh 1638 drivers/infiniband/core/uverbs_cmd.c memcpy(uverb_attr->dgid, grh->dgid.raw, 16); grh 1639 drivers/infiniband/core/uverbs_cmd.c uverb_attr->flow_label = grh->flow_label; grh 1640 drivers/infiniband/core/uverbs_cmd.c uverb_attr->sgid_index = grh->sgid_index; grh 1641 drivers/infiniband/core/uverbs_cmd.c uverb_attr->hop_limit = grh->hop_limit; grh 1642 drivers/infiniband/core/uverbs_cmd.c uverb_attr->traffic_class = grh->traffic_class; grh 2430 drivers/infiniband/core/uverbs_cmd.c rdma_ah_set_grh(&attr, NULL, cmd.attr.grh.flow_label, grh 2431 drivers/infiniband/core/uverbs_cmd.c cmd.attr.grh.sgid_index, grh 2432 drivers/infiniband/core/uverbs_cmd.c cmd.attr.grh.hop_limit, grh 2433 drivers/infiniband/core/uverbs_cmd.c cmd.attr.grh.traffic_class); grh 2434 drivers/infiniband/core/uverbs_cmd.c rdma_ah_set_dgid_raw(&attr, cmd.attr.grh.dgid); grh 69 drivers/infiniband/core/uverbs_marshall.c memset(&dst->grh.reserved, 0, sizeof(dst->grh.reserved)); grh 83 drivers/infiniband/core/uverbs_marshall.c const struct ib_global_route *grh = rdma_ah_read_grh(src); grh 85 drivers/infiniband/core/uverbs_marshall.c memcpy(dst->grh.dgid, grh->dgid.raw, sizeof(grh->dgid)); grh 86 drivers/infiniband/core/uverbs_marshall.c dst->grh.flow_label = grh->flow_label; grh 87 drivers/infiniband/core/uverbs_marshall.c dst->grh.sgid_index = grh->sgid_index; grh 88 drivers/infiniband/core/uverbs_marshall.c dst->grh.hop_limit = grh->hop_limit; grh 89 drivers/infiniband/core/uverbs_marshall.c dst->grh.traffic_class = grh->traffic_class; grh 360 drivers/infiniband/core/verbs.c if (dest->grh.sgid_attr) grh 361 drivers/infiniband/core/verbs.c rdma_hold_gid_attr(dest->grh.sgid_attr); grh 380 drivers/infiniband/core/verbs.c if (old->grh.sgid_attr) grh 381 drivers/infiniband/core/verbs.c rdma_hold_gid_attr(old->grh.sgid_attr); grh 400 drivers/infiniband/core/verbs.c src->grh.sgid_attr = NULL; grh 419 drivers/infiniband/core/verbs.c if (ah_attr->grh.sgid_attr) { grh 424 drivers/infiniband/core/verbs.c if (ah_attr->grh.sgid_attr->index != ah_attr->grh.sgid_index || grh 425 drivers/infiniband/core/verbs.c ah_attr->grh.sgid_attr->port_num != ah_attr->port_num) grh 440 drivers/infiniband/core/verbs.c struct ib_global_route *grh; grh 443 drivers/infiniband/core/verbs.c *old_sgid_attr = ah_attr->grh.sgid_attr; grh 452 drivers/infiniband/core/verbs.c grh = rdma_ah_retrieve_grh(ah_attr); grh 453 drivers/infiniband/core/verbs.c if (grh->sgid_attr) grh 457 drivers/infiniband/core/verbs.c rdma_get_gid_attr(device, ah_attr->port_num, grh->sgid_index); grh 462 drivers/infiniband/core/verbs.c grh->sgid_attr = sgid_attr; grh 473 drivers/infiniband/core/verbs.c if (ah_attr->grh.sgid_attr == old_sgid_attr) grh 491 drivers/infiniband/core/verbs.c rdma_hold_gid_attr(ah_attr->grh.sgid_attr); grh 492 drivers/infiniband/core/verbs.c return ah_attr->grh.sgid_attr; grh 637 drivers/infiniband/core/verbs.c const struct ib_grh *grh) grh 644 drivers/infiniband/core/verbs.c grh_version = ib_get_rdma_header_version((union rdma_network_hdr *)grh); grh 649 drivers/infiniband/core/verbs.c if (grh->next_hdr == IPPROTO_UDP) grh 731 drivers/infiniband/core/verbs.c struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); grh 732 drivers/infiniband/core/verbs.c const struct ib_gid_attr *sgid_attr = grh->sgid_attr; grh 739 drivers/infiniband/core/verbs.c if (rdma_link_local_addr((struct in6_addr *)grh->dgid.raw) && grh 741 drivers/infiniband/core/verbs.c rdma_get_ll_mac((struct in6_addr *)grh->dgid.raw, grh 746 drivers/infiniband/core/verbs.c ret = rdma_addr_find_l2_eth_by_grh(&sgid_attr->gid, &grh->dgid, grh 750 drivers/infiniband/core/verbs.c grh->hop_limit = hop_limit; grh 767 drivers/infiniband/core/verbs.c const struct ib_wc *wc, const struct ib_grh *grh, grh 787 drivers/infiniband/core/verbs.c net_type = ib_get_net_type_by_grh(device, port_num, grh); grh 790 drivers/infiniband/core/verbs.c ret = ib_get_gids_from_rdma_hdr((union rdma_network_hdr *)grh, net_type, grh 811 drivers/infiniband/core/verbs.c flow_class = be32_to_cpu(grh->version_tclass_flow); grh 840 drivers/infiniband/core/verbs.c flow_class = be32_to_cpu(grh->version_tclass_flow); grh 874 drivers/infiniband/core/verbs.c attr->grh.sgid_attr = sgid_attr; grh 889 drivers/infiniband/core/verbs.c if (ah_attr->grh.sgid_attr) { grh 890 drivers/infiniband/core/verbs.c rdma_put_gid_attr(ah_attr->grh.sgid_attr); grh 891 drivers/infiniband/core/verbs.c ah_attr->grh.sgid_attr = NULL; grh 897 drivers/infiniband/core/verbs.c const struct ib_grh *grh, u8 port_num) grh 903 drivers/infiniband/core/verbs.c ret = ib_init_ah_attr_from_wc(pd->device, port_num, wc, grh, &ah_attr); grh 938 drivers/infiniband/core/verbs.c ah_attr->grh.sgid_attr = NULL; grh 1590 drivers/infiniband/core/verbs.c if (rdma_is_multicast_addr((struct in6_addr *)ah_attr->grh.dgid.raw)) { grh 1591 drivers/infiniband/core/verbs.c if (ipv6_addr_v4mapped((struct in6_addr *)ah_attr->grh.dgid.raw)) { grh 1594 drivers/infiniband/core/verbs.c memcpy(&addr, ah_attr->grh.dgid.raw + 12, 4); grh 1597 drivers/infiniband/core/verbs.c ipv6_eth_mc_map((struct in6_addr *)ah_attr->grh.dgid.raw, grh 1797 drivers/infiniband/core/verbs.c qp_attr->ah_attr.grh.sgid_attr = NULL; grh 1798 drivers/infiniband/core/verbs.c qp_attr->alt_ah_attr.grh.sgid_attr = NULL; grh 657 drivers/infiniband/hw/bnxt_re/ib_verbs.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 673 drivers/infiniband/hw/bnxt_re/ib_verbs.c memcpy(ah->qplib_ah.dgid.data, grh->dgid.raw, grh 680 drivers/infiniband/hw/bnxt_re/ib_verbs.c ah->qplib_ah.sgid_index = grh->sgid_index / 2; grh 681 drivers/infiniband/hw/bnxt_re/ib_verbs.c ah->qplib_ah.host_sgid_index = grh->sgid_index; grh 682 drivers/infiniband/hw/bnxt_re/ib_verbs.c ah->qplib_ah.traffic_class = grh->traffic_class; grh 683 drivers/infiniband/hw/bnxt_re/ib_verbs.c ah->qplib_ah.flow_label = grh->flow_label; grh 684 drivers/infiniband/hw/bnxt_re/ib_verbs.c ah->qplib_ah.hop_limit = grh->hop_limit; grh 687 drivers/infiniband/hw/bnxt_re/ib_verbs.c sgid_attr = grh->sgid_attr; grh 1609 drivers/infiniband/hw/bnxt_re/ib_verbs.c const struct ib_global_route *grh = grh 1620 drivers/infiniband/hw/bnxt_re/ib_verbs.c memcpy(qp->qplib_qp.ah.dgid.data, grh->dgid.raw, grh 1622 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qplib_qp.ah.flow_label = grh->flow_label; grh 1627 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qplib_qp.ah.sgid_index = grh->sgid_index / 2; grh 1628 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qplib_qp.ah.host_sgid_index = grh->sgid_index; grh 1629 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qplib_qp.ah.hop_limit = grh->hop_limit; grh 1630 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qplib_qp.ah.traffic_class = grh->traffic_class; grh 1635 drivers/infiniband/hw/bnxt_re/ib_verbs.c sgid_attr = qp_attr->ah_attr.grh.sgid_attr; grh 1912 drivers/infiniband/hw/bnxt_re/ib_verbs.c memcpy(qp->qp1_hdr.grh.source_gid.raw, sgid_attr->gid.raw, grh 1914 drivers/infiniband/hw/bnxt_re/ib_verbs.c memcpy(qp->qp1_hdr.grh.destination_gid.raw, qplib_ah->dgid.data, grh 1916 drivers/infiniband/hw/bnxt_re/ib_verbs.c qp->qp1_hdr.grh.hop_limit = qplib_ah->hop_limit; grh 1707 drivers/infiniband/hw/efa/efa_verbs.c memcpy(params.dest_addr, ah_attr->grh.dgid.raw, grh 1714 drivers/infiniband/hw/efa/efa_verbs.c memcpy(ah->id, ah_attr->grh.dgid.raw, sizeof(ah->id)); grh 278 drivers/infiniband/hw/hfi1/driver.c packet->grh = &rhdr->u.l.grh; grh 295 drivers/infiniband/hw/hfi1/driver.c if (packet->grh) { grh 297 drivers/infiniband/hw/hfi1/driver.c struct ib_grh *grh = packet->grh; grh 299 drivers/infiniband/hw/hfi1/driver.c if (grh->next_hdr != IB_GRH_NEXT_HDR) grh 301 drivers/infiniband/hw/hfi1/driver.c vtf = be32_to_cpu(grh->version_tclass_flow); grh 450 drivers/infiniband/hw/hfi1/driver.c struct ib_grh *grh = pkt->grh; grh 524 drivers/infiniband/hw/hfi1/driver.c dlid, rlid, sc, grh); grh 648 drivers/infiniband/hw/hfi1/driver.c packet->grh = NULL; grh 651 drivers/infiniband/hw/hfi1/driver.c packet->grh = &hdr->u.l.grh; grh 816 drivers/infiniband/hw/hfi1/driver.c packet->grh = NULL; grh 1459 drivers/infiniband/hw/hfi1/driver.c packet->grh = NULL; grh 1464 drivers/infiniband/hw/hfi1/driver.c packet->grh = &hdr->u.l.grh; grh 1465 drivers/infiniband/hw/hfi1/driver.c if (packet->grh->next_hdr != IB_GRH_NEXT_HDR) grh 1467 drivers/infiniband/hw/hfi1/driver.c vtf = be32_to_cpu(packet->grh->version_tclass_flow); grh 1519 drivers/infiniband/hw/hfi1/driver.c packet->grh = NULL; grh 1531 drivers/infiniband/hw/hfi1/driver.c packet->grh = packet->ebuf; grh 1539 drivers/infiniband/hw/hfi1/driver.c if (packet->grh->next_hdr != IB_GRH_NEXT_HDR) grh 1541 drivers/infiniband/hw/hfi1/driver.c vtf = be32_to_cpu(packet->grh->version_tclass_flow); grh 1547 drivers/infiniband/hw/hfi1/driver.c packet->grh = NULL; grh 373 drivers/infiniband/hw/hfi1/hfi.h struct ib_grh *grh; grh 2392 drivers/infiniband/hw/hfi1/hfi.h const struct ib_global_route *grh = rdma_ah_read_grh(attr); grh 2403 drivers/infiniband/hw/hfi1/hfi.h if (ib_is_opa_gid(&grh->dgid)) grh 2404 drivers/infiniband/hw/hfi1/hfi.h dlid = opa_get_lid_from_gid(&grh->dgid); grh 2453 drivers/infiniband/hw/hfi1/hfi.h struct ib_grh *grh, u32 slid, grh 2462 drivers/infiniband/hw/hfi1/hfi.h grh->hop_limit = 1; grh 2463 drivers/infiniband/hw/hfi1/hfi.h grh->sgid.global.subnet_prefix = ibp->rvp.gid_prefix; grh 2465 drivers/infiniband/hw/hfi1/hfi.h grh->sgid.global.interface_id = grh 2468 drivers/infiniband/hw/hfi1/hfi.h grh->sgid.global.interface_id = OPA_MAKE_ID(slid); grh 2477 drivers/infiniband/hw/hfi1/hfi.h grh->dgid.global.subnet_prefix = ibp->rvp.gid_prefix; grh 2478 drivers/infiniband/hw/hfi1/hfi.h grh->dgid.global.interface_id = grh 264 drivers/infiniband/hw/hfi1/mad.c struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 267 drivers/infiniband/hw/hfi1/mad.c grh->sgid_index = 0; grh 268 drivers/infiniband/hw/hfi1/mad.c grh->hop_limit = 1; grh 269 drivers/infiniband/hw/hfi1/mad.c grh->dgid.global.subnet_prefix = grh 271 drivers/infiniband/hw/hfi1/mad.c grh->dgid.global.interface_id = OPA_MAKE_ID(dlid); grh 1282 drivers/infiniband/hw/hfi1/rc.c *hwords += hfi1_make_grh(ibp, &hdr->u.l.grh, grh 1340 drivers/infiniband/hw/hfi1/rc.c *hwords += hfi1_make_grh(ibp, &hdr->u.l.grh, grh 82 drivers/infiniband/hw/hfi1/ruc.c if (!packet->grh) { grh 88 drivers/infiniband/hw/hfi1/ruc.c const struct ib_global_route *grh; grh 93 drivers/infiniband/hw/hfi1/ruc.c grh = rdma_ah_read_grh(&qp->alt_ah_attr); grh 94 drivers/infiniband/hw/hfi1/ruc.c guid = get_sguid(ibp, grh->sgid_index); grh 95 drivers/infiniband/hw/hfi1/ruc.c if (!gid_ok(&packet->grh->dgid, ibp->rvp.gid_prefix, grh 99 drivers/infiniband/hw/hfi1/ruc.c &packet->grh->sgid, grh 100 drivers/infiniband/hw/hfi1/ruc.c grh->dgid.global.subnet_prefix, grh 101 drivers/infiniband/hw/hfi1/ruc.c grh->dgid.global.interface_id)) grh 119 drivers/infiniband/hw/hfi1/ruc.c if (!packet->grh) { grh 125 drivers/infiniband/hw/hfi1/ruc.c const struct ib_global_route *grh; grh 130 drivers/infiniband/hw/hfi1/ruc.c grh = rdma_ah_read_grh(&qp->remote_ah_attr); grh 131 drivers/infiniband/hw/hfi1/ruc.c guid = get_sguid(ibp, grh->sgid_index); grh 132 drivers/infiniband/hw/hfi1/ruc.c if (!gid_ok(&packet->grh->dgid, ibp->rvp.gid_prefix, grh 136 drivers/infiniband/hw/hfi1/ruc.c &packet->grh->sgid, grh 137 drivers/infiniband/hw/hfi1/ruc.c grh->dgid.global.subnet_prefix, grh 138 drivers/infiniband/hw/hfi1/ruc.c grh->dgid.global.interface_id)) grh 169 drivers/infiniband/hw/hfi1/ruc.c const struct ib_global_route *grh, u32 hwords, u32 nwords) grh 173 drivers/infiniband/hw/hfi1/ruc.c (grh->traffic_class << IB_GRH_TCLASS_SHIFT) | grh 174 drivers/infiniband/hw/hfi1/ruc.c (grh->flow_label << IB_GRH_FLOW_SHIFT)); grh 178 drivers/infiniband/hw/hfi1/ruc.c hdr->hop_limit = grh->hop_limit; grh 182 drivers/infiniband/hw/hfi1/ruc.c grh->sgid_index < HFI1_GUIDS_PER_PORT ? grh 183 drivers/infiniband/hw/hfi1/ruc.c get_sguid(ibp, grh->sgid_index) : grh 185 drivers/infiniband/hw/hfi1/ruc.c hdr->dgid = grh->dgid; grh 293 drivers/infiniband/hw/hfi1/ruc.c struct ib_grh *grh; grh 302 drivers/infiniband/hw/hfi1/ruc.c grh = &ps->s_txreq->phdr.hdr.opah.u.l.grh; grh 305 drivers/infiniband/hw/hfi1/ruc.c hfi1_make_grh(ibp, grh, grd, grh 375 drivers/infiniband/hw/hfi1/ruc.c struct ib_grh *grh = &ps->s_txreq->phdr.hdr.ibh.u.l.grh; grh 379 drivers/infiniband/hw/hfi1/ruc.c hfi1_make_grh(ibp, grh, grh 186 drivers/infiniband/hw/hfi1/ud.c struct ib_grh grh; grh 213 drivers/infiniband/hw/hfi1/ud.c hfi1_make_grh(ibp, &grh, &grd, 0, 0); grh 214 drivers/infiniband/hw/hfi1/ud.c rvt_copy_sge(qp, &qp->r_sge, &grh, grh 215 drivers/infiniband/hw/hfi1/ud.c sizeof(grh), true, false); grh 315 drivers/infiniband/hw/hfi1/ud.c struct ib_grh *grh; grh 329 drivers/infiniband/hw/hfi1/ud.c grh = &ps->s_txreq->phdr.hdr.ibh.u.l.grh; grh 331 drivers/infiniband/hw/hfi1/ud.c hfi1_make_grh(ibp, grh, rdma_ah_read_grh(ah_attr), grh 415 drivers/infiniband/hw/hfi1/ud.c struct ib_grh *grh; grh 426 drivers/infiniband/hw/hfi1/ud.c grh = &ps->s_txreq->phdr.hdr.opah.u.l.grh; grh 428 drivers/infiniband/hw/hfi1/ud.c ibp, grh, grd, grh 652 drivers/infiniband/hw/hfi1/ud.c struct ib_grh *grh = &hdr.opah.u.l.grh; grh 654 drivers/infiniband/hw/hfi1/ud.c grh->version_tclass_flow = old_grh->version_tclass_flow; grh 655 drivers/infiniband/hw/hfi1/ud.c grh->paylen = cpu_to_be16( grh 657 drivers/infiniband/hw/hfi1/ud.c grh->hop_limit = 0xff; grh 658 drivers/infiniband/hw/hfi1/ud.c grh->sgid = old_grh->dgid; grh 659 drivers/infiniband/hw/hfi1/ud.c grh->dgid = old_grh->sgid; grh 710 drivers/infiniband/hw/hfi1/ud.c struct ib_grh *grh = &hdr.ibh.u.l.grh; grh 712 drivers/infiniband/hw/hfi1/ud.c grh->version_tclass_flow = old_grh->version_tclass_flow; grh 713 drivers/infiniband/hw/hfi1/ud.c grh->paylen = cpu_to_be16( grh 715 drivers/infiniband/hw/hfi1/ud.c grh->hop_limit = 0xff; grh 716 drivers/infiniband/hw/hfi1/ud.c grh->sgid = old_grh->dgid; grh 717 drivers/infiniband/hw/hfi1/ud.c grh->dgid = old_grh->sgid; grh 1007 drivers/infiniband/hw/hfi1/ud.c if (packet->grh) { grh 1008 drivers/infiniband/hw/hfi1/ud.c rvt_copy_sge(qp, &qp->r_sge, packet->grh, grh 1012 drivers/infiniband/hw/hfi1/ud.c struct ib_grh grh; grh 1018 drivers/infiniband/hw/hfi1/ud.c hfi1_make_ext_grh(packet, &grh, slid, dlid); grh 1019 drivers/infiniband/hw/hfi1/ud.c rvt_copy_sge(qp, &qp->r_sge, &grh, grh 511 drivers/infiniband/hw/hfi1/verbs.c if (!packet->grh) grh 514 drivers/infiniband/hw/hfi1/verbs.c &packet->grh->dgid, grh 125 drivers/infiniband/hw/hfi1/verbs.h struct ib_grh grh; grh 443 drivers/infiniband/hw/hfi1/verbs.h const struct ib_global_route *grh, u32 hwords, u32 nwords); grh 50 drivers/infiniband/hw/hns/hns_roce_ah.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 54 drivers/infiniband/hw/hns/hns_roce_ah.c gid_attr = ah_attr->grh.sgid_attr; grh 70 drivers/infiniband/hw/hns/hns_roce_ah.c ah->av.gid_index = grh->sgid_index; grh 79 drivers/infiniband/hw/hns/hns_roce_ah.c memcpy(ah->av.dgid, grh->dgid.raw, HNS_ROCE_GID_SIZE); grh 2720 drivers/infiniband/hw/hns/hns_roce_hw_v1.c const struct ib_global_route *grh = rdma_ah_read_grh(&attr->ah_attr); grh 2956 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->sgid_index)); grh 2971 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->hop_limit); grh 2976 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->flow_label); grh 2980 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->traffic_class); grh 2985 drivers/infiniband/hw/hns/hns_roce_hw_v1.c memcpy(context->dgid, grh->dgid.raw, grh 2986 drivers/infiniband/hw/hns/hns_roce_hw_v1.c sizeof(grh->dgid.raw)); grh 3519 drivers/infiniband/hw/hns/hns_roce_hw_v1.c struct ib_global_route *grh = grh 3527 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->flow_label = grh 3531 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->sgid_index = grh 3535 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->hop_limit = grh 3539 drivers/infiniband/hw/hns/hns_roce_hw_v1.c grh->traffic_class = grh 3544 drivers/infiniband/hw/hns/hns_roce_hw_v1.c memcpy(grh->dgid.raw, context->dgid, grh 3545 drivers/infiniband/hw/hns/hns_roce_hw_v1.c sizeof(grh->dgid.raw)); grh 3671 drivers/infiniband/hw/hns/hns_roce_hw_v2.c const struct ib_global_route *grh = rdma_ah_read_grh(&attr->ah_attr); grh 3848 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->sgid_index)); grh 4062 drivers/infiniband/hw/hns/hns_roce_hw_v2.c const struct ib_global_route *grh = rdma_ah_read_grh(&attr->ah_attr); grh 4079 drivers/infiniband/hw/hns/hns_roce_hw_v2.c gid_attr = attr->ah_attr.grh.sgid_attr; grh 4105 drivers/infiniband/hw/hns/hns_roce_hw_v2.c if (grh->sgid_index >= hr_dev->caps.gid_table_len[hr_port]) { grh 4107 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->sgid_index, hr_dev->caps.gid_table_len[hr_port]); grh 4125 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->sgid_index); grh 4131 drivers/infiniband/hw/hns/hns_roce_hw_v2.c V2_QPC_BYTE_24_HOP_LIMIT_S, grh->hop_limit); grh 4137 drivers/infiniband/hw/hns/hns_roce_hw_v2.c V2_QPC_BYTE_24_TC_S, grh->traffic_class >> 2); grh 4140 drivers/infiniband/hw/hns/hns_roce_hw_v2.c V2_QPC_BYTE_24_TC_S, grh->traffic_class); grh 4144 drivers/infiniband/hw/hns/hns_roce_hw_v2.c V2_QPC_BYTE_28_FL_S, grh->flow_label); grh 4147 drivers/infiniband/hw/hns/hns_roce_hw_v2.c memcpy(context->dgid, grh->dgid.raw, sizeof(grh->dgid.raw)); grh 4148 drivers/infiniband/hw/hns/hns_roce_hw_v2.c memset(qpc_mask->dgid, 0, sizeof(grh->dgid.raw)); grh 4587 drivers/infiniband/hw/hns/hns_roce_hw_v2.c struct ib_global_route *grh = grh 4594 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->flow_label = roce_get_field(context.byte_28_at_fl, grh 4597 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->sgid_index = roce_get_field(context.byte_20_smac_sgid_idx, grh 4600 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->hop_limit = roce_get_field(context.byte_24_mtu_tc, grh 4603 drivers/infiniband/hw/hns/hns_roce_hw_v2.c grh->traffic_class = roce_get_field(context.byte_24_mtu_tc, grh 4607 drivers/infiniband/hw/hns/hns_roce_hw_v2.c memcpy(grh->dgid.raw, context.dgid, sizeof(grh->dgid.raw)); grh 54 drivers/infiniband/hw/mlx4/ah.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 57 drivers/infiniband/hw/mlx4/ah.c ah->av.ib.gid_index = grh->sgid_index; grh 58 drivers/infiniband/hw/mlx4/ah.c ah->av.ib.hop_limit = grh->hop_limit; grh 60 drivers/infiniband/hw/mlx4/ah.c cpu_to_be32((grh->traffic_class << 20) | grh 61 drivers/infiniband/hw/mlx4/ah.c grh->flow_label); grh 62 drivers/infiniband/hw/mlx4/ah.c memcpy(ah->av.ib.dgid, grh->dgid.raw, 16); grh 86 drivers/infiniband/hw/mlx4/ah.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 89 drivers/infiniband/hw/mlx4/ah.c memcpy(&in6, grh->dgid.raw, sizeof(in6)); grh 100 drivers/infiniband/hw/mlx4/ah.c gid_attr = ah_attr->grh.sgid_attr; grh 113 drivers/infiniband/hw/mlx4/ah.c ah->av.eth.gid_index = ah_attr->grh.sgid_index; grh 121 drivers/infiniband/hw/mlx4/ah.c ah->av.eth.hop_limit = grh->hop_limit; grh 130 drivers/infiniband/hw/mlx4/ah.c cpu_to_be32((grh->traffic_class << 20) | grh 131 drivers/infiniband/hw/mlx4/ah.c grh->flow_label); grh 138 drivers/infiniband/hw/mlx4/ah.c memcpy(ah->av.eth.dgid, grh->dgid.raw, 16); grh 173 drivers/infiniband/hw/mlx4/ah.c slave_attr.grh.sgid_attr = NULL; grh 174 drivers/infiniband/hw/mlx4/ah.c slave_attr.grh.sgid_index = slave_sgid_index; grh 71 drivers/infiniband/hw/mlx4/mad.c struct ib_grh grh; grh 80 drivers/infiniband/hw/mlx4/mad.c struct ib_grh grh; grh 87 drivers/infiniband/hw/mlx4/mad.c struct ib_grh grh; grh 154 drivers/infiniband/hw/mlx4/mad.c u8 grh[40]; grh 168 drivers/infiniband/hw/mlx4/mad.c memcpy(ext_info->grh, in_grh, 40); grh 486 drivers/infiniband/hw/mlx4/mad.c static int get_gids_from_l3_hdr(struct ib_grh *grh, union ib_gid *sgid, grh 489 drivers/infiniband/hw/mlx4/mad.c int version = ib_get_rdma_header_version((const union rdma_network_hdr *)grh); grh 499 drivers/infiniband/hw/mlx4/mad.c return ib_get_gids_from_rdma_hdr((union rdma_network_hdr *)grh, net_type, grh 505 drivers/infiniband/hw/mlx4/mad.c struct ib_grh *grh, struct ib_mad *mad) grh 566 drivers/infiniband/hw/mlx4/mad.c if (get_gids_from_l3_hdr(grh, &sgid, &dgid)) grh 595 drivers/infiniband/hw/mlx4/mad.c if (grh) grh 596 drivers/infiniband/hw/mlx4/mad.c memcpy(&tun_mad->grh, grh, sizeof *grh); grh 602 drivers/infiniband/hw/mlx4/mad.c tun_mad->hdr.g_ml_path = (grh && (wc->wc_flags & IB_WC_GRH)) ? 0x80 : 0; grh 665 drivers/infiniband/hw/mlx4/mad.c struct ib_wc *wc, struct ib_grh *grh, grh 683 drivers/infiniband/hw/mlx4/mad.c if (get_gids_from_l3_hdr(grh, &sgid, &dgid)) grh 700 drivers/infiniband/hw/mlx4/mad.c slave, grh->dgid.raw, port, other_port); grh 716 drivers/infiniband/hw/mlx4/mad.c err = mlx4_ib_send_to_slave(dev, slave, port, wc->qp->qp_type, wc, grh, mad); grh 736 drivers/infiniband/hw/mlx4/mad.c if (grh->dgid.global.interface_id == grh 738 drivers/infiniband/hw/mlx4/mad.c grh->dgid.global.subnet_prefix == cpu_to_be64( grh 743 drivers/infiniband/hw/mlx4/mad.c grh->dgid.global.interface_id); grh 795 drivers/infiniband/hw/mlx4/mad.c err = mlx4_ib_send_to_slave(dev, slave, port, wc->qp->qp_type, wc, grh, mad); grh 1474 drivers/infiniband/hw/mlx4/mad.c struct ib_global_route *grh = rdma_ah_retrieve_grh(ah_attr); grh 1476 drivers/infiniband/hw/mlx4/mad.c grh->sgid_index = slave; grh 1478 drivers/infiniband/hw/mlx4/mad.c grh->sgid_index += get_slave_base_gid_ix(dev, slave, port); grh 1901 drivers/infiniband/hw/mlx4/mad.c struct ib_grh *grh; grh 1924 drivers/infiniband/hw/mlx4/mad.c grh = &(((struct mlx4_mad_rcv_buf *) grh 1926 drivers/infiniband/hw/mlx4/mad.c (MLX4_NUM_TUNNEL_BUFS - 1)].addr))->grh); grh 1927 drivers/infiniband/hw/mlx4/mad.c mlx4_ib_demux_mad(ctx->ib_dev, ctx->port, &wc, grh, mad); grh 272 drivers/infiniband/hw/mlx4/mlx4_ib.h struct ib_grh grh; grh 844 drivers/infiniband/hw/mlx4/mlx4_ib.h struct ib_grh *grh, struct ib_mad *mad); grh 1816 drivers/infiniband/hw/mlx4/qp.c const struct ib_global_route *grh = rdma_ah_read_grh(ah); grh 1818 drivers/infiniband/hw/mlx4/qp.c mlx4_ib_gid_index_to_real_index(dev, grh->sgid_attr); grh 1830 drivers/infiniband/hw/mlx4/qp.c path->hop_limit = grh->hop_limit; grh 1832 drivers/infiniband/hw/mlx4/qp.c cpu_to_be32((grh->traffic_class << 20) | grh 1833 drivers/infiniband/hw/mlx4/qp.c (grh->flow_label)); grh 1834 drivers/infiniband/hw/mlx4/qp.c memcpy(path->rgid, grh->dgid.raw, 16); grh 2324 drivers/infiniband/hw/mlx4/qp.c gid_attr = attr->ah_attr.grh.sgid_attr; grh 3107 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.traffic_class = grh 3109 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.flow_label = grh 3111 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.hop_limit = ah->av.ib.hop_limit; grh 3113 drivers/infiniband/hw/mlx4/qp.c memcpy(sqp->ud_header.grh.source_gid.raw, sgid.raw, 16); grh 3120 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.source_gid.global.subnet_prefix = grh 3124 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.source_gid.global.interface_id = grh 3128 drivers/infiniband/hw/mlx4/qp.c sqp->ud_header.grh.source_gid = grh 3132 drivers/infiniband/hw/mlx4/qp.c memcpy(sqp->ud_header.grh.destination_gid.raw, grh 41 drivers/infiniband/hw/mlx5/ah.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 43 drivers/infiniband/hw/mlx5/ah.c memcpy(ah->av.rgid, &grh->dgid, 16); grh 44 drivers/infiniband/hw/mlx5/ah.c ah->av.grh_gid_fl = cpu_to_be32(grh->flow_label | grh 46 drivers/infiniband/hw/mlx5/ah.c grh->sgid_index << 20); grh 47 drivers/infiniband/hw/mlx5/ah.c ah->av.hop_limit = grh->hop_limit; grh 48 drivers/infiniband/hw/mlx5/ah.c ah->av.tclass = grh->traffic_class; grh 54 drivers/infiniband/hw/mlx5/ah.c gid_type = ah_attr->grh.sgid_attr->gid_type; grh 59 drivers/infiniband/hw/mlx5/ah.c mlx5_get_roce_udp_sport(dev, ah_attr->grh.sgid_attr); grh 2913 drivers/infiniband/hw/mlx5/qp.c const struct ib_global_route *grh = rdma_ah_read_grh(ah); grh 2924 drivers/infiniband/hw/mlx5/qp.c if (grh->sgid_index >= grh 2927 drivers/infiniband/hw/mlx5/qp.c grh->sgid_index, grh 2943 drivers/infiniband/hw/mlx5/qp.c mlx5_get_roce_udp_sport(dev, ah->grh.sgid_attr); grh 2945 drivers/infiniband/hw/mlx5/qp.c gid_type = ah->grh.sgid_attr->gid_type; grh 2947 drivers/infiniband/hw/mlx5/qp.c path->ecn_dscp = (grh->traffic_class >> 2) & 0x3f; grh 2960 drivers/infiniband/hw/mlx5/qp.c path->mgid_index = grh->sgid_index; grh 2961 drivers/infiniband/hw/mlx5/qp.c path->hop_limit = grh->hop_limit; grh 2963 drivers/infiniband/hw/mlx5/qp.c cpu_to_be32((grh->traffic_class << 20) | grh 2964 drivers/infiniband/hw/mlx5/qp.c (grh->flow_label)); grh 2965 drivers/infiniband/hw/mlx5/qp.c memcpy(path->rgid, grh->dgid.raw, 16); grh 3861 drivers/infiniband/hw/mlx5/qp.c MLX5_SET(dctc, dctc, tclass, attr->ah_attr.grh.traffic_class); grh 3862 drivers/infiniband/hw/mlx5/qp.c MLX5_SET(dctc, dctc, flow_label, attr->ah_attr.grh.flow_label); grh 3864 drivers/infiniband/hw/mlx5/qp.c MLX5_SET(dctc, dctc, my_addr_index, attr->ah_attr.grh.sgid_index); grh 3865 drivers/infiniband/hw/mlx5/qp.c MLX5_SET(dctc, dctc, hop_limit, attr->ah_attr.grh.hop_limit); grh 5743 drivers/infiniband/hw/mlx5/qp.c qp_attr->ah_attr.grh.traffic_class = MLX5_GET(dctc, dctc, tclass); grh 5744 drivers/infiniband/hw/mlx5/qp.c qp_attr->ah_attr.grh.flow_label = MLX5_GET(dctc, dctc, flow_label); grh 5745 drivers/infiniband/hw/mlx5/qp.c qp_attr->ah_attr.grh.sgid_index = MLX5_GET(dctc, dctc, my_addr_index); grh 5746 drivers/infiniband/hw/mlx5/qp.c qp_attr->ah_attr.grh.hop_limit = MLX5_GET(dctc, dctc, hop_limit); grh 208 drivers/infiniband/hw/mthca/mthca_av.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 213 drivers/infiniband/hw/mthca/mthca_av.c grh->sgid_index; grh 214 drivers/infiniband/hw/mthca/mthca_av.c av->hop_limit = grh->hop_limit; grh 216 drivers/infiniband/hw/mthca/mthca_av.c cpu_to_be32((grh->traffic_class << 20) | grh 217 drivers/infiniband/hw/mthca/mthca_av.c grh->flow_label); grh 218 drivers/infiniband/hw/mthca/mthca_av.c memcpy(av->dgid, grh->dgid.raw, 16); grh 279 drivers/infiniband/hw/mthca/mthca_av.c header->grh.traffic_class = grh 281 drivers/infiniband/hw/mthca/mthca_av.c header->grh.flow_label = grh 283 drivers/infiniband/hw/mthca/mthca_av.c header->grh.hop_limit = ah->av->hop_limit; grh 284 drivers/infiniband/hw/mthca/mthca_av.c header->grh.source_gid = ah->ibah.sgid_attr->gid; grh 285 drivers/infiniband/hw/mthca/mthca_av.c memcpy(header->grh.destination_gid.raw, grh 531 drivers/infiniband/hw/mthca/mthca_qp.c const struct ib_global_route *grh = rdma_ah_read_grh(ah); grh 533 drivers/infiniband/hw/mthca/mthca_qp.c if (grh->sgid_index >= dev->limits.gid_table_len) { grh 535 drivers/infiniband/hw/mthca/mthca_qp.c grh->sgid_index, grh 541 drivers/infiniband/hw/mthca/mthca_qp.c path->mgid_index = grh->sgid_index; grh 542 drivers/infiniband/hw/mthca/mthca_qp.c path->hop_limit = grh->hop_limit; grh 545 drivers/infiniband/hw/mthca/mthca_qp.c (grh->traffic_class << 20) | grh 546 drivers/infiniband/hw/mthca/mthca_qp.c (grh->flow_label)); grh 547 drivers/infiniband/hw/mthca/mthca_qp.c memcpy(path->rgid, grh->dgid.raw, 16); grh 79 drivers/infiniband/hw/ocrdma/ocrdma_ah.c struct ocrdma_grh grh; grh 91 drivers/infiniband/hw/ocrdma/ocrdma_ah.c memset(&grh, 0, sizeof(grh)); grh 141 drivers/infiniband/hw/ocrdma/ocrdma_ah.c memcpy(&grh.sgid[0], sgid->raw, sizeof(union ib_gid)); grh 142 drivers/infiniband/hw/ocrdma/ocrdma_ah.c grh.tclass_flow = cpu_to_be32((6 << 28) | grh 145 drivers/infiniband/hw/ocrdma/ocrdma_ah.c memcpy(&grh.dgid[0], ib_grh->dgid.raw, grh 147 drivers/infiniband/hw/ocrdma/ocrdma_ah.c grh.pdid_hoplimit = cpu_to_be32((pdid << 16) | grh 150 drivers/infiniband/hw/ocrdma/ocrdma_ah.c memcpy((u8 *)ah->av + eth_sz, &grh, sizeof(struct ocrdma_grh)); grh 177 drivers/infiniband/hw/ocrdma/ocrdma_ah.c sgid_attr = attr->grh.sgid_attr; grh 229 drivers/infiniband/hw/ocrdma/ocrdma_ah.c struct ocrdma_grh *grh; grh 233 drivers/infiniband/hw/ocrdma/ocrdma_ah.c grh = (struct ocrdma_grh *)((u8 *)ah->av + grh 237 drivers/infiniband/hw/ocrdma/ocrdma_ah.c grh = (struct ocrdma_grh *)((u8 *)ah->av + grh 242 drivers/infiniband/hw/ocrdma/ocrdma_ah.c be32_to_cpu(grh->tclass_flow) & 0xffffffff, grh 244 drivers/infiniband/hw/ocrdma/ocrdma_ah.c be32_to_cpu(grh->pdid_hoplimit) & 0xff, grh 245 drivers/infiniband/hw/ocrdma/ocrdma_ah.c be32_to_cpu(grh->tclass_flow) >> 24); grh 246 drivers/infiniband/hw/ocrdma/ocrdma_ah.c rdma_ah_set_dgid_raw(attr, &grh->dgid[0]); grh 2502 drivers/infiniband/hw/ocrdma/ocrdma_hw.c const struct ib_global_route *grh; grh 2506 drivers/infiniband/hw/ocrdma/ocrdma_hw.c grh = rdma_ah_read_grh(ah_attr); grh 2510 drivers/infiniband/hw/ocrdma/ocrdma_hw.c (grh->traffic_class << OCRDMA_QP_PARAMS_TCLASS_SHIFT); grh 2512 drivers/infiniband/hw/ocrdma/ocrdma_hw.c (grh->flow_label & OCRDMA_QP_PARAMS_FLOW_LABEL_MASK); grh 2516 drivers/infiniband/hw/ocrdma/ocrdma_hw.c (grh->hop_limit << OCRDMA_QP_PARAMS_HOP_LMT_SHIFT); grh 2520 drivers/infiniband/hw/ocrdma/ocrdma_hw.c memcpy(&cmd->params.dgid[0], &grh->dgid.raw[0], grh 2523 drivers/infiniband/hw/ocrdma/ocrdma_hw.c sgid_attr = ah_attr->grh.sgid_attr; grh 2528 drivers/infiniband/hw/ocrdma/ocrdma_hw.c qp->sgid_idx = grh->sgid_index; grh 2541 drivers/infiniband/hw/ocrdma/ocrdma_hw.c rdma_gid2ip((struct sockaddr *)&dgid_addr, &grh->dgid); grh 1920 drivers/infiniband/hw/ocrdma/ocrdma_sli.h struct ocrdma_grh grh; grh 519 drivers/infiniband/hw/qedr/qedr.h const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 522 drivers/infiniband/hw/qedr/qedr.h if (!memcmp(&grh->dgid, &zero_sgid, sizeof(union ib_gid))) { grh 528 drivers/infiniband/hw/qedr/qedr.h memcpy(&in6, grh->dgid.raw, sizeof(in6)); grh 389 drivers/infiniband/hw/qedr/qedr_roce_cm.c const struct ib_global_route *grh = rdma_ah_read_grh(ah_attr); grh 390 drivers/infiniband/hw/qedr/qedr_roce_cm.c const struct ib_gid_attr *sgid_attr = grh->sgid_attr; grh 460 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->grh.traffic_class = grh->traffic_class; grh 461 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->grh.flow_label = grh->flow_label; grh 462 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->grh.hop_limit = grh->hop_limit; grh 463 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->grh.destination_gid = grh->dgid; grh 464 drivers/infiniband/hw/qedr/qedr_roce_cm.c memcpy(&udh->grh.source_gid.raw, sgid_attr->gid.raw, grh 465 drivers/infiniband/hw/qedr/qedr_roce_cm.c sizeof(udh->grh.source_gid.raw)); grh 471 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->ip4.tos = htonl(grh->flow_label); grh 473 drivers/infiniband/hw/qedr/qedr_roce_cm.c udh->ip4.ttl = grh->hop_limit; grh 477 drivers/infiniband/hw/qedr/qedr_roce_cm.c ipv4_addr = qedr_get_ipv4_from_gid(grh->dgid.raw); grh 1016 drivers/infiniband/hw/qedr/verbs.c const struct ib_global_route *grh = rdma_ah_read_grh(&attr->ah_attr); grh 1021 drivers/infiniband/hw/qedr/verbs.c gid_attr = grh->sgid_attr; grh 1032 drivers/infiniband/hw/qedr/verbs.c &grh->dgid, grh 1042 drivers/infiniband/hw/qedr/verbs.c &grh->dgid, grh 1052 drivers/infiniband/hw/qedr/verbs.c qedr_get_ipv4_from_gid(grh->dgid.raw); grh 2111 drivers/infiniband/hw/qedr/verbs.c const struct ib_global_route *grh = rdma_ah_read_grh(&attr->ah_attr); grh 2199 drivers/infiniband/hw/qedr/verbs.c qp_params.traffic_class_tos = grh->traffic_class; grh 2200 drivers/infiniband/hw/qedr/verbs.c qp_params.flow_label = grh->flow_label; grh 2201 drivers/infiniband/hw/qedr/verbs.c qp_params.hop_limit_ttl = grh->hop_limit; grh 2203 drivers/infiniband/hw/qedr/verbs.c qp->sgid_idx = grh->sgid_index; grh 2209 drivers/infiniband/hw/qedr/verbs.c grh->sgid_index, rc); grh 332 drivers/infiniband/hw/qib/qib_driver.c if (hdr->u.l.grh.next_hdr != IB_GRH_NEXT_HDR) grh 334 drivers/infiniband/hw/qib/qib_driver.c vtf = be32_to_cpu(hdr->u.l.grh.version_tclass_flow); grh 629 drivers/infiniband/hw/qib/qib_rc.c hwords += qib_make_grh(ibp, &hdr.u.l.grh, grh 94 drivers/infiniband/hw/qib/qib_ruc.c const struct ib_global_route *grh; grh 99 drivers/infiniband/hw/qib/qib_ruc.c grh = rdma_ah_read_grh(&qp->alt_ah_attr); grh 100 drivers/infiniband/hw/qib/qib_ruc.c guid = get_sguid(ibp, grh->sgid_index); grh 101 drivers/infiniband/hw/qib/qib_ruc.c if (!gid_ok(&hdr->u.l.grh.dgid, grh 104 drivers/infiniband/hw/qib/qib_ruc.c if (!gid_ok(&hdr->u.l.grh.sgid, grh 105 drivers/infiniband/hw/qib/qib_ruc.c grh->dgid.global.subnet_prefix, grh 106 drivers/infiniband/hw/qib/qib_ruc.c grh->dgid.global.interface_id)) grh 133 drivers/infiniband/hw/qib/qib_ruc.c const struct ib_global_route *grh; grh 138 drivers/infiniband/hw/qib/qib_ruc.c grh = rdma_ah_read_grh(&qp->remote_ah_attr); grh 139 drivers/infiniband/hw/qib/qib_ruc.c guid = get_sguid(ibp, grh->sgid_index); grh 140 drivers/infiniband/hw/qib/qib_ruc.c if (!gid_ok(&hdr->u.l.grh.dgid, grh 143 drivers/infiniband/hw/qib/qib_ruc.c if (!gid_ok(&hdr->u.l.grh.sgid, grh 144 drivers/infiniband/hw/qib/qib_ruc.c grh->dgid.global.subnet_prefix, grh 145 drivers/infiniband/hw/qib/qib_ruc.c grh->dgid.global.interface_id)) grh 184 drivers/infiniband/hw/qib/qib_ruc.c const struct ib_global_route *grh, u32 hwords, u32 nwords) grh 188 drivers/infiniband/hw/qib/qib_ruc.c (grh->traffic_class << IB_GRH_TCLASS_SHIFT) | grh 189 drivers/infiniband/hw/qib/qib_ruc.c (grh->flow_label << IB_GRH_FLOW_SHIFT)); grh 193 drivers/infiniband/hw/qib/qib_ruc.c hdr->hop_limit = grh->hop_limit; grh 196 drivers/infiniband/hw/qib/qib_ruc.c if (!grh->sgid_index) grh 198 drivers/infiniband/hw/qib/qib_ruc.c else if (grh->sgid_index < QIB_GUIDS_PER_PORT) grh 199 drivers/infiniband/hw/qib/qib_ruc.c hdr->sgid.global.interface_id = ibp->guids[grh->sgid_index - 1]; grh 200 drivers/infiniband/hw/qib/qib_ruc.c hdr->dgid = grh->dgid; grh 221 drivers/infiniband/hw/qib/qib_ruc.c qib_make_grh(ibp, &priv->s_hdr->u.l.grh, grh 162 drivers/infiniband/hw/qib/qib_ud.c struct ib_grh grh; grh 165 drivers/infiniband/hw/qib/qib_ud.c qib_make_grh(ibp, &grh, grd, 0, 0); grh 166 drivers/infiniband/hw/qib/qib_ud.c rvt_copy_sge(qp, &qp->r_sge, &grh, grh 167 drivers/infiniband/hw/qib/qib_ud.c sizeof(grh), true, false); grh 324 drivers/infiniband/hw/qib/qib_ud.c qp->s_hdrwords += qib_make_grh(ibp, &priv->s_hdr->u.l.grh, grh 549 drivers/infiniband/hw/qib/qib_ud.c rvt_copy_sge(qp, &qp->r_sge, &hdr->u.l.grh, grh 306 drivers/infiniband/hw/qib/qib_verbs.c if (hdr->u.l.grh.next_hdr != IB_GRH_NEXT_HDR) grh 308 drivers/infiniband/hw/qib/qib_verbs.c vtf = be32_to_cpu(hdr->u.l.grh.version_tclass_flow); grh 328 drivers/infiniband/hw/qib/qib_verbs.c mcast = rvt_mcast_find(&ibp->rvp, &hdr->u.l.grh.dgid, lid); grh 325 drivers/infiniband/hw/qib/qib_verbs.h const struct ib_global_route *grh, u32 hwords, u32 nwords); grh 279 drivers/infiniband/hw/vmw_pvrdma/pvrdma_misc.c pvrdma_global_route_to_ib(rdma_ah_retrieve_grh(dst), &src->grh); grh 292 drivers/infiniband/hw/vmw_pvrdma/pvrdma_misc.c ib_global_route_to_pvrdma(&dst->grh, rdma_ah_read_grh(src)); grh 517 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c const struct ib_global_route *grh; grh 523 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c grh = rdma_ah_read_grh(ah_attr); grh 525 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c rdma_is_multicast_addr((struct in6_addr *)grh->dgid.raw)) grh 534 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c ah->av.gid_index = grh->sgid_index; grh 535 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c ah->av.hop_limit = grh->hop_limit; grh 536 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c ah->av.sl_tclass_flowlabel = (grh->traffic_class << 20) | grh 537 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c grh->flow_label; grh 538 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c memcpy(ah->av.dgid, grh->dgid.raw, 16); grh 228 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h struct pvrdma_global_route grh; grh 65 drivers/infiniband/sw/rxe/rxe_av.c const struct ib_global_route *grh = rdma_ah_read_grh(attr); grh 68 drivers/infiniband/sw/rxe/rxe_av.c memcpy(av->grh.dgid.raw, grh->dgid.raw, sizeof(grh->dgid.raw)); grh 69 drivers/infiniband/sw/rxe/rxe_av.c av->grh.flow_label = grh->flow_label; grh 70 drivers/infiniband/sw/rxe/rxe_av.c av->grh.sgid_index = grh->sgid_index; grh 71 drivers/infiniband/sw/rxe/rxe_av.c av->grh.hop_limit = grh->hop_limit; grh 72 drivers/infiniband/sw/rxe/rxe_av.c av->grh.traffic_class = grh->traffic_class; grh 78 drivers/infiniband/sw/rxe/rxe_av.c struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 82 drivers/infiniband/sw/rxe/rxe_av.c memcpy(grh->dgid.raw, av->grh.dgid.raw, sizeof(av->grh.dgid.raw)); grh 83 drivers/infiniband/sw/rxe/rxe_av.c grh->flow_label = av->grh.flow_label; grh 84 drivers/infiniband/sw/rxe/rxe_av.c grh->sgid_index = av->grh.sgid_index; grh 85 drivers/infiniband/sw/rxe/rxe_av.c grh->hop_limit = av->grh.hop_limit; grh 86 drivers/infiniband/sw/rxe/rxe_av.c grh->traffic_class = av->grh.traffic_class; grh 94 drivers/infiniband/sw/rxe/rxe_av.c const struct ib_gid_attr *sgid_attr = attr->grh.sgid_attr; grh 363 drivers/infiniband/sw/rxe/rxe_net.c av->grh.traffic_class, av->grh.hop_limit, df, xnet); grh 387 drivers/infiniband/sw/rxe/rxe_net.c av->grh.traffic_class, grh 388 drivers/infiniband/sw/rxe/rxe_net.c av->grh.hop_limit); grh 468 drivers/infiniband/sw/rxe/rxe_net.c attr = rdma_get_gid_attr(&rxe->ib_dev, port_num, av->grh.sgid_index); grh 637 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c mad_wc->recv_buf.grh, mad_agent->port_num); grh 484 drivers/infiniband/ulp/srpt/ib_srpt.c mad_wc->recv_buf.grh, mad_agent->port_num); grh 241 drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c MLX5_SET(ads, addr_path, grh, 1); grh 950 include/linux/mlx5/device.h struct ib_grh grh; grh 641 include/linux/mlx5/mlx5_ifc.h u8 grh[0x1]; grh 9021 include/linux/mlx5/mlx5_ifc.h u8 grh[0x1]; grh 143 include/rdma/ib_hdrs.h struct ib_grh grh; grh 649 include/rdma/ib_mad.h struct ib_grh *grh; grh 272 include/rdma/ib_pack.h struct ib_unpacked_grh grh; grh 899 include/rdma/ib_verbs.h struct ib_global_route grh; grh 3435 include/rdma/ib_verbs.h const struct ib_wc *wc, const struct ib_grh *grh, grh 3451 include/rdma/ib_verbs.h const struct ib_grh *grh, u8 port_num); grh 4463 include/rdma/ib_verbs.h return &attr->grh; grh 4470 include/rdma/ib_verbs.h return &attr->grh; grh 4475 include/rdma/ib_verbs.h struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 4477 include/rdma/ib_verbs.h memcpy(grh->dgid.raw, dgid, sizeof(grh->dgid)); grh 4483 include/rdma/ib_verbs.h struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 4485 include/rdma/ib_verbs.h grh->dgid.global.subnet_prefix = prefix; grh 4491 include/rdma/ib_verbs.h struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 4493 include/rdma/ib_verbs.h grh->dgid.global.interface_id = if_id; grh 4501 include/rdma/ib_verbs.h struct ib_global_route *grh = rdma_ah_retrieve_grh(attr); grh 4505 include/rdma/ib_verbs.h grh->dgid = *dgid; grh 4506 include/rdma/ib_verbs.h grh->flow_label = flow_label; grh 4507 include/rdma/ib_verbs.h grh->sgid_index = sgid_index; grh 4508 include/rdma/ib_verbs.h grh->hop_limit = hop_limit; grh 4509 include/rdma/ib_verbs.h grh->traffic_class = traffic_class; grh 4510 include/rdma/ib_verbs.h grh->sgid_attr = NULL; grh 513 include/uapi/rdma/ib_user_verbs.h struct ib_uverbs_global_route grh; grh 62 include/uapi/rdma/rdma_user_rxe.h struct rxe_global_route grh;