[PATCH net-next 0/5] mlx4: cleanup and doorbell fix

From: Joe Damato

Date: Tue Nov 10 2026 - 18:14:42 EST


Greetings:

I am working on adding support for SW USO to mlx4 and the branch I have with
those changes locally is becoming a bit long, so I thought I'd try to break it
up to make it easier to review and merge by first sending this prep series.

FWIW: I plan to include more detailed data in my SW USO series, but I'm
working on SW USO because it significantly improves performance on hosts with
an IOMMU and an mlx4 NIC. I have a lot of hosts like that in production that
would benefit.

Anyway, back to this series.

Patches 1-3 factor common code out into helpers which currently have only 1
call site each, but I will be calling these helpers in the SW USO code I plan
to submit next.

Patch 4 and 5 add code to track when a doorbell is deferred so that the it can
be written in the drop path. This is technically a bug fix (and I need this
to avoid the same type of bug in SW USO), but since I have never seen this bug
occur in reality I am sending to net-next.

Thanks,
Joe

Joe Damato (5):
net/mlx4: factor VLAN parsing into mlx4_en_prep_vlan()
net/mlx4: factor csum flags into mlx4_en_csum_flags()
net/mlx4: factor HW loopback DMAC into mlx4_en_set_loopback_dmac()
net/mlx4: track whether a TX doorbell is pending
net/mlx4: flush pending doorbell when dropping a TX skb

drivers/net/ethernet/mellanox/mlx4/en_tx.c | 95 +++++++++++++-------
drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | 1 +
2 files changed, 65 insertions(+), 31 deletions(-)


base-commit: 97ced2c090bfc2156db31fca9f52cf253e4bc186
--
2.53.0-Meta