• Home
  • Raw
  • Download

Lines Matching refs:recv

2025 				     struct ib_mad_private *recv,  in handle_ib_smi()  argument
2029 struct ib_smp *smp = (struct ib_smp *)recv->mad; in handle_ib_smi()
2052 memcpy(response, recv, mad_priv_size(response)); in handle_ib_smi()
2070 static bool generate_unmatched_resp(const struct ib_mad_private *recv, in generate_unmatched_resp() argument
2074 const struct ib_mad_hdr *recv_hdr = (const struct ib_mad_hdr *)recv->mad; in generate_unmatched_resp()
2079 memcpy(response, recv, mad_priv_size(response)); in generate_unmatched_resp()
2094 (struct opa_smp *)recv->mad); in generate_unmatched_resp()
2110 struct ib_mad_private *recv, in handle_opa_smi() argument
2114 struct opa_smp *smp = (struct opa_smp *)recv->mad; in handle_opa_smi()
2139 memcpy(response, recv, mad_priv_size(response)); in handle_opa_smi()
2150 recv->header.wc.byte_len, in handle_opa_smi()
2164 struct ib_mad_private *recv, in handle_smi() argument
2168 struct ib_mad_hdr *mad_hdr = (struct ib_mad_hdr *)recv->mad; in handle_smi()
2172 return handle_opa_smi(port_priv, qp_info, wc, port_num, recv, in handle_smi()
2175 return handle_ib_smi(port_priv, qp_info, wc, port_num, recv, response); in handle_smi()
2183 struct ib_mad_private *recv, *response = NULL; in ib_mad_recv_done_handler() local
2201 recv = container_of(mad_priv_hdr, struct ib_mad_private, header); in ib_mad_recv_done_handler()
2203 recv->header.mapping, in ib_mad_recv_done_handler()
2204 mad_priv_dma_size(recv), in ib_mad_recv_done_handler()
2208 recv->header.wc = *wc; in ib_mad_recv_done_handler()
2209 recv->header.recv_wc.wc = &recv->header.wc; in ib_mad_recv_done_handler()
2211 if (opa && ((struct ib_mad_hdr *)(recv->mad))->base_version == OPA_MGMT_BASE_VERSION) { in ib_mad_recv_done_handler()
2212 recv->header.recv_wc.mad_len = wc->byte_len - sizeof(struct ib_grh); in ib_mad_recv_done_handler()
2213 recv->header.recv_wc.mad_seg_size = sizeof(struct opa_mad); in ib_mad_recv_done_handler()
2215 recv->header.recv_wc.mad_len = sizeof(struct ib_mad); in ib_mad_recv_done_handler()
2216 recv->header.recv_wc.mad_seg_size = sizeof(struct ib_mad); in ib_mad_recv_done_handler()
2219 recv->header.recv_wc.recv_buf.mad = (struct ib_mad *)recv->mad; in ib_mad_recv_done_handler()
2220 recv->header.recv_wc.recv_buf.grh = &recv->grh; in ib_mad_recv_done_handler()
2223 snoop_recv(qp_info, &recv->header.recv_wc, IB_MAD_SNOOP_RECVS); in ib_mad_recv_done_handler()
2226 if (!validate_mad((const struct ib_mad_hdr *)recv->mad, qp_info, opa)) in ib_mad_recv_done_handler()
2229 mad_size = recv->mad_size; in ib_mad_recv_done_handler()
2242 if (((struct ib_mad_hdr *)recv->mad)->mgmt_class == in ib_mad_recv_done_handler()
2244 if (handle_smi(port_priv, qp_info, wc, port_num, recv, in ib_mad_recv_done_handler()
2254 wc, &recv->grh, in ib_mad_recv_done_handler()
2255 (const struct ib_mad_hdr *)recv->mad, in ib_mad_recv_done_handler()
2256 recv->mad_size, in ib_mad_recv_done_handler()
2268 &recv->grh, wc, in ib_mad_recv_done_handler()
2278 mad_agent = find_mad_agent(port_priv, (const struct ib_mad_hdr *)recv->mad); in ib_mad_recv_done_handler()
2280 ib_mad_complete_recv(mad_agent, &recv->header.recv_wc); in ib_mad_recv_done_handler()
2285 recv = NULL; in ib_mad_recv_done_handler()
2287 generate_unmatched_resp(recv, response, &mad_size, opa)) { in ib_mad_recv_done_handler()
2288 agent_send_response((const struct ib_mad_hdr *)response->mad, &recv->grh, wc, in ib_mad_recv_done_handler()
2297 kfree(recv); in ib_mad_recv_done_handler()
2299 ib_mad_post_receive_mads(qp_info, recv); in ib_mad_recv_done_handler()
2954 struct ib_mad_private *recv; in cleanup_recv_queue() local
2967 recv = container_of(mad_priv_hdr, struct ib_mad_private, in cleanup_recv_queue()
2974 recv->header.mapping, in cleanup_recv_queue()
2975 mad_priv_dma_size(recv), in cleanup_recv_queue()
2977 kfree(recv); in cleanup_recv_queue()