[PATCH v1 0/3] net/af_packet: fix MTU handling and add jumbo frame support
Xavier Guillaume
xavier.guillaume at ovhcloud.com
Fri Mar 6 10:20:10 CET 2026
This series fixes two bugs in the af_packet PMD related to frame
size calculations and buffer safety, then enables jumbo frame
support by deriving the advertised capabilities from the actual
TPACKET ring configuration.
Patch 1 fixes the data size calculation in eth_dev_mtu_set() which
is too restrictive due to TPACKET2_HDRLEN including sizeof(struct
sockaddr_ll) even though the sockaddr_ll does not consume frame
data space. The formula is now consistent with the RX and TX paths.
Patch 2 adds a bounds check in the RX path to prevent a heap buffer
overflow when the kernel delivers a packet larger than the mbuf data
room (e.g. if the kernel interface MTU is raised externally).
Patch 3 replaces the static max_rx_pktlen (RTE_ETHER_MAX_LEN) and
adds max_mtu, both derived from the configured TPACKET frame size.
This enables jumbo frame support when the user specifies a larger
framesz devarg at vdev creation time.
Xavier Guillaume (3):
net/af_packet: fix MTU set data size calculation
net/af_packet: fix receive buffer overflow
net/af_packet: support jumbo frames
drivers/net/af_packet/rte_eth_af_packet.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
--
2.34.1
More information about the dev
mailing list