| /linux/drivers/infiniband/sw/rxe/ |
| H A D | rxe_qp.c | 140 rxe_dbg_dev(rxe, "GSI QP exists for port %d\n", port_num); in rxe_qp_chk_init() 151 static int alloc_rd_atomic_resources(struct rxe_qp *qp, unsigned int n) in alloc_rd_atomic_resources() argument 153 qp->resp.res_head = 0; in alloc_rd_atomic_resources() 154 qp->resp.res_tail = 0; in alloc_rd_atomic_resources() 155 qp->resp.resources = kzalloc_objs(struct resp_res, n); in alloc_rd_atomic_resources() 157 if (!qp->resp.resources) in alloc_rd_atomic_resources() 163 static void free_rd_atomic_resources(struct rxe_qp *qp) in free_rd_atomic_resources() argument 165 if (qp->resp.resources) { in free_rd_atomic_resources() 168 for (i = 0; i < qp->attr.max_dest_rd_atomic; i++) { in free_rd_atomic_resources() 169 struct resp_res *res = &qp->resp.resources[i]; in free_rd_atomic_resources() [all …]
|
| /linux/drivers/infiniband/hw/hfi1/ |
| H A D | rc.c | 11 #include "qp.h" 16 struct rvt_ack_entry *find_prev_entry(struct rvt_qp *qp, u32 psn, u8 *prev, in find_prev_entry() argument 18 __must_hold(&qp->s_lock) in find_prev_entry() 24 for (i = qp->r_head_ack_queue; ; i = p) { in find_prev_entry() 25 if (i == qp->s_tail_ack_queue) in find_prev_entry() 30 p = rvt_size_atomic(ib_to_rvt(qp->ibqp.device)); in find_prev_entry() 31 if (p == qp->r_head_ack_queue) { in find_prev_entry() 35 e = &qp->s_ack_queue[p]; in find_prev_entry() 41 if (p == qp->s_tail_ack_queue && in find_prev_entry() 58 * @dev: the device for this QP [all …]
|
| H A D | uc.c | 8 #include "qp.h" 15 * @qp: a pointer to the QP 22 int hfi1_make_uc_req(struct rvt_qp *qp, struct hfi1_pkt_state *ps) in hfi1_make_uc_req() argument 24 struct hfi1_qp_priv *priv = qp->priv; in hfi1_make_uc_req() 30 u32 pmtu = qp->pmtu; in hfi1_make_uc_req() 33 ps->s_txreq = get_txreq(ps->dev, qp); in hfi1_make_uc_req() 37 if (!(ib_rvt_state_ops[qp->state] & RVT_PROCESS_SEND_OK)) { in hfi1_make_uc_req() 38 if (!(ib_rvt_state_ops[qp->state] & RVT_FLUSH_SEND)) in hfi1_make_uc_req() 41 if (qp->s_last == READ_ONCE(qp->s_head)) in hfi1_make_uc_req() 45 qp->s_flags |= RVT_S_WAIT_DMA; in hfi1_make_uc_req() [all …]
|
| H A D | ruc.c | 10 #include "qp.h" 23 * This should be called with the QP r_lock held. 31 struct rvt_qp *qp = packet->qp; in hfi1_ruc_check_hdr() local 32 u8 sc5 = ibp->sl_to_sc[rdma_ah_get_sl(&qp->remote_ah_attr)]; in hfi1_ruc_check_hdr() 39 if (qp->s_mig_state == IB_MIG_ARMED && migrated) { in hfi1_ruc_check_hdr() 41 if ((rdma_ah_get_ah_flags(&qp->alt_ah_attr) & in hfi1_ruc_check_hdr() 48 if (!(rdma_ah_get_ah_flags(&qp->alt_ah_attr) & in hfi1_ruc_check_hdr() 51 grh = rdma_ah_read_grh(&qp->alt_ah_attr); in hfi1_ruc_check_hdr() 64 hfi1_bad_pkey(ibp, pkey, sl, 0, qp->ibqp.qp_num, in hfi1_ruc_check_hdr() 69 if (slid != rdma_ah_get_dlid(&qp->alt_ah_attr) || in hfi1_ruc_check_hdr() [all …]
|
| H A D | tid_rdma.c | 8 #include "qp.h" 58 /* Maximum number of segments in flight per QP request. */ 114 static void hfi1_init_trdma_req(struct rvt_qp *qp, 116 static void hfi1_tid_write_alloc_resources(struct rvt_qp *qp, bool intr_ctx); 118 static void hfi1_add_tid_reap_timer(struct rvt_qp *qp); 119 static void hfi1_mod_tid_reap_timer(struct rvt_qp *qp); 120 static void hfi1_mod_tid_retry_timer(struct rvt_qp *qp); 121 static int hfi1_stop_tid_retry_timer(struct rvt_qp *qp); 123 static int make_tid_rdma_ack(struct rvt_qp *qp, 126 static void hfi1_do_tid_send(struct rvt_qp *qp); [all …]
|
| H A D | qp.h | 23 * HFI1_S_WAIT_PIO_DRAIN - qp waiting for PIOs to drain 24 * HFI1_S_WAIT_TID_SPACE - a QP is waiting for TID resource 49 static inline int hfi1_send_ok(struct rvt_qp *qp) in hfi1_send_ok() argument 51 struct hfi1_qp_priv *priv = qp->priv; in hfi1_send_ok() 53 return !(qp->s_flags & (RVT_S_BUSY | HFI1_S_ANY_WAIT_IO)) && in hfi1_send_ok() 55 (qp->s_flags & RVT_S_RESP_PENDING) || in hfi1_send_ok() 56 !(qp->s_flags & RVT_S_ANY_WAIT_SEND)); in hfi1_send_ok() 60 * free_ahg - clear ahg from QP 62 static inline void clear_ahg(struct rvt_qp *qp) in clear_ahg() argument 64 struct hfi1_qp_priv *priv = qp->priv; in clear_ahg() [all …]
|
| H A D | opfn.c | 8 #include "qp.h" 17 bool (*request)(struct rvt_qp *qp, u64 *data); 18 bool (*response)(struct rvt_qp *qp, u64 *data); 19 bool (*reply)(struct rvt_qp *qp, u64 data); 20 void (*error)(struct rvt_qp *qp); 34 static void opfn_schedule_conn_request(struct rvt_qp *qp); 41 static void opfn_conn_request(struct rvt_qp *qp) in opfn_conn_request() argument 43 struct hfi1_qp_priv *priv = qp->priv; in opfn_conn_request() 51 trace_hfi1_opfn_state_conn_request(qp); in opfn_conn_request() 70 if (!extd || !extd->request || !extd->request(qp, &data)) { in opfn_conn_request() [all …]
|
| H A D | ud.c | 13 #include "qp.h" 23 * @sqp: the sending QP 36 struct rvt_qp *qp; in ud_loopback() local 47 qp = rvt_lookup_qpn(ib_to_rvt(sqp->ibqp.device), &ibp->rvp, in ud_loopback() 49 if (!qp) { in ud_loopback() 57 dqptype = qp->ibqp.qp_type == IB_QPT_GSI ? in ud_loopback() 58 IB_QPT_UD : qp->ibqp.qp_type; in ud_loopback() 61 !(ib_rvt_state_ops[qp->state] & RVT_PROCESS_RECV_OK)) { in ud_loopback() 69 if (qp->ibqp.qp_num > 1) { in ud_loopback() 78 qp->s_pkey_index, in ud_loopback() [all …]
|
| H A D | trace_rc.h | 18 TP_PROTO(struct rvt_qp *qp, u32 psn), 19 TP_ARGS(qp, psn), 21 DD_DEV_ENTRY(dd_from_ibdev(qp->ibqp.device)) 32 DD_DEV_ASSIGN(dd_from_ibdev(qp->ibqp.device)); 33 __entry->qpn = qp->ibqp.qp_num; 34 __entry->s_flags = qp->s_flags; 36 __entry->s_psn = qp->s_psn; 37 __entry->s_next_psn = qp->s_next_psn; 38 __entry->s_sending_psn = qp->s_sending_psn; 39 __entry->s_sending_hpsn = qp->s_sending_hpsn; [all …]
|
| H A D | tid_rdma.h | 24 * These bit flags overload the bit flags defined for the QP's s_flags. 25 * Due to the fact that these bit fields are used only for the QP priv 28 * HFI1_S_TID_WAIT_INTERLCK - QP is waiting for requester interlock 29 * HFI1_R_TID_WAIT_INTERLCK - QP is waiting for responder interlock 60 u32 qp; member 98 struct rvt_qp *qp; member 173 * While a TID RDMA segment is being transferred, it uses a QP number 174 * from the "KDETH section of QP numbers" (which is different from the 175 * QP number that originated the request). Bits 11-15 of these QP 203 bool tid_rdma_conn_req(struct rvt_qp *qp, u64 *data); [all …]
|
| /linux/drivers/infiniband/sw/siw/ |
| H A D | siw_qp.c | 96 struct siw_qp *qp; in siw_qp_llp_data_ready() local 105 qp = sk_to_qp(sk); in siw_qp_llp_data_ready() 107 if (likely(!qp->rx_stream.rx_suspend && in siw_qp_llp_data_ready() 108 down_read_trylock(&qp->state_lock))) { in siw_qp_llp_data_ready() 109 read_descriptor_t rd_desc = { .arg.data = qp, .count = 1 }; in siw_qp_llp_data_ready() 111 if (likely(qp->attrs.state == SIW_QP_STATE_RTS)) in siw_qp_llp_data_ready() 120 up_read(&qp->state_lock); in siw_qp_llp_data_ready() 122 siw_dbg_qp(qp, "unable to process RX, suspend: %d\n", in siw_qp_llp_data_ready() 123 qp->rx_stream.rx_suspend); in siw_qp_llp_data_ready() 129 void siw_qp_llp_close(struct siw_qp *qp) in siw_qp_llp_close() argument [all …]
|
| H A D | siw_qp_rx.c | 41 pr_warn("siw: %s: [QP %u]: bogus addr: %p, %p\n", in siw_rx_umem() 65 pr_warn("siw: [QP %u]: %s, len %d, page %p, rv %d\n", in siw_rx_umem() 112 pr_warn("siw: [QP %u]: %s, len %d, kva 0x%p, rv %d\n", in siw_rx_kva() 191 pr_warn("siw: [QP %u]: rresp stag: %08x != %08x\n", in siw_rresp_check_ntoh() 197 pr_warn("siw: [QP %u]: rresp off: %016llx != %016llx\n", in siw_rresp_check_ntoh() 205 pr_warn("siw: [QP %u]: rresp len: %d != %d\n", in siw_rresp_check_ntoh() 244 pr_warn("siw: [QP %u]: write stag: %08x != %08x\n", in siw_write_check_ntoh() 251 pr_warn("siw: [QP %u]: write off: %016llx != %016llx\n", in siw_write_check_ntoh() 289 pr_warn("siw: [QP %u]: invalid ddp qn %d for send\n", in siw_send_check_ntoh() 295 pr_warn("siw: [QP %u]: send msn: %u != %u\n", in siw_send_check_ntoh() [all …]
|
| /linux/drivers/net/ethernet/qlogic/qed/ |
| H A D | qed_roce.c | 74 /* when destroying a_RoCE QP the control is returned to the user after in qed_roce_stop() 76 * We delay for a short while if an async destroy QP is still expected. in qed_roce_stop() 96 static void qed_rdma_copy_gids(struct qed_rdma_qp *qp, __le32 *src_gid, in qed_rdma_copy_gids() argument 101 if (qp->roce_mode == ROCE_V2_IPV4) { in qed_rdma_copy_gids() 107 src_gid[3] = cpu_to_le32(qp->sgid.ipv4_addr); in qed_rdma_copy_gids() 108 dst_gid[3] = cpu_to_le32(qp->dgid.ipv4_addr); in qed_rdma_copy_gids() 111 for (i = 0; i < ARRAY_SIZE(qp->sgid.dwords); i++) { in qed_rdma_copy_gids() 112 src_gid[i] = cpu_to_le32(qp->sgid.dwords[i]); in qed_rdma_copy_gids() 113 dst_gid[i] = cpu_to_le32(qp->dgid.dwords[i]); in qed_rdma_copy_gids() 164 DP_NOTICE(p_hwfn, "Failed to allocate two adjacent qp's'\n"); in qed_roce_alloc_cid() [all …]
|
| /linux/drivers/infiniband/hw/mthca/ |
| H A D | mthca_qp.c | 196 static int is_sqp(struct mthca_dev *dev, struct mthca_qp *qp) in is_sqp() argument 198 return qp->qpn >= dev->qp_table.sqp_start && in is_sqp() 199 qp->qpn <= dev->qp_table.sqp_start + 3; in is_sqp() 202 static int is_qp0(struct mthca_dev *dev, struct mthca_qp *qp) in is_qp0() argument 204 return qp->qpn >= dev->qp_table.sqp_start && in is_qp0() 205 qp->qpn <= dev->qp_table.sqp_start + 1; in is_qp0() 208 static void *get_recv_wqe(struct mthca_qp *qp, int n) in get_recv_wqe() argument 210 if (qp->is_direct) in get_recv_wqe() 211 return qp->queue.direct.buf + (n << qp->rq.wqe_shift); in get_recv_wqe() 213 return qp->queue.page_list[(n << qp->rq.wqe_shift) >> PAGE_SHIFT].buf + in get_recv_wqe() [all …]
|
| /linux/drivers/infiniband/hw/ionic/ |
| H A D | ionic_controlpath.c | 1324 struct ionic_qp *qp, in ionic_create_qp_cmd() argument 1331 qp->sq_cmb & IONIC_CMB_ENABLE, in ionic_create_qp_cmd() 1332 qp->rq_cmb & IONIC_CMB_ENABLE, in ionic_create_qp_cmd() 1333 qp->sq_spec, qp->rq_spec, in ionic_create_qp_cmd() 1346 .id_ver = cpu_to_le32(qp->qpid), in ionic_create_qp_cmd() 1354 if (qp->has_sq) { in ionic_create_qp_cmd() 1356 wr.wqe.cmd.create_qp.sq_depth_log2 = qp->sq.depth_log2; in ionic_create_qp_cmd() 1357 wr.wqe.cmd.create_qp.sq_stride_log2 = qp->sq.stride_log2; in ionic_create_qp_cmd() 1365 if (qp->has_rq) { in ionic_create_qp_cmd() 1367 wr.wqe.cmd.create_qp.rq_depth_log2 = qp->rq.depth_log2; in ionic_create_qp_cmd() [all …]
|
| /linux/drivers/infiniband/hw/irdma/ |
| H A D | uk.c | 56 * @qp: hw qp ptr 58 static int irdma_nop_1(struct irdma_qp_uk *qp) in irdma_nop_1() argument 65 if (!qp->sq_ring.head) in irdma_nop_1() 68 wqe_idx = IRDMA_RING_CURRENT_HEAD(qp->sq_ring); in irdma_nop_1() 69 wqe = qp->sq_base[wqe_idx].elem; in irdma_nop_1() 71 qp->sq_wrtrk_array[wqe_idx].quanta = IRDMA_QP_WQE_MIN_QUANTA; in irdma_nop_1() 79 FIELD_PREP(IRDMAQPSQ_VALID, qp->swqe_polarity); in irdma_nop_1() 91 * @qp: hw qp ptr 94 void irdma_clr_wqes(struct irdma_qp_uk *qp, u32 qp_wqe_idx) in irdma_clr_wqes() argument 100 wqe_idx = (qp_wqe_idx + 128) % qp->sq_ring.size; in irdma_clr_wqes() [all …]
|
| /linux/include/rdma/ |
| H A D | rdmavt_qp.h | 31 * If a packet's QP[23:16] bits match this value, then it is 60 * RVT_S_SIGNAL_REQ_WR - set if QP send WRs contain completion signaled 61 * RVT_S_BUSY - send tasklet is processing the QP 124 /* Number of bits to pay attention to in the opcode for checking qp type */ 127 /* Flags for checking QP state (see ib_rvt_state_ops[]) */ 164 * The size of the sg_list is determined when the QP is created and stored 165 * in qp->s_max_sge. 314 * @qpt_support: a bit mask indicating QP type support 331 * which only happens in modify_qp() or changing the QP 'state'. 348 u32 qkey; /* QKEY for this QP (for UD or RD) */ [all …]
|
| /linux/drivers/interconnect/qcom/ |
| H A D | icc-rpm.c | 56 struct qcom_icc_provider *qp = to_qcom_provider(provider); in qcom_icc_set_qnoc_qos() local 61 rc = regmap_update_bits(qp->regmap, in qcom_icc_set_qnoc_qos() 62 qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port), in qcom_icc_set_qnoc_qos() 68 return regmap_update_bits(qp->regmap, in qcom_icc_set_qnoc_qos() 69 qp->qos_offset + QNOC_QOS_MCTL_LOWn_ADDR(qos->qos_port), in qcom_icc_set_qnoc_qos() 74 static int qcom_icc_bimc_set_qos_health(struct qcom_icc_provider *qp, in qcom_icc_bimc_set_qos_health() argument 93 return regmap_update_bits(qp->regmap, in qcom_icc_bimc_set_qos_health() 94 qp->qos_offset + M_BKE_HEALTH_CFG_ADDR(regnum, qos->qos_port), in qcom_icc_bimc_set_qos_health() 100 struct qcom_icc_provider *qp; in qcom_icc_set_bimc_qos() local 109 qp = to_qcom_provider(provider); in qcom_icc_set_bimc_qos() [all …]
|
| H A D | icc-rpmh.c | 21 #define QOSGEN_MAINCTL_LO(p, qp) (0x8 + (p->port_offsets[qp])) argument 28 * @qp: qcom icc provider to which @node belongs 31 static void qcom_icc_set_qos(struct qcom_icc_provider *qp, in qcom_icc_set_qos() argument 38 regmap_update_bits(qp->regmap, QOSGEN_MAINCTL_LO(qos, port), in qcom_icc_set_qos() 42 regmap_update_bits(qp->regmap, QOSGEN_MAINCTL_LO(qos, port), in qcom_icc_set_qos() 46 regmap_update_bits(qp->regmap, QOSGEN_MAINCTL_LO(qos, port), in qcom_icc_set_qos() 60 struct qcom_icc_provider *qp; in qcom_icc_pre_aggregate() local 63 qp = to_qcom_provider(node->provider); in qcom_icc_pre_aggregate() 71 qcom_icc_bcm_voter_add(qp->voter, qn->bcms[i]); in qcom_icc_pre_aggregate() 123 struct qcom_icc_provider *qp; in qcom_icc_set() local [all …]
|
| /linux/net/ipv4/ |
| H A D | ip_fragment.c | 78 static int ip_frag_reasm(struct ipq *qp, struct sk_buff *skb, 85 struct ipq *qp = container_of(q, struct ipq, q); in ip4_frag_init() local 91 qp->ecn = 0; in ip4_frag_init() 99 qp->peer = p; in ip4_frag_init() 104 struct ipq *qp; in ip4_frag_free() local 106 qp = container_of(q, struct ipq, q); in ip4_frag_free() 107 if (qp->peer) in ip4_frag_free() 108 inet_putpeer(qp->peer); in ip4_frag_free() 130 struct ipq *qp; in ip_expire() local 133 qp = container_of(frag, struct ipq, q); in ip_expire() [all …]
|
| /linux/drivers/infiniband/hw/qedr/ |
| H A D | qedr_roce_cm.c | 58 void qedr_store_gsi_qp_cq(struct qedr_dev *dev, struct qedr_qp *qp, in qedr_store_gsi_qp_cq() argument 64 dev->gsi_qp = qp; in qedr_store_gsi_qp_cq() 76 struct qedr_qp *qp = dev->gsi_qp; in qedr_ll2_complete_tx_packet() local 81 dev->gsi_sqcq, dev->gsi_rqcq, qp->sq.gsi_cons, in qedr_ll2_complete_tx_packet() 88 spin_lock_irqsave(&qp->q_lock, flags); in qedr_ll2_complete_tx_packet() 89 qedr_inc_sw_gsi_cons(&qp->sq); in qedr_ll2_complete_tx_packet() 90 spin_unlock_irqrestore(&qp->q_lock, flags); in qedr_ll2_complete_tx_packet() 101 struct qedr_qp *qp = dev->gsi_qp; in qedr_ll2_complete_rx_packet() local 104 spin_lock_irqsave(&qp->q_lock, flags); in qedr_ll2_complete_rx_packet() 106 qp->rqe_wr_id[qp->rq.gsi_cons].rc = data->u.data_length_error ? in qedr_ll2_complete_rx_packet() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
| H A D | conn.c | 110 if (unlikely(conn->qp.rq.pc - conn->qp.rq.cc >= conn->qp.rq.size)) { in mlx5_fpga_conn_post_recv() 115 ix = conn->qp.rq.pc & (conn->qp.rq.size - 1); in mlx5_fpga_conn_post_recv() 116 data = mlx5_wq_cyc_get_wqe(&conn->qp.wq.rq, ix); in mlx5_fpga_conn_post_recv() 121 conn->qp.rq.pc++; in mlx5_fpga_conn_post_recv() 122 conn->qp.rq.bufs[ix] = buf; in mlx5_fpga_conn_post_recv() 126 *conn->qp.wq.rq.db = cpu_to_be32(conn->qp.rq.pc & 0xffff); in mlx5_fpga_conn_post_recv() 135 *conn->qp.wq.sq.db = cpu_to_be32(conn->qp.sq.pc); in mlx5_fpga_conn_notify_hw() 149 ix = conn->qp.sq.pc & (conn->qp.sq.size - 1); in mlx5_fpga_conn_post_send() 151 ctrl = mlx5_wq_cyc_get_wqe(&conn->qp.wq.sq, ix); in mlx5_fpga_conn_post_send() 166 ctrl->opmod_idx_opcode = cpu_to_be32(((conn->qp.sq.pc & 0xffff) << 8) | in mlx5_fpga_conn_post_send() [all …]
|
| /linux/drivers/infiniband/sw/rdmavt/ |
| H A D | rc.c | 48 * @qp: the queue pair to compute the AETH for 52 __be32 rvt_compute_aeth(struct rvt_qp *qp) in rvt_compute_aeth() argument 54 u32 aeth = qp->r_msn & IB_MSN_MASK; in rvt_compute_aeth() 56 if (qp->ibqp.srq) { in rvt_compute_aeth() 68 credits = READ_ONCE(qp->r_rq.kwq->count); in rvt_compute_aeth() 71 if (qp->ip) { in rvt_compute_aeth() 72 head = RDMA_READ_UAPI_ATOMIC(qp->r_rq.wq->head); in rvt_compute_aeth() 73 tail = RDMA_READ_UAPI_ATOMIC(qp->r_rq.wq->tail); in rvt_compute_aeth() 75 head = READ_ONCE(qp->r_rq.kwq->head); in rvt_compute_aeth() 76 tail = READ_ONCE(qp->r_rq.kwq->tail); in rvt_compute_aeth() [all …]
|
| /linux/drivers/infiniband/core/ |
| H A D | security.c | 103 /* The caller of this function must hold the QP security 104 * mutex of the QP of the security structure in *pps. 108 * or the pps will be for the real QP and security structure 109 * will be for a shared QP. 150 /* The caller of this function must hold the QP security 163 /* If the QP is in the process of being destroyed in qp_to_error() 164 * the qp pointer in the security structure is in qp_to_error() 170 ib_modify_qp(sec->qp, in qp_to_error() 174 if (sec->qp->event_handler && sec->qp->qp_context) { in qp_to_error() 175 event.element.qp = sec->qp; in qp_to_error() [all …]
|
| /linux/drivers/scsi/bnx2i/ |
| H A D | bnx2i_hwi.c | 153 cq_db = (struct bnx2i_5771x_cq_db *) ep->qp.cq_pgtbl_virt; in bnx2i_arm_cq_event_coalescing() 170 cq_index = ep->qp.cqe_exp_seq_sn + next_index - 1; in bnx2i_arm_cq_event_coalescing() 171 if (cq_index > ep->qp.cqe_size * 2) in bnx2i_arm_cq_event_coalescing() 172 cq_index -= ep->qp.cqe_size * 2; in bnx2i_arm_cq_event_coalescing() 195 if (!bnx2i_conn->ep->qp.rqe_left) in bnx2i_get_rq_buf() 198 bnx2i_conn->ep->qp.rqe_left--; in bnx2i_get_rq_buf() 199 memcpy(ptr, (u8 *) bnx2i_conn->ep->qp.rq_cons_qe, len); in bnx2i_get_rq_buf() 200 if (bnx2i_conn->ep->qp.rq_cons_qe == bnx2i_conn->ep->qp.rq_last_qe) { in bnx2i_get_rq_buf() 201 bnx2i_conn->ep->qp.rq_cons_qe = bnx2i_conn->ep->qp.rq_first_qe; in bnx2i_get_rq_buf() 202 bnx2i_conn->ep->qp.rq_cons_idx = 0; in bnx2i_get_rq_buf() [all …]
|