Lines Matching refs:mad_priv

749 	struct ib_mad_private *mad_priv;  in handle_outgoing_dr_smp()  local
824 local->mad_priv = NULL; in handle_outgoing_dr_smp()
826 mad_priv = alloc_mad_private(mad_size, GFP_ATOMIC); in handle_outgoing_dr_smp()
827 if (!mad_priv) { in handle_outgoing_dr_smp()
848 (struct ib_mad_hdr *)mad_priv->mad, in handle_outgoing_dr_smp()
853 if (ib_response_mad((const struct ib_mad_hdr *)mad_priv->mad) && in handle_outgoing_dr_smp()
855 local->mad_priv = mad_priv; in handle_outgoing_dr_smp()
863 kfree(mad_priv); in handle_outgoing_dr_smp()
866 kfree(mad_priv); in handle_outgoing_dr_smp()
873 memcpy(mad_priv->mad, smp, mad_priv->mad_size); in handle_outgoing_dr_smp()
875 (const struct ib_mad_hdr *)mad_priv->mad); in handle_outgoing_dr_smp()
882 kfree(mad_priv); in handle_outgoing_dr_smp()
885 local->mad_priv = mad_priv; in handle_outgoing_dr_smp()
889 kfree(mad_priv); in handle_outgoing_dr_smp()
2704 if (local->mad_priv) { in local_completions()
2724 local->mad_priv->header.recv_wc.wc = &wc; in local_completions()
2726 base_version = ((struct ib_mad_hdr *)(local->mad_priv->mad))->base_version; in local_completions()
2728 local->mad_priv->header.recv_wc.mad_len = local->return_wc_byte_len; in local_completions()
2729 local->mad_priv->header.recv_wc.mad_seg_size = sizeof(struct opa_mad); in local_completions()
2731 local->mad_priv->header.recv_wc.mad_len = sizeof(struct ib_mad); in local_completions()
2732 local->mad_priv->header.recv_wc.mad_seg_size = sizeof(struct ib_mad); in local_completions()
2735 INIT_LIST_HEAD(&local->mad_priv->header.recv_wc.rmpp_list); in local_completions()
2736 list_add(&local->mad_priv->header.recv_wc.recv_buf.list, in local_completions()
2737 &local->mad_priv->header.recv_wc.rmpp_list); in local_completions()
2738 local->mad_priv->header.recv_wc.recv_buf.grh = NULL; in local_completions()
2739 local->mad_priv->header.recv_wc.recv_buf.mad = in local_completions()
2740 (struct ib_mad *)local->mad_priv->mad; in local_completions()
2743 &local->mad_priv->header.recv_wc, in local_completions()
2747 &local->mad_priv->header.recv_wc); in local_completions()
2768 kfree(local->mad_priv); in local_completions()
2877 struct ib_mad_private *mad_priv; in ib_mad_post_receive_mads() local
2893 mad_priv = mad; in ib_mad_post_receive_mads()
2896 mad_priv = alloc_mad_private(port_mad_size(qp_info->port_priv), in ib_mad_post_receive_mads()
2898 if (!mad_priv) { in ib_mad_post_receive_mads()
2905 sg_list.length = mad_priv_dma_size(mad_priv); in ib_mad_post_receive_mads()
2907 &mad_priv->grh, in ib_mad_post_receive_mads()
2908 mad_priv_dma_size(mad_priv), in ib_mad_post_receive_mads()
2915 mad_priv->header.mapping = sg_list.addr; in ib_mad_post_receive_mads()
2916 recv_wr.wr_id = (unsigned long)&mad_priv->header.mad_list; in ib_mad_post_receive_mads()
2917 mad_priv->header.mad_list.mad_queue = recv_queue; in ib_mad_post_receive_mads()
2922 list_add_tail(&mad_priv->header.mad_list.list, &recv_queue->list); in ib_mad_post_receive_mads()
2927 list_del(&mad_priv->header.mad_list.list); in ib_mad_post_receive_mads()
2931 mad_priv->header.mapping, in ib_mad_post_receive_mads()
2932 mad_priv_dma_size(mad_priv), in ib_mad_post_receive_mads()
2934 kfree(mad_priv); in ib_mad_post_receive_mads()