Patch "netfilter: nft_dynset: fix element timeout for HZ != 1000" has been added to the 4.4-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
netfilter: nft_dynset: fix element timeout for HZ != 1000
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
netfilter-nft_dynset-fix-element-timeout-for-hz-1000.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
a8b1e36d0d1d6f51490e7adce35367ed6adb10e7Mon Sep 17 00:00:00 2001
From: "Anders K. Pedersen" <[email protected]>
Date: Sun, 9 Oct 2016 13:49:02 +0000
Subject: netfilter: nft_dynset: fix element timeout for HZ != 1000
From: Anders K. Pedersen <[email protected]>
commit a8b1e36d0d1d6f51490e7adce35367ed6adb10e7 upstream.
With HZ=100 element timeout in dynamic sets (i.e. flow tables) is 10 times higher than configured.
Add proper conversion to/from jiffies, when interacting with userspace.
I tested this on Linux 4.8.1, and it applies cleanly to current nf and nf-next trees.
--- net/netfilter/nft_dynset.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
net/netfilter/nft_dynset.c +4 -2
@@ -140,7 +140,8 @@ static int nft_dynset_init(const structif (tb[NFTA_DYNSET_TIMEOUT ] !=NULL ) {if (!(set->flags &NFT_SET_TIMEOUT ))return -EINVAL ; - timeout =be64_to_cpu (nla_get_be64 (tb[NFTA_DYNSET_TIMEOUT ])); + timeout =msecs_to_jiffies (be64_to_cpu (nla_get_be64 ( + tb[NFTA_DYNSET_TIMEOUT ]))); } priv->sreg_key =nft_parse_register (tb[NFTA_DYNSET_SREG_KEY ]);
@@ -227,7 +228,8 @@ static int nft_dynset_dump(struct sk_buf goto nla_put_failure;if (nla_put_string (skb,NFTA_DYNSET_SET_NAME , priv->set->name)) goto nla_put_failure; -if (nla_put_be64 (skb,NFTA_DYNSET_TIMEOUT ,cpu_to_be64 (priv->timeout))) +if (nla_put_be64 (skb,NFTA_DYNSET_TIMEOUT , +cpu_to_be64 (jiffies_to_msecs (priv->timeout)))) goto nla_put_failure;if (priv->expr &&nft_expr_dump (skb,NFTA_DYNSET_EXPR , priv->expr)) goto nla_put_failure;
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/netfilter-nft_dynset-fix-element-timeout-for-hz-1000.patch