diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2017-01-18 18:30:12 +0100 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2017-02-08 14:16:21 +0100 |
commit | 0b5a78749260560f41e3b7c1f60f2c7dd9aff4f0 (patch) | |
tree | b530e526e7535250bf4a03fec866341de33be9a2 /include/net | |
parent | 55af753cd9fda9c5300f5318253b08bd15fb412e (diff) | |
download | op-kernel-dev-0b5a78749260560f41e3b7c1f60f2c7dd9aff4f0.zip op-kernel-dev-0b5a78749260560f41e3b7c1f60f2c7dd9aff4f0.tar.gz |
netfilter: nf_tables: add space notation to sets
The space notation allows us to classify the set backend implementation
based on the amount of required memory. This provides an order of the
set representation scalability in terms of memory. The size field is
still left in place so use this if the userspace provides no explicit
number of elements, so we cannot calculate the real memory that this set
needs. This also helps us break ties in the set backend selection
routine, eg. two backend implementations provide the same performance.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/netfilter/nf_tables.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/netfilter/nf_tables.h b/include/net/netfilter/nf_tables.h index d76ac2f..21ce50e 100644 --- a/include/net/netfilter/nf_tables.h +++ b/include/net/netfilter/nf_tables.h @@ -245,10 +245,12 @@ enum nft_set_class { * * @size: required memory * @lookup: lookup performance class + * @space: memory class */ struct nft_set_estimate { unsigned int size; enum nft_set_class lookup; + enum nft_set_class space; }; struct nft_set_ext; |