From: Chris J Arges Date: Wed, 8 Apr 2026 19:10:47 +0000 (-0500) Subject: net: Add net_cookie to Dead loop messages X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b258cba1e05df758e4e99a0e374da3e044618475;p=thirdparty%2Fkernel%2Flinux.git net: Add net_cookie to Dead loop messages Network devices can have the same name within different network namespaces. To help distinguish these devices, add the net_cookie value which can be used to identify the netns. Signed-off-by: Chris J Arges Link: https://patch.msgid.link/20260408191056.1036330-1-carges@cloudflare.com Signed-off-by: Jakub Kicinski --- diff --git a/net/core/dev.c b/net/core/dev.c index e7bc95cbd1fa..ccc4418b3163 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -4894,8 +4894,9 @@ int __dev_queue_xmit(struct sk_buff *skb, struct net_device *sb_dev) } else { /* Recursion is detected! It is possible unfortunately. */ recursion_alert: - net_crit_ratelimited("Dead loop on virtual device %s, fix it urgently!\n", - dev->name); + net_crit_ratelimited("Dead loop on virtual device %s (net %llu), fix it urgently!\n", + dev->name, dev_net(dev)->net_cookie); + rc = -ENETDOWN; } diff --git a/net/ipv4/ip_tunnel_core.c b/net/ipv4/ip_tunnel_core.c index f430d6f0463e..2667f53482bd 100644 --- a/net/ipv4/ip_tunnel_core.c +++ b/net/ipv4/ip_tunnel_core.c @@ -60,8 +60,8 @@ void iptunnel_xmit(struct sock *sk, struct rtable *rt, struct sk_buff *skb, if (unlikely(dev_recursion_level() > IP_TUNNEL_RECURSION_LIMIT)) { if (dev) { - net_crit_ratelimited("Dead loop on virtual device %s, fix it urgently!\n", - dev->name); + net_crit_ratelimited("Dead loop on virtual device %s (net %llu), fix it urgently!\n", + dev->name, dev_net(dev)->net_cookie); DEV_STATS_INC(dev, tx_errors); } ip_rt_put(rt);