It makes less sense to remove define of ipv6 variable from ipv6 file and put it in ipv4 file and declare it in ipv6 file, which was done in 3d010c8031e3 ("udp: do not accept non-tunnel GSO skbs landing in a tunnel"). So let's move it back to ipv6 file. It also makes the code similar - the key is defined right above the respective enable function. Signed-off-by: Siddh Raman Pant --- I'm not sure why ipv4 key is exported using EXPORT_IPV6_MOD? net/ipv4/udp.c | 5 ----- net/ipv6/udp.c | 4 +++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index 30dfbf73729d..44b08ede7133 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -810,11 +810,6 @@ static inline bool __udp_is_mcast_sock(struct net *net, const struct sock *sk, DEFINE_STATIC_KEY_FALSE(udp_encap_needed_key); EXPORT_IPV6_MOD(udp_encap_needed_key); -#if IS_ENABLED(CONFIG_IPV6) -DEFINE_STATIC_KEY_FALSE(udpv6_encap_needed_key); -EXPORT_IPV6_MOD(udpv6_encap_needed_key); -#endif - void udp_encap_enable(void) { static_branch_inc(&udp_encap_needed_key); diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 813a2ba75824..6b92d4f466d5 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -596,7 +596,9 @@ int udpv6_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, goto try_again; } -DECLARE_STATIC_KEY_FALSE(udpv6_encap_needed_key); +DEFINE_STATIC_KEY_FALSE(udpv6_encap_needed_key); +EXPORT_IPV6_MOD(udpv6_encap_needed_key); + void udpv6_encap_enable(void) { static_branch_inc(&udpv6_encap_needed_key); -- 2.51.0