/linux-4.1.27/drivers/infiniband/core/ |
H A D | mad.c | 617 int ib_unregister_mad_agent(struct ib_mad_agent *mad_agent) ib_unregister_mad_agent() argument 623 if (mad_agent->hi_tid) { ib_unregister_mad_agent() 624 mad_agent_priv = container_of(mad_agent, ib_unregister_mad_agent() 629 mad_snoop_priv = container_of(mad_agent, ib_unregister_mad_agent() 888 dev_err(&send_buf->mad_agent->device->dev, alloc_send_rmpp_list() 919 struct ib_mad_send_buf * ib_create_send_mad(struct ib_mad_agent *mad_agent, ib_create_send_mad() argument 930 mad_agent_priv = container_of(mad_agent, struct ib_mad_agent_private, ib_create_send_mad() 935 if (ib_mad_kernel_rmpp_agent(mad_agent)) { ib_create_send_mad() 956 mad_send_wr->sg_list[0].lkey = mad_agent->mr->lkey; ib_create_send_mad() 958 mad_send_wr->sg_list[1].lkey = mad_agent->mr->lkey; ib_create_send_mad() 977 mad_send_wr->send_buf.mad_agent = mad_agent; ib_create_send_mad() 1049 mad_agent_priv = container_of(send_buf->mad_agent, ib_free_send_mad() 1065 struct ib_mad_agent *mad_agent; ib_send_mad() local 1075 mad_agent = mad_send_wr->send_buf.mad_agent; ib_send_mad() 1077 sge[0].addr = ib_dma_map_single(mad_agent->device, ib_send_mad() 1081 if (unlikely(ib_dma_mapping_error(mad_agent->device, sge[0].addr))) ib_send_mad() 1086 sge[1].addr = ib_dma_map_single(mad_agent->device, ib_send_mad() 1090 if (unlikely(ib_dma_mapping_error(mad_agent->device, sge[1].addr))) { ib_send_mad() 1091 ib_dma_unmap_single(mad_agent->device, ib_send_mad() 1100 ret = ib_post_send(mad_agent->qp, &mad_send_wr->send_wr, ib_send_mad() 1114 ib_dma_unmap_single(mad_agent->device, ib_send_mad() 1117 ib_dma_unmap_single(mad_agent->device, ib_send_mad() 1145 if (!send_buf->mad_agent->send_handler || ib_post_send_mad() 1147 !send_buf->mad_agent->recv_handler)) { ib_post_send_mad() 1255 int ib_process_mad_wc(struct ib_mad_agent *mad_agent, ib_process_mad_wc() argument 1258 dev_err(&mad_agent->device->dev, ib_process_mad_wc() 1627 struct ib_mad_agent_private *mad_agent = NULL; find_mad_agent() local 1642 mad_agent = entry; find_mad_agent() 1671 mad_agent = method->agent[mad->mad_hdr.method & find_mad_agent() 1689 mad_agent = method->agent[mad->mad_hdr.method & find_mad_agent() 1695 if (mad_agent) { find_mad_agent() 1696 if (mad_agent->agent.recv_handler) find_mad_agent() 1697 atomic_inc(&mad_agent->refcount); find_mad_agent() 1701 &mad_agent->agent, port_priv->port_num); find_mad_agent() 1702 mad_agent = NULL; find_mad_agent() 1708 return mad_agent; find_mad_agent() 1954 struct ib_mad_agent_private *mad_agent; ib_mad_recv_done_handler() local 2059 mad_agent = find_mad_agent(port_priv, &recv->mad.mad); ib_mad_recv_done_handler() 2060 if (mad_agent) { ib_mad_recv_done_handler() 2061 ib_mad_complete_recv(mad_agent, &recv->header.recv_wc); ib_mad_recv_done_handler() 2219 ib_dma_unmap_single(mad_send_wr->send_buf.mad_agent->device, ib_mad_send_done_handler() 2222 ib_dma_unmap_single(mad_send_wr->send_buf.mad_agent->device, ib_mad_send_done_handler() 2421 int ib_modify_mad(struct ib_mad_agent *mad_agent, ib_modify_mad() argument 2429 mad_agent_priv = container_of(mad_agent, struct ib_mad_agent_private, ib_modify_mad() 2455 void ib_cancel_mad(struct ib_mad_agent *mad_agent, ib_cancel_mad() argument 2458 ib_modify_mad(mad_agent, send_buf, 0); ib_cancel_mad()
|
H A D | cm.c | 161 struct ib_mad_agent *mad_agent; member in struct:cm_port 258 struct ib_mad_agent *mad_agent; cm_alloc_msg() local 262 mad_agent = cm_id_priv->av.port->mad_agent; cm_alloc_msg() 263 ah = ib_create_ah(mad_agent->qp->pd, &cm_id_priv->av.ah_attr); cm_alloc_msg() 267 m = ib_create_send_mad(mad_agent, cm_id_priv->id.remote_cm_qpn, cm_alloc_msg() 293 ah = ib_create_ah_from_wc(port->mad_agent->qp->pd, mad_recv_wc->wc, cm_alloc_response_msg() 298 m = ib_create_send_mad(port->mad_agent, 1, mad_recv_wc->wc->pkey_index, cm_alloc_response_msg() 856 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_destroy_id() 870 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_destroy_id() 890 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_destroy_id() 906 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_destroy_id() 991 hi_tid = ((u64) cm_id_priv->av.port->mad_agent->hi_tid) << 32; cm_form_tid() 1892 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_rep_handler() 1925 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_establish_handler() 1965 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_rtu_handler() 2017 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); ib_send_cm_dreq() 2157 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_dreq_handler() 2162 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_dreq_handler() 2227 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_drep_handler() 2370 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_rej_handler() 2380 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_rej_handler() 2390 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_rej_handler() 2530 ib_modify_mad(cm_id_priv->av.port->mad_agent, cm_mra_handler() 2537 ib_modify_mad(cm_id_priv->av.port->mad_agent, cm_mra_handler() 2545 ib_modify_mad(cm_id_priv->av.port->mad_agent, cm_mra_handler() 2855 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_apr_handler() 3151 ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); cm_sidr_rep_handler() 3215 static void cm_send_handler(struct ib_mad_agent *mad_agent, cm_send_handler() argument 3222 port = mad_agent->context; cm_send_handler() 3395 static void cm_recv_handler(struct ib_mad_agent *mad_agent, cm_recv_handler() argument 3398 struct cm_port *port = mad_agent->context; cm_recv_handler() 3805 port->mad_agent = ib_register_mad_agent(ib_device, i, cm_add_one() 3813 if (IS_ERR(port->mad_agent)) cm_add_one() 3828 ib_unregister_mad_agent(port->mad_agent); cm_add_one() 3837 ib_unregister_mad_agent(port->mad_agent); cm_add_one() 3865 ib_unregister_mad_agent(port->mad_agent); cm_remove_one()
|
H A D | agent.c | 138 static void agent_send_handler(struct ib_mad_agent *mad_agent, agent_send_handler() argument
|
H A D | sa_query.c | 1130 static void recv_handler(struct ib_mad_agent *mad_agent, recv_handler() argument
|
/linux-4.1.27/include/rdma/ |
H A D | ib_mad.h | 231 * @mad_agent: MAD agent that allocated the buffer. 251 struct ib_mad_agent *mad_agent; member in struct:ib_mad_send_buf 313 * @mad_agent: MAD agent that sent the MAD. 316 typedef void (*ib_mad_send_handler)(struct ib_mad_agent *mad_agent, 321 * @mad_agent: MAD agent that snooped the MAD. 329 typedef void (*ib_mad_snoop_handler)(struct ib_mad_agent *mad_agent, 335 * @mad_agent: MAD agent requesting the received MAD. 344 typedef void (*ib_mad_recv_handler)(struct ib_mad_agent *mad_agent, 504 * @mad_agent: Corresponding MAD registration request to deregister. 509 int ib_unregister_mad_agent(struct ib_mad_agent *mad_agent); 545 * @mad_agent: Specifies the registration associated with sent MAD. 551 void ib_cancel_mad(struct ib_mad_agent *mad_agent, 556 * @mad_agent: Specifies the registration associated with sent MAD. 563 int ib_modify_mad(struct ib_mad_agent *mad_agent, 591 * @mad_agent: Specifies the registered MAD service using the redirected QP. 603 int ib_process_mad_wc(struct ib_mad_agent *mad_agent, 609 * @mad_agent: Specifies the registered MAD service to associate with the MAD. 632 struct ib_mad_send_buf *ib_create_send_mad(struct ib_mad_agent *mad_agent,
|
/linux-4.1.27/drivers/infiniband/ulp/srpt/ |
H A D | ib_srpt.h | 346 * @mad_agent: per-port management datagram processing information. 361 struct ib_mad_agent *mad_agent; member in struct:srpt_port
|
H A D | ib_srpt.c | 448 static void srpt_mad_send_handler(struct ib_mad_agent *mad_agent, srpt_mad_send_handler() argument 458 static void srpt_mad_recv_handler(struct ib_mad_agent *mad_agent, srpt_mad_recv_handler() argument 461 struct srpt_port *sport = (struct srpt_port *)mad_agent->context; srpt_mad_recv_handler() 469 ah = ib_create_ah_from_wc(mad_agent->qp->pd, mad_wc->wc, srpt_mad_recv_handler() 470 mad_wc->recv_buf.grh, mad_agent->port_num); srpt_mad_recv_handler() 476 rsp = ib_create_send_mad(mad_agent, mad_wc->wc->src_qp, srpt_mad_recv_handler() 553 if (!sport->mad_agent) { srpt_refresh_port() 560 sport->mad_agent = ib_register_mad_agent(sport->sdev->device, srpt_refresh_port() 567 if (IS_ERR(sport->mad_agent)) { srpt_refresh_port() 568 ret = PTR_ERR(sport->mad_agent); srpt_refresh_port() 569 sport->mad_agent = NULL; srpt_refresh_port() 605 if (sport->mad_agent) { srpt_unregister_mad_agent() 606 ib_unregister_mad_agent(sport->mad_agent); srpt_unregister_mad_agent() 607 sport->mad_agent = NULL; srpt_unregister_mad_agent()
|