aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2018-09-06 12:19:36 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2018-09-06 12:19:36 +0000
commit0be5034007d8289b3a4a92176199d7763870f77f (patch)
treed93cc50fa5185865c5bc4dd3b24d17e85f60ba5c /sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
parent2d32b0a3049c22f13062396101ba622686a39ec6 (diff)
downloadsrc-0be5034007d8289b3a4a92176199d7763870f77f.tar.gz
src-0be5034007d8289b3a4a92176199d7763870f77f.zip
Don't stall transmit queue on drops in mlx5en(4).
When a transmitted packet is dropped don't stall the transmit queue. MFC after: 3 days Approved by: re (marius) Sponsored by: Mellanox Technologies
Notes
Notes: svn path=/head/; revision=338490
Diffstat (limited to 'sys/dev/mlx5/mlx5_en/mlx5_en_tx.c')
-rw-r--r--sys/dev/mlx5/mlx5_en/mlx5_en_tx.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c b/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
index 71dca59e795a..40d8157c6771 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
@@ -528,13 +528,11 @@ mlx5e_xmit_locked(struct ifnet *ifp, struct mlx5e_sq *sq, struct mbuf *mb)
/* Process the queue */
while ((next = drbr_peek(ifp, sq->br)) != NULL) {
if (mlx5e_sq_xmit(sq, &next) != 0) {
- if (next == NULL) {
- drbr_advance(ifp, sq->br);
- } else {
+ if (next != NULL) {
drbr_putback(ifp, sq->br, next);
atomic_store_rel_int(&sq->queue_state, MLX5E_SQ_FULL);
+ break;
}
- break;
}
drbr_advance(ifp, sq->br);
}