flow_offload: support CVLAN match
authorEdward Cree <ecree@solarflare.com>
Tue, 14 May 2019 20:18:12 +0000 (21:18 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 May 2019 19:02:42 +0000 (12:02 -0700)
Plumb it through from the flow_dissector.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/flow_offload.h
net/core/flow_offload.c

index 6200900434e17cc01b1768496a7341a0a4dacf65..a2df99f9b196cb0719dd82344d2abf751e777afc 100644 (file)
@@ -71,6 +71,8 @@ void flow_rule_match_eth_addrs(const struct flow_rule *rule,
                               struct flow_match_eth_addrs *out);
 void flow_rule_match_vlan(const struct flow_rule *rule,
                          struct flow_match_vlan *out);
+void flow_rule_match_cvlan(const struct flow_rule *rule,
+                          struct flow_match_vlan *out);
 void flow_rule_match_ipv4_addrs(const struct flow_rule *rule,
                                struct flow_match_ipv4_addrs *out);
 void flow_rule_match_ipv6_addrs(const struct flow_rule *rule,
index c3a00eac48048aad1098b6b5c8810225ecdccb99..5ce7d47a960eaf9bb2176b76b65852fa98ebfa20 100644 (file)
@@ -54,6 +54,13 @@ void flow_rule_match_vlan(const struct flow_rule *rule,
 }
 EXPORT_SYMBOL(flow_rule_match_vlan);
 
+void flow_rule_match_cvlan(const struct flow_rule *rule,
+                          struct flow_match_vlan *out)
+{
+       FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_CVLAN, out);
+}
+EXPORT_SYMBOL(flow_rule_match_cvlan);
+
 void flow_rule_match_ipv4_addrs(const struct flow_rule *rule,
                                struct flow_match_ipv4_addrs *out)
 {