This patch adds hardware offload support for nftables through the existing netdev_ops->ndo_setup_tc() interface, the TC_SETUP_CLSFLOWER classifier and the flow rule API. This hardware offload support is available for the NFPROTO_NETDEV family and the ingress hook. Each nftables expression has a new ->offload interface, that is used to populate the flow rule object that is attached to the transaction object. There is a new per-table NFT_TABLE_F_HW flag, that is set on to offload an entire table, including all of its chains. This patch supports for basic metadata (layer 3 and 4 protocol numbers), 5-tuple payload matching and the accept/drop actions; this also includes basechain hardware offload only. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
ipv4 | ||
ipv6 | ||
br_netfilter.h | ||
nf_conntrack_acct.h | ||
nf_conntrack_bridge.h | ||
nf_conntrack_core.h | ||
nf_conntrack_count.h | ||
nf_conntrack_ecache.h | ||
nf_conntrack_expect.h | ||
nf_conntrack_extend.h | ||
nf_conntrack_helper.h | ||
nf_conntrack_l4proto.h | ||
nf_conntrack_labels.h | ||
nf_conntrack_seqadj.h | ||
nf_conntrack_synproxy.h | ||
nf_conntrack_timeout.h | ||
nf_conntrack_timestamp.h | ||
nf_conntrack_tuple.h | ||
nf_conntrack_zones.h | ||
nf_conntrack.h | ||
nf_dup_netdev.h | ||
nf_flow_table.h | ||
nf_log.h | ||
nf_nat_helper.h | ||
nf_nat_masquerade.h | ||
nf_nat_redirect.h | ||
nf_nat.h | ||
nf_queue.h | ||
nf_reject.h | ||
nf_socket.h | ||
nf_synproxy.h | ||
nf_tables_core.h | ||
nf_tables_ipv4.h | ||
nf_tables_ipv6.h | ||
nf_tables_offload.h | ||
nf_tables.h | ||
nf_tproxy.h | ||
nft_fib.h | ||
nft_meta.h | ||
nft_reject.h | ||
xt_rateest.h |