All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify
@ 2016-12-28 12:54 Paul Blakey
  2016-12-28 15:48 ` Jiri Pirko
  2016-12-28 19:29 ` David Miller
  0 siblings, 2 replies; 3+ messages in thread
From: Paul Blakey @ 2016-12-28 12:54 UTC (permalink / raw)
  To: David S. Miller, netdev
  Cc: Jiri Pirko, Hadar Hen Zion, Or Gerlitz, Roi Dayan, Paul Blakey

Since we now use a non zero mask on addr_type, we are matching on its
value (IPV4/IPV6). So before this fix, matching on enc_src_ip/enc_dst_ip
failed in SW/classify path since its value was zero.
This patch sets the proper value of addr_type for encapsulated packets.

Fixes: 970bfcd09791 ('net/sched: cls_flower: Use mask for addr_type')
Signed-off-by: Paul Blakey <paulb@mellanox.com>
Reviewed-by: Hadar Hen Zion <hadarh@mellanox.com>
---
 net/sched/cls_flower.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c
index 333f8e2..970db7a 100644
--- a/net/sched/cls_flower.c
+++ b/net/sched/cls_flower.c
@@ -153,10 +153,14 @@ static int fl_classify(struct sk_buff *skb, const struct tcf_proto *tp,
 
 		switch (ip_tunnel_info_af(info)) {
 		case AF_INET:
+			skb_key.enc_control.addr_type =
+				FLOW_DISSECTOR_KEY_IPV4_ADDRS;
 			skb_key.enc_ipv4.src = key->u.ipv4.src;
 			skb_key.enc_ipv4.dst = key->u.ipv4.dst;
 			break;
 		case AF_INET6:
+			skb_key.enc_control.addr_type =
+				FLOW_DISSECTOR_KEY_IPV6_ADDRS;
 			skb_key.enc_ipv6.src = key->u.ipv6.src;
 			skb_key.enc_ipv6.dst = key->u.ipv6.dst;
 			break;
-- 
1.8.3.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify
  2016-12-28 12:54 [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify Paul Blakey
@ 2016-12-28 15:48 ` Jiri Pirko
  2016-12-28 19:29 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: Jiri Pirko @ 2016-12-28 15:48 UTC (permalink / raw)
  To: Paul Blakey
  Cc: David S. Miller, netdev, Jiri Pirko, Hadar Hen Zion, Or Gerlitz,
	Roi Dayan

Wed, Dec 28, 2016 at 01:54:47PM CET, paulb@mellanox.com wrote:
>Since we now use a non zero mask on addr_type, we are matching on its
>value (IPV4/IPV6). So before this fix, matching on enc_src_ip/enc_dst_ip
>failed in SW/classify path since its value was zero.
>This patch sets the proper value of addr_type for encapsulated packets.
>
>Fixes: 970bfcd09791 ('net/sched: cls_flower: Use mask for addr_type')
>Signed-off-by: Paul Blakey <paulb@mellanox.com>
>Reviewed-by: Hadar Hen Zion <hadarh@mellanox.com>

Acked-by: Jiri Pirko <jiri@mellanox.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify
  2016-12-28 12:54 [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify Paul Blakey
  2016-12-28 15:48 ` Jiri Pirko
@ 2016-12-28 19:29 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2016-12-28 19:29 UTC (permalink / raw)
  To: paulb; +Cc: netdev, jiri, hadarh, ogerlitz, roid

From: Paul Blakey <paulb@mellanox.com>
Date: Wed, 28 Dec 2016 14:54:47 +0200

> Since we now use a non zero mask on addr_type, we are matching on its
> value (IPV4/IPV6). So before this fix, matching on enc_src_ip/enc_dst_ip
> failed in SW/classify path since its value was zero.
> This patch sets the proper value of addr_type for encapsulated packets.
> 
> Fixes: 970bfcd09791 ('net/sched: cls_flower: Use mask for addr_type')
> Signed-off-by: Paul Blakey <paulb@mellanox.com>
> Reviewed-by: Hadar Hen Zion <hadarh@mellanox.com>

Applied and queued up for -stable, thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-12-28 19:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-28 12:54 [PATCH net] net/sched: cls_flower: Fix missing addr_type in classify Paul Blakey
2016-12-28 15:48 ` Jiri Pirko
2016-12-28 19:29 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.