[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190513125400.GB22355@mellanox.com>
Date: Mon, 13 May 2019 12:54:37 +0000
From: Jianbo Liu <jianbol@...lanox.com>
To: Edward Cree <ecree@...arflare.com>
CC: Jamal Hadi Salim <jhs@...atatu.com>, Jiri Pirko <jiri@...nulli.us>,
Pablo Neira Ayuso <pablo@...filter.org>,
David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Cong Wang <xiyou.wangcong@...il.com>,
Andy Gospodarek <andy@...yhouse.net>,
Anjali Singhai Jain <anjali.singhai@...el.com>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Or Gerlitz <gerlitz.or@...il.com>
Subject: Re: [RFC PATCH net-next 3/3] flow_offload: support CVLAN match
The 05/03/2019 16:08, Edward Cree wrote:
> Plumb it through from the flow_dissector.
>
> Signed-off-by: Edward Cree <ecree@...arflare.com>
> ---
> include/net/flow_offload.h | 2 ++
> net/core/flow_offload.c | 7 +++++++
> 2 files changed, 9 insertions(+)
>
> diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
> index 6f59cdaf6eb6..48847ee7aa3a 100644
> --- a/include/net/flow_offload.h
> +++ b/include/net/flow_offload.h
> @@ -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,
> diff --git a/net/core/flow_offload.c b/net/core/flow_offload.c
> index c3a00eac4804..5ce7d47a960e 100644
> --- a/net/core/flow_offload.c
> +++ b/net/core/flow_offload.c
> @@ -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)
> {
Could you please push to 5.1 and 5.0-stable? The original patch brought a bug
in mlx5_core driver. Need your patch to fix.
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
@@ -1615,7 +1615,7 @@ static int __parse_cls_flower(struct mlx5e_priv *priv,
if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CVLAN)) {
struct flow_match_vlan match;
- flow_rule_match_vlan(rule, &match);
+ flow_rule_match_cvlan(rule, &match);
if (match.mask->vlan_id ||
match.mask->vlan_priority ||
match.mask->vlan_tpid) {
Thanks!
Powered by blists - more mailing lists