Message ID | 20220120080546.1733332-1-idosch@nvidia.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 6cee105e7f2ced596373951d9ea08dacc3883c68 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] ipv6_tunnel: Rate limit warning messages | expand |
Hello: This patch was applied to netdev/net.git (master) by David S. Miller <davem@davemloft.net>: On Thu, 20 Jan 2022 10:05:46 +0200 you wrote: > The warning messages can be invoked from the data path for every packet > transmitted through an ip6gre netdev, leading to high CPU utilization. > > Fix that by rate limiting the messages. > > Fixes: 09c6bbf090ec ("[IPV6]: Do mandatory IPv6 tunnel endpoint checks in realtime") > Reported-by: Maksym Yaremchuk <maksymy@nvidia.com> > Tested-by: Maksym Yaremchuk <maksymy@nvidia.com> > Signed-off-by: Ido Schimmel <idosch@nvidia.com> > Reviewed-by: Amit Cohen <amcohen@nvidia.com> > > [...] Here is the summary with links: - [net] ipv6_tunnel: Rate limit warning messages https://git.kernel.org/netdev/net/c/6cee105e7f2c You are awesome, thank you!
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c index fe786df4f849..97ade833f58c 100644 --- a/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c @@ -1036,14 +1036,14 @@ int ip6_tnl_xmit_ctl(struct ip6_tnl *t, if (unlikely(!ipv6_chk_addr_and_flags(net, laddr, ldev, false, 0, IFA_F_TENTATIVE))) - pr_warn("%s xmit: Local address not yet configured!\n", - p->name); + pr_warn_ratelimited("%s xmit: Local address not yet configured!\n", + p->name); else if (!(p->flags & IP6_TNL_F_ALLOW_LOCAL_REMOTE) && !ipv6_addr_is_multicast(raddr) && unlikely(ipv6_chk_addr_and_flags(net, raddr, ldev, true, 0, IFA_F_TENTATIVE))) - pr_warn("%s xmit: Routing loop! Remote address found on this node!\n", - p->name); + pr_warn_ratelimited("%s xmit: Routing loop! Remote address found on this node!\n", + p->name); else ret = 1; rcu_read_unlock();