Skip to content

Commit

Permalink
netfilter: nft_set_pipapo: stop GC iteration if GC transaction alloca…
Browse files Browse the repository at this point in the history
…tion fails

nft_trans_gc_queue_sync() enqueues the GC transaction and it allocates a
new one. If this allocation fails, then stop this GC sync run and retry
later.

Fixes: 5f68718 ("netfilter: nf_tables: GC transaction API to avoid race with control plane")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
  • Loading branch information
Pablo Neira Ayuso committed Sep 8, 2023
1 parent 4a9e12e commit 6d365ea
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion net/netfilter/nft_set_pipapo.c
Original file line number Diff line number Diff line change
Expand Up @@ -1596,7 +1596,7 @@ static void pipapo_gc(const struct nft_set *_set, struct nft_pipapo_match *m)

gc = nft_trans_gc_queue_sync(gc, GFP_ATOMIC);
if (!gc)
break;
return;

nft_pipapo_gc_deactivate(net, set, e);
pipapo_drop(m, rulemap);
Expand Down

0 comments on commit 6d365ea

Please sign in to comment.