HomeFreeBSD

genet: pullup minimum header amount for IPv4

Description

genet: pullup minimum header amount for IPv4

The genet driver (RPi4 Ethernet) had code to pull headers into the
first mbuf if there was only an Ethernet header there. This was
originally needed for ICMPv6 replies, then for forwarded IPv6/TCP.
Now a situation has been found where it is needed for IPv4, when
using NAT with IPFW. Generalize to do this for all protocols.
Rather than using an IPv6-related definition for the length, move
the length to a variable that can be set with sysctl
(hw.genet.tx_hdr_min). Move an old tunable to a new RDTUN variable
with a better name.

PR: 25607
MFC after: 3 days
Reviewers: emaste
Differential Revision: https://reviews.freebsd.org/D30831

Details

Provenance
karelsAuthored on Jun 20 2021, 5:50 PM
Differential Revision
D30831: genet: pullup minimum header amount for IPv4
Parents
rG5dd84e315a9f: arm64: fix a potential KVA leak in pmap_demote_l1()
Branches
Unknown
Tags
Unknown