To have the ability to handle xmit direct with outgoing encaps in the bridge fastpass bypass, we need to be able to handle them without going through vlan/pppoe devices. So I've applied, amended and squashed wenxu's patch-set. This patch also makes it possible to egress from vlan-filtering brlan to lan0 with vlan tagged packets, if the bridge master port is doing the vlan tagging, instead of a vlan-device, as seen in the figure below. Without this patch, this is currently not possible in the forward-fastpath. forward fastpath bypass .----------------------------------------. / \ | IP - forwarding | | / \ v | / wan ... | / | | | | | +-------------------------------+ | | untagged | | | to | | | vlan 1 | | | | | | brlan (vlan-filtering) | | +---------------+ | | | DSA-SWITCH | | | | | vlan 1 | | | | to | | | vlan 1 | untagged | | +---------------+---------------+ . / \ ------>lan0 wlan1 . . . . . ^ vlan 1 tagged packets Added patch to eliminate array of flexible structures warning. Added patch to clean up structures. Split from patch-set: bridge-fastpath and related improvements v9 Eric Woudstra (3): net: pppoe: avoid zero-length arrays in struct pppoe_hdr netfilter: nf_flow_table_offload: Add nf_flow_encap_push() for xmit direct netfilter: flow: remove hw_outdev, out.hw_ifindex and out.hw_ifidx drivers/net/ppp/pppoe.c | 2 +- include/net/netfilter/nf_flow_table.h | 2 - include/uapi/linux/if_pppox.h | 4 ++ net/netfilter/nf_flow_table_core.c | 1 - net/netfilter/nf_flow_table_ip.c | 96 ++++++++++++++++++++++++++- net/netfilter/nf_flow_table_offload.c | 2 +- net/netfilter/nft_flow_offload.c | 10 +-- 7 files changed, 102 insertions(+), 15 deletions(-) -- 2.47.1