From: David Ahern <dsah...@gmail.com> Packets that exceed the egress MTU can not be forwarded in the fast path. Add IPv4 and IPv6 MTU helpers that take a FIB lookup result (versus the typical dst path) and add the calls to bpf_ipv{4,6}_fib_lookup.
v2 - add ip6_mtu_from_fib6 to ipv6_stub - only call the new MTU helpers for fib lookups in XDP path; skb path uses is_skb_forwardable to determine if the packet can be sent via the egress device from the FIB lookup David Ahern (3): net/ipv4: Add helper to return path MTU based on fib result net/ipv6: Add helper to return path MTU based on fib result bpf: Add mtu checking to FIB forwarding helper include/net/addrconf.h | 2 ++ include/net/ip6_fib.h | 6 ++++++ include/net/ip6_route.h | 3 +++ include/net/ip_fib.h | 2 ++ net/core/filter.c | 42 +++++++++++++++++++++++++++++++++++------- net/ipv4/route.c | 31 +++++++++++++++++++++++++++++++ net/ipv6/addrconf_core.c | 8 ++++++++ net/ipv6/af_inet6.c | 1 + net/ipv6/route.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 136 insertions(+), 7 deletions(-) -- 2.11.0