Replace the master ethernet device by the dsa slave port. Packets coming
in from the software ingress path use the dsa slave port as input
device.

Signed-off-by: Pablo Neira Ayuso <pa...@netfilter.org>
---
v2: no changes.

 net/netfilter/nft_flow_offload.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/net/netfilter/nft_flow_offload.c b/net/netfilter/nft_flow_offload.c
index 81a5e2b6c901..143d049fd7f1 100644
--- a/net/netfilter/nft_flow_offload.c
+++ b/net/netfilter/nft_flow_offload.c
@@ -89,6 +89,7 @@ static void nft_dev_path_info(const struct 
net_device_path_stack *stack,
                path = &stack->path[i];
                switch (path->type) {
                case DEV_PATH_ETHERNET:
+               case DEV_PATH_DSA:
                case DEV_PATH_VLAN:
                case DEV_PATH_PPPOE:
                        info->indev = path->dev;
@@ -97,6 +98,10 @@ static void nft_dev_path_info(const struct 
net_device_path_stack *stack,
 
                        if (path->type == DEV_PATH_ETHERNET)
                                break;
+                       if (path->type == DEV_PATH_DSA) {
+                               i = stack->num_paths;
+                               break;
+                       }
 
                        /* DEV_PATH_VLAN and DEV_PATH_PPPOE */
                        if (info->num_encaps >= NF_FLOW_TABLE_ENCAP_MAX) {
-- 
2.20.1

Reply via email to