From: Pablo Neira Ayuso Date: Tue, 17 Sep 2024 21:07:46 +0000 (+0200) Subject: netfilter: nf_tables: use rcu chain hook list iterator from netlink dump path X-Git-Tag: microblaze-v6.13~41^2^2~4 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=4ffcf5ca81c3b83180473eb0d3c010a1a7c6c4de;p=linux-2.6-microblaze.git netfilter: nf_tables: use rcu chain hook list iterator from netlink dump path Lockless iteration over hook list is possible from netlink dump path, use rcu variant to iterate over the hook list as is done with flowtable hooks. Fixes: b9703ed44ffb ("netfilter: nf_tables: support for adding new devices to an existing netdev chain") Reported-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c index 042080aeb46c..8f073e6c772a 100644 --- a/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c @@ -1849,7 +1849,7 @@ static int nft_dump_basechain_hook(struct sk_buff *skb, int family, if (!hook_list) hook_list = &basechain->hook_list; - list_for_each_entry(hook, hook_list, list) { + list_for_each_entry_rcu(hook, hook_list, list) { if (!first) first = hook;