udp_tunnel: add the ability to share port tables
authorJakub Kicinski <kuba@kernel.org>
Sat, 26 Sep 2020 00:56:40 +0000 (17:56 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Sep 2020 19:50:12 +0000 (12:50 -0700)
commit74cc6d182d038cbba6c6d91beb1b2bab926b618b
treee04f1934d8210d33c284b1583a10b893c164cfb9
parent8744c0a8941516334b4dd2a47375357f44a4f422
udp_tunnel: add the ability to share port tables

Unfortunately recent Intel NIC designs share the UDP port table
across netdevs. So far the UDP tunnel port state was maintained
per netdev, we need to extend that to cater to Intel NICs.

Expect NICs to allocate the info structure dynamically and link
to the state from there. All the shared NICs will record port
offload information in the one instance of the table so we need
to make sure that the use count can accommodate larger numbers.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/udp_tunnel.h
net/ipv4/udp_tunnel_nic.c