[PATCH v2 net 0/6] Fix short frame transmission in enetc

Vladimir Oltean posted 6 patches 2 months, 1 week ago
drivers/net/ethernet/freescale/enetc/enetc.c | 38 +++++++++++++++++---
drivers/net/ethernet/freescale/enetc/enetc.h |  2 ++
include/net/xdp.h                            | 23 ++++++++++++
3 files changed, 59 insertions(+), 4 deletions(-)
[PATCH v2 net 0/6] Fix short frame transmission in enetc
Posted by Vladimir Oltean 2 months, 1 week ago
This is a belated follow-up to Zefir Kurtisi's report:
https://lore.kernel.org/netdev/20260220132930.2521155-1-zefir.kurtisi@gmail.com/

which is that the ENETC misbehaves when transmitting packets smaller
than 16 octets sans FCS: it sends them but does not update the completed
index in the transmit BD ring. I did find a sentence in the reference
manual explicitly stating these short frames are not supported.

The original series (patches 5, 6) were focused on handling the invalid
frame geometries. However, review pointed out further issues in annex
code. Patches 1-4 handle those.

The main patch is 2/3, which Zefir already tested (in a simpler form)
and confirmed working in the thread from February. The code path should
be identical for his issue, so I've preserved the tag despite the
additions.

v1 at:
https://lore.kernel.org/netdev/20260401172246.1075883-1-vladimir.oltean@nxp.com/

Vladimir Oltean (6):
  net: enetc: increment error counter in enetc_xdp_xmit() on DMA mapping
    errors
  net: enetc: linearize PTP event packets with one-step TX timestamping
  net: enetc: ensure enetc_xdp_xmit() calls enetc_update_tx_ring_tail()
  net: enetc: fix bogus TX ring consumer index after reinitialization
  net: enetc: pad short frames in software
  net: enetc: pad short XDP frames coming from devmap

 drivers/net/ethernet/freescale/enetc/enetc.c | 38 +++++++++++++++++---
 drivers/net/ethernet/freescale/enetc/enetc.h |  2 ++
 include/net/xdp.h                            | 23 ++++++++++++
 3 files changed, 59 insertions(+), 4 deletions(-)

-- 
2.43.0