| 2ecf3f2c | 20-Jun-2021 |
Mike Karels <[email protected]> |
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
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 Reviewers: emaste Differential Revision: https://reviews.freebsd.org/D30831
(cherry picked from commit 184291b0a56a68f2c0dc4388419b0f7d85a08cf4)
show more ...
|
| 51cefda1 | 30-May-2020 |
Mike Karels <[email protected]> |
genet: workaround for problem with ICMPv6 echo replies
The ICMPv6 echo reply is constructed with the IPv6 header too close to the beginning of a packet for an Ethernet header to be prepended, so we
genet: workaround for problem with ICMPv6 echo replies
The ICMPv6 echo reply is constructed with the IPv6 header too close to the beginning of a packet for an Ethernet header to be prepended, so we end up with an mbuf containing just the Ethernet header. The GENET controller doesn't seem to handle this, with or without transmit checksum offload. At least until we have chip documentation, do a pullup to satisfy the chip. Hopefully this can be fixed properly in the future.
show more ...
|