Lines Matching refs:send_buf

648 		       struct ib_mad_send_buf *send_buf,
666 send_buf, mad_send_wc);
750 struct ib_smp *smp = mad_send_wr->send_buf.mad;
845 mad_wc.byte_len = mad_send_wr->send_buf.hdr_len
846 + mad_send_wr->send_buf.data_len
943 struct ib_mad_send_buf *send_buf = &send_wr->send_buf;
944 struct ib_rmpp_mad *rmpp_mad = send_buf->mad;
948 send_buf->seg_size = mad_size - send_buf->hdr_len;
949 send_buf->seg_rmpp_size = mad_size - IB_MGMT_RMPP_HDR;
950 seg_size = send_buf->seg_size;
954 for (left = send_buf->data_len + pad; left > 0; left -= seg_size) {
957 dev_err(&send_buf->mad_agent->device->dev,
963 seg->num = ++send_buf->seg_count;
1029 mad_send_wr->send_buf.mad = buf;
1030 mad_send_wr->send_buf.hdr_len = hdr_len;
1031 mad_send_wr->send_buf.data_len = data_len;
1066 mad_send_wr->send_buf.mad_agent = mad_agent;
1068 return &mad_send_wr->send_buf;
1101 void *ib_get_rmpp_segment(struct ib_mad_send_buf *send_buf, int seg_num)
1106 mad_send_wr = container_of(send_buf, struct ib_mad_send_wr_private,
1107 send_buf);
1125 if (mad_send_wr->send_buf.seg_count)
1126 return ib_get_rmpp_segment(&mad_send_wr->send_buf,
1129 return (char *)mad_send_wr->send_buf.mad +
1130 mad_send_wr->send_buf.hdr_len;
1133 void ib_free_send_mad(struct ib_mad_send_buf *send_buf)
1138 mad_agent_priv = container_of(send_buf->mad_agent,
1140 mad_send_wr = container_of(send_buf, struct ib_mad_send_wr_private,
1141 send_buf);
1144 kfree(send_buf->mad);
1165 mad_agent = mad_send_wr->send_buf.mad_agent;
1168 mad_send_wr->send_buf.mad,
1218 int ib_post_send_mad(struct ib_mad_send_buf *send_buf,
1228 for (; send_buf; send_buf = next_send_buf) {
1230 mad_send_wr = container_of(send_buf,
1232 send_buf);
1235 if (!send_buf->mad_agent->send_handler ||
1236 (send_buf->timeout_ms &&
1237 !send_buf->mad_agent->recv_handler)) {
1242 if (!ib_is_mad_class_rmpp(((struct ib_mad_hdr *) send_buf->mad)->mgmt_class)) {
1254 next_send_buf = send_buf->next;
1255 mad_send_wr->send_wr.ah = send_buf->ah;
1257 if (((struct ib_mad_hdr *) send_buf->mad)->mgmt_class ==
1267 mad_send_wr->tid = ((struct ib_mad_hdr *) send_buf->mad)->tid;
1269 mad_send_wr->timeout = msecs_to_jiffies(send_buf->timeout_ms);
1270 mad_send_wr->max_retries = send_buf->retries;
1271 mad_send_wr->retries_left = send_buf->retries;
1272 send_buf->retries = 0;
1302 *bad_send_buf = send_buf;
1852 return ((struct ib_mad_hdr *)(wr->send_buf.mad))->mgmt_class ==
1867 send_resp = ib_response_mad((struct ib_mad_hdr *)wr->send_buf.mad);
1874 if (ib_query_ah(wr->send_buf.ah, &attr))
1938 if (is_rmpp_data_mad(mad_agent_priv, wr->send_buf.mad) &&
2011 &mad_send_wr->send_buf,
2017 mad_send_wc.send_buf = &mad_send_wr->send_buf;
2463 ib_dma_unmap_single(mad_send_wr->send_buf.mad_agent->device,
2466 ib_dma_unmap_single(mad_send_wr->send_buf.mad_agent->device,
2484 mad_send_wc.send_buf = &mad_send_wr->send_buf;
2488 snoop_send(qp_info, &mad_send_wr->send_buf, &mad_send_wc,
2598 mad_send_wc.send_buf = &mad_send_wr->send_buf;
2608 struct ib_mad_send_buf *send_buf)
2614 if (&mad_send_wr->send_buf == send_buf)
2621 mad_send_wr->send_buf.mad) &&
2622 &mad_send_wr->send_buf == send_buf)
2629 struct ib_mad_send_buf *send_buf, u32 timeout_ms)
2639 mad_send_wr = find_send_wr(mad_agent_priv, send_buf);
2651 mad_send_wr->send_buf.timeout_ms = timeout_ms;
2663 struct ib_mad_send_buf *send_buf)
2665 ib_modify_mad(mad_agent, send_buf, 0);
2737 &local->mad_send_wr->send_buf,
2748 mad_send_wc.send_buf = &local->mad_send_wr->send_buf;
2751 &local->mad_send_wr->send_buf,
2773 mad_send_wr->send_buf.retries++;
2775 mad_send_wr->timeout = msecs_to_jiffies(mad_send_wr->send_buf.timeout_ms);
2839 mad_send_wc.send_buf = &mad_send_wr->send_buf;