Lines Matching refs:rxe
9 #include "rxe.h"
13 static int check_type_state(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
75 static int check_keys(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
78 struct rxe_port *port = &rxe->port;
100 static int check_addr(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
137 struct rxe_dev *rxe = pkt->rxe;
138 struct rxe_port *port = &rxe->port;
153 qp = rxe_pool_get_index(&rxe->qp_pool, index);
157 err = check_type_state(rxe, pkt, qp);
161 err = check_addr(rxe, pkt, qp);
165 err = check_keys(rxe, pkt, qpn, qp);
190 static void rxe_rcv_mcast_pkt(struct rxe_dev *rxe, struct sk_buff *skb)
206 mcg = rxe_lookup_mcg(rxe, &dgid);
210 spin_lock_bh(&rxe->mcg_lock);
221 err = check_type_state(rxe, pkt, qp);
225 err = check_keys(rxe, pkt, bth_qpn(pkt), qp);
241 if (WARN_ON(!ib_device_try_get(&rxe->ib_dev))) {
258 spin_unlock_bh(&rxe->mcg_lock);
271 ib_device_put(&rxe->ib_dev);
276 * @rxe: rxe device that received packet
284 static int rxe_chk_dgid(struct rxe_dev *rxe, struct sk_buff *skb)
305 gid_attr = rdma_find_gid_by_port(&rxe->ib_dev, pdgid,
320 struct rxe_dev *rxe = pkt->rxe;
325 if (rxe_chk_dgid(rxe, skb) < 0)
344 rxe_counter_inc(rxe, RXE_CNT_RCVD_PKTS);
347 rxe_rcv_mcast_pkt(rxe, skb);
358 ib_device_put(&rxe->ib_dev);