• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/lib/devif/backends/net/mlx4/drivers/infiniband/core/

Lines Matching refs:port

73 	struct ib_sa_port port[0];
80 struct ib_sa_port *port;
523 struct ib_sa_port *port =
529 if (ib_query_port(port->agent->device, port->port_num, &port_attr)) {
530 printk(KERN_WARNING "Couldn't query port\n");
544 if (ib_find_pkey(port->agent->device, port->port_num,
551 ah_attr.port_num = port->port_num;
553 new_ah->ah = ib_create_ah(port->agent->qp->pd, &ah_attr);
560 spin_lock_irq(&port->ah_lock);
561 if (port->sm_ah)
562 kref_put(&port->sm_ah->ref, free_sm_ah);
563 port->sm_ah = new_ah;
564 spin_unlock_irq(&port->ah_lock);
579 struct ib_sa_port *port =
580 &sa_dev->port[event->element.port_num - sa_dev->start_port];
582 if (rdma_port_get_link_layer(handler->device, port->port_num) != IB_LINK_LAYER_INFINIBAND)
585 spin_lock_irqsave(&port->ah_lock, flags);
586 if (port->sm_ah)
587 kref_put(&port->sm_ah->ref, free_sm_ah);
588 port->sm_ah = NULL;
589 spin_unlock_irqrestore(&port->ah_lock, flags);
591 schedule_work(&sa_dev->port[event->element.port_num -
630 agent = query->port->agent;
641 struct ib_sa_port *port;
649 port = &sa_dev->port[port_num - sa_dev->start_port];
650 spin_lock_irqsave(&port->ah_lock, flags);
651 src_path_mask = port->sm_ah ? port->sm_ah->src_path_mask : 0x7f;
652 spin_unlock_irqrestore(&port->ah_lock, flags);
696 spin_lock_irqsave(&query->port->ah_lock, flags);
697 if (!query->port->sm_ah) {
698 spin_unlock_irqrestore(&query->port->ah_lock, flags);
701 kref_get(&query->port->sm_ah->ref);
702 query->sm_ah = query->port->sm_ah;
703 spin_unlock_irqrestore(&query->port->ah_lock, flags);
705 query->mad_buf = ib_create_send_mad(query->port->agent, 1,
817 struct ib_sa_port *port;
825 port = &sa_dev->port[port_num - sa_dev->start_port];
826 agent = port->agent;
832 query->sa_query.port = port;
897 * @port_num: port number to send request on
933 struct ib_sa_port *port;
941 port = &sa_dev->port[port_num - sa_dev->start_port];
942 agent = port->agent;
953 query->sa_query.port = port;
1030 struct ib_sa_port *port;
1038 port = &sa_dev->port[port_num - sa_dev->start_port];
1039 agent = port->agent;
1045 query->sa_query.port = port;
1132 * @port_num: port number to send query on
1165 struct ib_sa_port *port;
1173 port = &sa_dev->port[port_num - sa_dev->start_port];
1174 agent = port->agent;
1180 query->sa_query.port = port;
1195 query->sa_query.port = port;
1217 static void ib_sa_notice_resp(struct ib_sa_port *port,
1225 mad_buf = ib_create_send_mad(port->notice_agent, 1, 0, 0,
1235 spin_lock_irqsave(&port->ah_lock, flags);
1236 if (!port->sm_ah) {
1237 spin_unlock_irqrestore(&port->ah_lock, flags);
1241 kref_get(&port->sm_ah->ref);
1242 mad_buf->context[0] = &port->sm_ah->ref;
1243 mad_buf->ah = port->sm_ah->ah;
1244 spin_unlock_irqrestore(&port->ah_lock, flags);
1319 struct ib_sa_port *port;
1323 port = mad_agent->context;
1327 if (!notice_dispatch(port->device, port->port_num, &notice))
1328 ib_sa_notice_resp(port, mad_recv_wc);
1361 spin_lock_init(&sa_dev->port[i].ah_lock);
1365 sa_dev->port[i].sm_ah = NULL;
1366 sa_dev->port[i].port_num = i + s;
1368 sa_dev->port[i].agent =
1372 if (IS_ERR(sa_dev->port[i].agent))
1375 sa_dev->port[i].device = device;
1377 sa_dev->port[i].notice_agent =
1380 notice_handler, &sa_dev->port[i]);
1382 if (IS_ERR(sa_dev->port[i].notice_agent))
1385 INIT_WORK(&sa_dev->port[i].update_task, update_sm_ah);
1393 * registered to avoid any problems if a port changes state
1403 update_sm_ah(&sa_dev->port[i].update_task);
1410 if (!IS_ERR(sa_dev->port[i].notice_agent))
1411 ib_unregister_mad_agent(sa_dev->port[i].notice_agent);
1412 if (!IS_ERR(sa_dev->port[i].agent))
1413 ib_unregister_mad_agent(sa_dev->port[i].agent);
1435 ib_unregister_mad_agent(sa_dev->port[i].notice_agent);
1436 ib_unregister_mad_agent(sa_dev->port[i].agent);
1437 if (sa_dev->port[i].sm_ah)
1438 kref_put(&sa_dev->port[i].sm_ah->ref, free_sm_ah);