Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d38eb801 authored by Andrew Boyer's avatar Andrew Boyer Committed by Doug Ledford
Browse files

IB/rxe: Unblock loopback by moving skb_out increment



skb_out is decremented in rxe_skb_tx_dtor(), which is not called in the
loopback() path. Move the increment to the send() path rather than
rxe_xmit_packet().

Signed-off-by: default avatarAndrew Boyer <andrew.boyer@dell.com>
Acked-by: default avatarMoni Shoua <monis@mellanox.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 2a7a8548
Loading
Loading
Loading
Loading
+0 −2
Original line number Original line Diff line number Diff line
@@ -266,8 +266,6 @@ static inline int rxe_xmit_packet(struct rxe_dev *rxe, struct rxe_qp *qp,
		return err;
		return err;
	}
	}


	atomic_inc(&qp->skb_out);

	if ((qp_type(qp) != IB_QPT_RC) &&
	if ((qp_type(qp) != IB_QPT_RC) &&
	    (pkt->mask & RXE_END_MASK)) {
	    (pkt->mask & RXE_END_MASK)) {
		pkt->wqe->state = wqe_state_done;
		pkt->wqe->state = wqe_state_done;
+2 −0
Original line number Original line Diff line number Diff line
@@ -459,6 +459,8 @@ static int send(struct rxe_dev *rxe, struct rxe_pkt_info *pkt,
		return -EAGAIN;
		return -EAGAIN;
	}
	}


	if (pkt->qp)
		atomic_inc(&pkt->qp->skb_out);
	kfree_skb(skb);
	kfree_skb(skb);


	return 0;
	return 0;