aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/netfilter/nft_fwd_netdev.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2022-03-14 18:23:00 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2022-03-20 00:29:46 +0100
commitb2d306542ff935a4edf7a88ba8145c108193442a (patch)
tree4c02a42b60c7c6305d11ac1838127795238e18e7 /net/netfilter/nft_fwd_netdev.c
parentnetfilter: conntrack: Add and use nf_ct_set_auto_assign_helper_warned() (diff)
downloadwireguard-linux-b2d306542ff935a4edf7a88ba8145c108193442a.tar.xz
wireguard-linux-b2d306542ff935a4edf7a88ba8145c108193442a.zip
netfilter: nf_tables: do not reduce read-only expressions
Skip register tracking for expressions that perform read-only operations on the registers. Define and use a cookie pointer NFT_REDUCE_READONLY to avoid defining stubs for these expressions. This patch re-enables register tracking which was disabled in ed5f85d42290 ("netfilter: nf_tables: disable register tracking"). Follow up patches add remaining register tracking for existing expressions. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nft_fwd_netdev.c')
-rw-r--r--net/netfilter/nft_fwd_netdev.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/netfilter/nft_fwd_netdev.c b/net/netfilter/nft_fwd_netdev.c
index 08e7a289738e..7c5876dc9ff2 100644
--- a/net/netfilter/nft_fwd_netdev.c
+++ b/net/netfilter/nft_fwd_netdev.c
@@ -217,6 +217,7 @@ static const struct nft_expr_ops nft_fwd_neigh_netdev_ops = {
.init = nft_fwd_neigh_init,
.dump = nft_fwd_neigh_dump,
.validate = nft_fwd_validate,
+ .reduce = NFT_REDUCE_READONLY,
};
static const struct nft_expr_ops nft_fwd_netdev_ops = {
@@ -226,6 +227,7 @@ static const struct nft_expr_ops nft_fwd_netdev_ops = {
.init = nft_fwd_netdev_init,
.dump = nft_fwd_netdev_dump,
.validate = nft_fwd_validate,
+ .reduce = NFT_REDUCE_READONLY,
.offload = nft_fwd_netdev_offload,
.offload_action = nft_fwd_netdev_offload_action,
};