Lines Matching refs:agent

56 #include "agent.h"
358 mad_agent_priv->agent.rmpp_version = rmpp_version;
359 mad_agent_priv->agent.device = device;
360 mad_agent_priv->agent.recv_handler = recv_handler;
361 mad_agent_priv->agent.send_handler = send_handler;
362 mad_agent_priv->agent.context = context;
363 mad_agent_priv->agent.qp = port_priv->qp_info[qpn].qp;
364 mad_agent_priv->agent.port_num = port_num;
365 mad_agent_priv->agent.flags = registration_flags;
378 mad_agent_priv->agent.hi_tid = ++ib_mad_client_id;
421 /* Add mad agent into port's agent list */
425 return &mad_agent_priv->agent;
525 mad_snoop_priv->agent.device = device;
526 mad_snoop_priv->agent.recv_handler = recv_handler;
527 mad_snoop_priv->agent.snoop_handler = snoop_handler;
528 mad_snoop_priv->agent.context = context;
529 mad_snoop_priv->agent.qp = port_priv->qp_info[qpn].qp;
530 mad_snoop_priv->agent.port_num = port_num;
542 return &mad_snoop_priv->agent;
618 /* If the TID is zero, the agent can only snoop. */
622 agent);
627 agent);
665 mad_snoop_priv->agent.snoop_handler(&mad_snoop_priv->agent,
690 mad_snoop_priv->agent.recv_handler(&mad_snoop_priv->agent, NULL,
757 struct ib_device *device = mad_agent_priv->agent.device;
771 port_num = mad_agent_priv->agent.port_num;
839 build_smp_wc(mad_agent_priv->agent.qp,
859 mad_agent_priv->agent.recv_handler) {
863 * Reference MAD agent until receive
875 port_priv = ib_get_mad_port(mad_agent_priv->agent.device,
876 mad_agent_priv->agent.port_num);
884 * No receiving agent so drop packet and
905 /* Reference MAD agent until send side of local completion handled */
972 agent.rmpp_version;
982 int ib_mad_kernel_rmpp_agent(const struct ib_mad_agent *agent)
984 return agent->rmpp_version && !(agent->flags & IB_MAD_USER_RMPP);
1003 agent);
1139 struct ib_mad_agent_private, agent);
1243 if (mad_agent_priv->agent.rmpp_version) {
1277 /* Reference MAD agent until send completes */
1284 if (ib_mad_kernel_rmpp_agent(&mad_agent_priv->agent)) {
1360 if ((*method)->agent[i]) {
1388 if (method->agent[i])
1441 struct ib_mad_agent_private *agent)
1445 /* Remove any methods for this mad agent */
1447 if (method->agent[i] == agent) {
1448 method->agent[i] = NULL;
1468 dev_err(&agent_priv->agent.device->dev,
1493 (*method)->agent[i] = agent_priv;
1498 /* Remove any methods for this mad agent */
1535 dev_err(&agent_priv->agent.device->dev,
1546 dev_err(&agent_priv->agent.device->dev,
1578 dev_err(&agent_priv->agent.device->dev, "All OUI slots in use\n");
1588 (*method)->agent[i] = agent_priv;
1593 /* Remove any methods for this mad agent */
1643 /* Remove any methods for this mad agent */
1680 /* Remove any methods for this mad agent */
1731 if (entry->agent.hi_tid == hi_tid) {
1761 mad_agent = method->agent[mad_hdr->method &
1779 mad_agent = method->agent[mad_hdr->method &
1786 if (mad_agent->agent.recv_handler)
1791 &mad_agent->agent, port_priv->port_num);
1842 return !mad_agent_priv->agent.rmpp_version ||
1843 !ib_mad_kernel_rmpp_agent(&mad_agent_priv->agent) ||
1863 struct ib_device *device = mad_agent_priv->agent.device;
1864 u8 port_num = mad_agent_priv->agent.port_num;
1971 if (ib_mad_kernel_rmpp_agent(&mad_agent_priv->agent)) {
1986 if (!ib_mad_kernel_rmpp_agent(&mad_agent_priv->agent)
1993 mad_agent_priv->agent.recv_handler(
1994 &mad_agent_priv->agent, NULL,
2009 mad_agent_priv->agent.recv_handler(
2010 &mad_agent_priv->agent,
2021 mad_agent_priv->agent.recv_handler(&mad_agent_priv->agent, NULL,
2395 if (ib_mad_kernel_rmpp_agent(&mad_agent_priv->agent)) {
2416 /* Remove send from MAD agent and notify client of completion */
2426 mad_agent_priv->agent.send_handler(&mad_agent_priv->agent,
2429 /* Release reference on agent taken when sending */
2600 mad_agent_priv->agent.send_handler(&mad_agent_priv->agent,
2637 agent);
2698 dev_err(&mad_agent_priv->agent.device->dev,
2699 "No receive MAD agent for local completion\n");
2708 build_smp_wc(recv_mad_agent->agent.qp,
2712 recv_mad_agent->agent.port_num, &wc);
2735 recv_mad_agent->agent.recv_handler(
2736 &recv_mad_agent->agent,
2753 mad_agent_priv->agent.send_handler(&mad_agent_priv->agent,
2777 if (ib_mad_kernel_rmpp_agent(&mad_send_wr->mad_agent_priv->agent)) {
2840 mad_agent_priv->agent.send_handler(&mad_agent_priv->agent,