summaryrefslogtreecommitdiffstats
path: root/net/netfilter/nf_tables_api.c
diff options
context:
space:
mode:
authorDavid S. Miller2019-08-18 23:13:23 +0200
committerDavid S. Miller2019-08-18 23:13:23 +0200
commit5cbe9102ae2398c0f410fd4f832d9f038e751a29 (patch)
tree717dbcde06dcd1d5e1f672e3235a190037315c70 /net/netfilter/nf_tables_api.c
parentwimax/i2400m: fix a memory leak bug (diff)
parentnetfilter: nf_tables: map basechain priority to hardware priority (diff)
downloadkernel-qcow2-linux-5cbe9102ae2398c0f410fd4f832d9f038e751a29.tar.gz
kernel-qcow2-linux-5cbe9102ae2398c0f410fd4f832d9f038e751a29.tar.xz
kernel-qcow2-linux-5cbe9102ae2398c0f410fd4f832d9f038e751a29.zip
Merge branch 'flow_offload-hardware-priority-fixes'
Pablo Neira Ayuso says: ==================== flow_offload hardware priority fixes This patchset contains two updates for the flow_offload users: 1) Pass the major tc priority to drivers so they do not have to lshift it. This is a preparation patch for the fix coming in patch #2. 2) Set the hardware priority from the netfilter basechain priority, some drivers break when using the existing hardware priority number that is set to zero. v5: fix patch 2/2 to address a clang warning and to simplify the priority mapping. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netfilter/nf_tables_api.c')
-rw-r--r--net/netfilter/nf_tables_api.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
index 88abbddf8967..d47469f824a1 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -1667,6 +1667,10 @@ static int nf_tables_addchain(struct nft_ctx *ctx, u8 family, u8 genmask,
chain->flags |= NFT_BASE_CHAIN | flags;
basechain->policy = NF_ACCEPT;
+ if (chain->flags & NFT_CHAIN_HW_OFFLOAD &&
+ nft_chain_offload_priority(basechain) < 0)
+ return -EOPNOTSUPP;
+
flow_block_init(&basechain->flow_block);
} else {
chain = kzalloc(sizeof(*chain), GFP_KERNEL);