mbuf(9): Implement a leaf network interface field in the mbuf packet header.
authorHans Petter Selasky <hselasky@FreeBSD.org>
Wed, 25 May 2022 12:08:50 +0000 (14:08 +0200)
committerHans Petter Selasky <hselasky@FreeBSD.org>
Tue, 7 Jun 2022 10:54:42 +0000 (12:54 +0200)
commit4d88d81c3166a80df8098d23a3cc26c2463da33d
tree9533d218f70eed0b2e420819dc8de0e6a53f4393
parent892eded5b8b0723043577b971ac7be7edeb8df7a
mbuf(9): Implement a leaf network interface field in the mbuf packet header.

When packets are received they may traverse several network interfaces like
vlan(4) and lagg(9). When doing receive side offloads it is important to
know the first network interface entry point, because that is where all
offloading is taking place. This makes it possible to track receive
side route changes for multiport setups, for example when lagg(9) receives
traffic from more than one port. This avoids having to install multiple
offloading rules for the same stream.

This field works similar to the existing "rcvif" mbuf packet header field.

Submitted by: jhb@
Reviewed by: gallatin@ and gnn@
Differential revision: https://reviews.freebsd.org/D35339
Sponsored by: NVIDIA Networking
Sponsored by: Netflix
sys/kern/kern_mbuf.c
sys/kern/uipc_mbuf.c
sys/sys/mbuf.h