]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
netfilter: nf_tables: avoid softlockup warnings in nft_chain_validate
authorFlorian Westphal <fw@strlen.de>
Thu, 11 Dec 2025 11:55:19 +0000 (12:55 +0100)
committerFlorian Westphal <fw@strlen.de>
Mon, 15 Dec 2025 14:04:04 +0000 (15:04 +0100)
This reverts commit
314c82841602 ("netfilter: nf_tables: can't schedule in nft_chain_validate"):
Since commit a60a5abe19d6 ("netfilter: nf_tables: allow iter callbacks to sleep")
the iterator callback is invoked without rcu read lock held, so this
cond_resched() is now valid.

Signed-off-by: Florian Westphal <fw@strlen.de>
net/netfilter/nf_tables_api.c

index a9f6babcc781b7821c621319891dec998041ed82..618af6e90773fff3b951e92fd3ee65f927ae33ca 100644 (file)
@@ -4171,6 +4171,8 @@ int nft_chain_validate(const struct nft_ctx *ctx, struct nft_chain *chain)
                        if (err < 0)
                                return err;
                }
+
+               cond_resched();
        }
 
        nft_chain_vstate_update(ctx, chain);
@@ -4195,8 +4197,6 @@ static int nft_table_validate(struct net *net, const struct nft_table *table)
                err = nft_chain_validate(&ctx, chain);
                if (err < 0)
                        goto err;
-
-               cond_resched();
        }
 
 err: