Re: [PATCH net-next v11 5/6] openvswitch: add layer 3 flow/port support
From: Jiri Benc <hidden>
Date: 2016-07-21 15:39:51
On Mon, 18 Jul 2016 13:50:27 +0900, Simon Horman wrote:
quoted hunk
On Fri, Jul 15, 2016 at 02:07:37PM -0700, pravin shelar wrote:quoted
I think we should send L2 header with l2 header pushed on skb. This is what OVS expect. The skb-push should be done for all l2 packets rather than for particular type of device.The following seems to achieve that. Jiri, what do you think?diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index a20248355da0..edbc10690b60 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c@@ -281,10 +281,9 @@ static int __ipgre_rcv(struct sk_buff *skb, const struct tnl_ptk_info *tpi, raw_proto, false) < 0) goto drop; - if (tunnel->dev->type != ARPHRD_NONE) + if (tunnel->dev->type != ARPHRD_NONE || + tpi->proto == htons(ETH_P_TEB)) skb_pop_mac_header(skb);
This is wrong. The MAC header for ARPHRD_NONE interfaces is null, that's the meaning of ARPHRD_NONE. mac_header cannot point to the outer IP header. That would be ARPHRD_IPGRE. Jiri _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev