lkml.org 
[lkml]   [2020]   [Aug]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH nf] netfilter: nft_compat: remove flush counter optimization
On Sun, Aug 09, 2020 at 08:28:01PM +0200, Florian Westphal wrote:
> WARNING: CPU: 1 PID: 16059 at lib/refcount.c:31 refcount_warn_saturate+0xdf/0xf
> [..]
> __nft_mt_tg_destroy+0x42/0x50 [nft_compat]
> nft_target_destroy+0x63/0x80 [nft_compat]
> nf_tables_expr_destroy+0x1b/0x30 [nf_tables]
> nf_tables_rule_destroy+0x3a/0x70 [nf_tables]
> nf_tables_exit_net+0x186/0x3d0 [nf_tables]
>
> Happens when a compat expr is destoyed from abort path.
> There is no functional impact; after this work queue is flushed
> unconditionally if its pending.
>
> This removes the waitcount optimization. Test of repeated
> iptables-restore of a ~60k kubernetes ruleset doesn't indicate
> a slowdown. In case the counter is needed after all for some workloads
> we can revert this and increment the refcount for the
> != NFT_PREPARE_TRANS case to avoid the increment/decrement imbalance.
>
> While at it, also flush for match case, this was an oversight
> in the original patch.

Applied, thanks.

\
 
 \ /
  Last update: 2020-08-10 13:04    [W:0.057 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site