/drivers/infiniband/hw/qib/ |
D | qib_mad.c | 52 static void qib_send_trap(struct qib_ibport *ibp, void *data, unsigned len) in qib_send_trap() argument 61 agent = ibp->send_agent; in qib_send_trap() 66 if (!(ppd_from_ibp(ibp)->lflags & QIBL_LINKACTIVE)) in qib_send_trap() 70 if (ibp->trap_timeout && time_before(jiffies, ibp->trap_timeout)) in qib_send_trap() 83 ibp->tid++; in qib_send_trap() 84 smp->tid = cpu_to_be64(ibp->tid); in qib_send_trap() 89 spin_lock_irqsave(&ibp->lock, flags); in qib_send_trap() 90 if (!ibp->sm_ah) { in qib_send_trap() 91 if (ibp->sm_lid != be16_to_cpu(IB_LID_PERMISSIVE)) { in qib_send_trap() 96 attr.dlid = ibp->sm_lid; in qib_send_trap() [all …]
|
D | qib_verbs_mcast.c | 111 struct qib_mcast *qib_mcast_find(struct qib_ibport *ibp, union ib_gid *mgid) in qib_mcast_find() argument 117 spin_lock_irqsave(&ibp->lock, flags); in qib_mcast_find() 118 n = ibp->mcast_tree.rb_node; in qib_mcast_find() 132 spin_unlock_irqrestore(&ibp->lock, flags); in qib_mcast_find() 136 spin_unlock_irqrestore(&ibp->lock, flags); in qib_mcast_find() 153 static int qib_mcast_add(struct qib_ibdev *dev, struct qib_ibport *ibp, in qib_mcast_add() argument 156 struct rb_node **n = &ibp->mcast_tree.rb_node; in qib_mcast_add() 160 spin_lock_irq(&ibp->lock); in qib_mcast_add() 215 rb_insert_color(&mcast->rb_node, &ibp->mcast_tree); in qib_mcast_add() 220 spin_unlock_irq(&ibp->lock); in qib_mcast_add() [all …]
|
D | qib_ud.c | 51 struct qib_ibport *ibp = to_iport(sqp->ibqp.device, sqp->port_num); in qib_ud_loopback() local 61 qp = qib_lookup_qpn(ibp, swqe->wr.wr.ud.remote_qpn); in qib_ud_loopback() 63 ibp->n_pkt_drops++; in qib_ud_loopback() 68 ibp->n_pkt_drops++; in qib_ud_loopback() 73 ppd = ppd_from_ibp(ibp); in qib_ud_loopback() 80 pkey1 = qib_get_pkey(ibp, sqp->s_pkey_index); in qib_ud_loopback() 81 pkey2 = qib_get_pkey(ibp, qp->s_pkey_index); in qib_ud_loopback() 85 qib_bad_pqkey(ibp, IB_NOTICE_TRAP_BAD_PKEY, pkey1, in qib_ud_loopback() 109 qib_bad_pqkey(ibp, IB_NOTICE_TRAP_BAD_QKEY, qkey, in qib_ud_loopback() 148 ibp->n_vl15_dropped++; in qib_ud_loopback() [all …]
|
D | qib_ruc.c | 244 static __be64 get_sguid(struct qib_ibport *ibp, unsigned index) in get_sguid() argument 247 struct qib_pportdata *ppd = ppd_from_ibp(ibp); in get_sguid() 251 return ibp->guids[index - 1]; in get_sguid() 267 int qib_ruc_check_hdr(struct qib_ibport *ibp, struct qib_ib_header *hdr, in qib_ruc_check_hdr() argument 280 guid = get_sguid(ibp, qp->alt_ah_attr.grh.sgid_index); in qib_ruc_check_hdr() 281 if (!gid_ok(&hdr->u.l.grh.dgid, ibp->gid_prefix, guid)) in qib_ruc_check_hdr() 289 qib_get_pkey(ibp, qp->s_alt_pkey_index))) { in qib_ruc_check_hdr() 290 qib_bad_pqkey(ibp, IB_NOTICE_TRAP_BAD_PKEY, in qib_ruc_check_hdr() 299 ppd_from_ibp(ibp)->port != qp->alt_ah_attr.port_num) in qib_ruc_check_hdr() 311 guid = get_sguid(ibp, in qib_ruc_check_hdr() [all …]
|
D | qib_verbs.c | 553 struct qib_ibport *ibp = &rcd->ppd->ibport_data; in qib_qp_rcv() local 559 ibp->n_pkt_drops++; in qib_qp_rcv() 570 qib_ud_rcv(ibp, hdr, has_grh, data, tlen, qp); in qib_qp_rcv() 578 qib_uc_rcv(ibp, hdr, has_grh, data, tlen, qp); in qib_qp_rcv() 602 struct qib_ibport *ibp = &ppd->ibport_data; in qib_ib_rcv() local 640 ibp->opstats[opcode & 0x7f].n_bytes += tlen; in qib_ib_rcv() 641 ibp->opstats[opcode & 0x7f].n_packets++; in qib_ib_rcv() 651 mcast = qib_mcast_find(ibp, &hdr->u.l.grh.dgid); in qib_ib_rcv() 654 ibp->n_multicast_rcv++; in qib_ib_rcv() 674 qp = qib_lookup_qpn(ibp, qp_num); in qib_ib_rcv() [all …]
|
D | qib_rc.c | 651 struct qib_ibport *ibp = to_iport(qp->ibqp.device, qp->port_num); in qib_send_rc_ack() local 652 struct qib_pportdata *ppd = ppd_from_ibp(ibp); in qib_send_rc_ack() 679 hwords += qib_make_grh(ibp, &hdr.u.l.grh, in qib_send_rc_ack() 685 bth0 = qib_get_pkey(ibp, qp->s_pkey_index) | (OP(ACKNOWLEDGE) << 24); in qib_send_rc_ack() 694 lrh0 |= ibp->sl_to_vl[qp->remote_ah_attr.sl] << 12 | in qib_send_rc_ack() 755 ibp->n_unicast_xmit++; in qib_send_rc_ack() 760 ibp->n_rc_qacks++; in qib_send_rc_ack() 871 struct qib_ibport *ibp; in qib_restart_rc() local 886 ibp = to_iport(qp->ibqp.device, qp->port_num); in qib_restart_rc() 888 ibp->n_rc_resends++; in qib_restart_rc() [all …]
|
D | qib_qp.c | 221 struct qib_ibport *ibp = to_iport(qp->ibqp.device, qp->port_num); in insert_qp() local 229 rcu_assign_pointer(ibp->qp0, qp); in insert_qp() 231 rcu_assign_pointer(ibp->qp1, qp); in insert_qp() 247 struct qib_ibport *ibp = to_iport(qp->ibqp.device, qp->port_num); in remove_qp() local 253 if (ibp->qp0 == qp) { in remove_qp() 255 rcu_assign_pointer(ibp->qp0, NULL); in remove_qp() 256 } else if (ibp->qp1 == qp) { in remove_qp() 258 rcu_assign_pointer(ibp->qp1, NULL); in remove_qp() 291 struct qib_ibport *ibp = &dd->pport[n].ibport_data; in qib_free_all_qps() local 293 if (!qib_mcast_tree_empty(ibp)) in qib_free_all_qps() [all …]
|
D | qib_verbs.h | 834 void qib_bad_pqkey(struct qib_ibport *ibp, __be16 trap_num, u32 key, u32 sl, 836 void qib_cap_mask_chg(struct qib_ibport *ibp); 837 void qib_sys_guid_chg(struct qib_ibport *ibp); 838 void qib_node_desc_chg(struct qib_ibport *ibp); 854 struct qib_mcast *qib_mcast_find(struct qib_ibport *ibp, union ib_gid *mgid); 867 int qib_mcast_tree_empty(struct qib_ibport *ibp); 871 struct qib_qp *qib_lookup_qpn(struct qib_ibport *ibp, u32 qpn); 909 void qib_uc_rcv(struct qib_ibport *ibp, struct qib_ib_header *hdr, 925 void qib_ud_rcv(struct qib_ibport *ibp, struct qib_ib_header *hdr, 1013 int qib_ruc_check_hdr(struct qib_ibport *ibp, struct qib_ib_header *hdr, [all …]
|
D | qib_driver.c | 305 struct qib_ibport *ibp = &ppd->ibport_data; in qib_rcv_hdrerr() local 349 qp = qib_lookup_qpn(ibp, qp_num); in qib_rcv_hdrerr() 362 ibp->n_pkt_drops++; in qib_rcv_hdrerr() 370 ibp, hdr, in qib_rcv_hdrerr() 382 ibp->n_rc_seqnak++; in qib_rcv_hdrerr()
|
D | qib_uc.c | 242 void qib_uc_rcv(struct qib_ibport *ibp, struct qib_ib_header *hdr, in qib_uc_rcv() argument 265 if (qib_ruc_check_hdr(ibp, hdr, has_grh, qp, opcode)) in qib_uc_rcv() 546 ibp->n_pkt_drops++; in qib_uc_rcv()
|
D | qib_sdma.c | 690 struct qib_ibport *ibp; in qib_sdma_verbs_send() local 692 ibp = &ppd->ibport_data; in qib_sdma_verbs_send() 693 ibp->n_dmawait++; in qib_sdma_verbs_send()
|
D | qib.h | 1156 static inline struct qib_pportdata *ppd_from_ibp(struct qib_ibport *ibp) in ppd_from_ibp() argument 1158 return container_of(ibp, struct qib_pportdata, ibport_data); in ppd_from_ibp()
|
D | qib_iba6120.c | 2946 struct qib_ibport *ibp = &ppd->ibport_data; in pma_6120_timer() local 2949 spin_lock_irqsave(&ibp->lock, flags); in pma_6120_timer() 2955 jiffies + usecs_to_jiffies(ibp->pma_sample_interval)); in pma_6120_timer() 2968 spin_unlock_irqrestore(&ibp->lock, flags); in pma_6120_timer()
|
D | qib_iba7322.c | 5137 struct qib_ibport *ibp = &ppd->ibport_data; in try_7322_ipg() local 5144 agent = ibp->send_agent; in try_7322_ipg() 5153 if (!ibp->smi_ah) { in try_7322_ipg() 5160 ah = ib_create_ah(ibp->qp0->ibqp.pd, &attr); in try_7322_ipg() 5165 ibp->smi_ah = to_iah(ah); in try_7322_ipg() 5169 send_buf->ah = &ibp->smi_ah->ibah; in try_7322_ipg()
|