Commit 92df4c56 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

netfilter: conntrack: warn when cleanup is stuck



nf_conntrack_cleanup_net_list() calls schedule() so it does not
show up as a hung task. Add an explicit check to make debugging
leaked skbs/conntack references more obvious.

Acked-by: default avatarFlorian Westphal <fw@strlen.de>
Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20251207010942.1672972-5-kuba@kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 006a5035
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2487,6 +2487,7 @@ void nf_conntrack_cleanup_net(struct net *net)
void nf_conntrack_cleanup_net_list(struct list_head *net_exit_list)
{
	struct nf_ct_iter_data iter_data = {};
	unsigned long start = jiffies;
	struct net *net;
	int busy;

@@ -2507,6 +2508,8 @@ void nf_conntrack_cleanup_net_list(struct list_head *net_exit_list)
			busy = 1;
	}
	if (busy) {
		DEBUG_NET_WARN_ONCE(time_after(jiffies, start + 60 * HZ),
				    "conntrack cleanup blocked for 60s");
		schedule();
		goto i_see_dead_people;
	}