From: wenxu <wenxu@xxxxxxxxx> This series patch make nftables offload support the vlan and tunnel device offload through indr-block architecture. The first four patches mv tc indr block to flow offload and rename to flow-indr-block. Because the new flow-indr-block can't get the tcf_block directly. The fifthe patch provide a callback list to get flow_block of each subsystem immediately when the device register and contain a block. The last patch make nf_tables_offload support flow-indr-block. wenxu (6): cls_api: modify the tc_indr_block_ing_cmd parameters. cls_api: replace block with flow_block in tc_indr_block_dev cls_api: add flow_indr_block_call function flow_offload: move tc indirect block to flow offload flow_offload: support get flow_block immediately netfilter: nf_tables_offload: support indr block call drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 10 +- .../net/ethernet/netronome/nfp/flower/offload.c | 11 +- include/net/flow_offload.h | 48 ++++ include/net/netfilter/nf_tables_offload.h | 2 + include/net/pkt_cls.h | 35 --- include/net/sch_generic.h | 3 - net/core/flow_offload.c | 251 ++++++++++++++++++++ net/netfilter/nf_tables_api.c | 7 + net/netfilter/nf_tables_offload.c | 156 +++++++++++-- net/sched/cls_api.c | 255 ++++----------------- 10 files changed, 497 insertions(+), 281 deletions(-) -- 1.8.3.1