diff options
| author | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
| commit | 1ac731c529cd4d6adbce134754b51ff7d822b145 (patch) | |
| tree | 143ab3f35ca5f3b69f583c84e6964b17139c2ec1 /drivers/net/geneve.c | |
| parent | 07b4c950f27bef0362dc6ad7ee713aab61d58149 (diff) | |
| parent | 54116d442e001e1b6bd482122043b1870998a1f3 (diff) | |
Merge branch 'next' into for-linus
Prepare input updates for 6.6 merge window.
Diffstat (limited to 'drivers/net/geneve.c')
| -rw-r--r-- | drivers/net/geneve.c | 11 | 
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c index 89ff7f8e8c7e..78f9d588f712 100644 --- a/drivers/net/geneve.c +++ b/drivers/net/geneve.c @@ -365,13 +365,6 @@ static int geneve_udp_encap_recv(struct sock *sk, struct sk_buff *skb)  	if (unlikely(geneveh->ver != GENEVE_VER))  		goto drop; -	inner_proto = geneveh->proto_type; - -	if (unlikely((inner_proto != htons(ETH_P_TEB) && -		      inner_proto != htons(ETH_P_IP) && -		      inner_proto != htons(ETH_P_IPV6)))) -		goto drop; -  	gs = rcu_dereference_sk_user_data(sk);  	if (!gs)  		goto drop; @@ -380,6 +373,8 @@ static int geneve_udp_encap_recv(struct sock *sk, struct sk_buff *skb)  	if (!geneve)  		goto drop; +	inner_proto = geneveh->proto_type; +  	if (unlikely((!geneve->cfg.inner_proto_inherit &&  		      inner_proto != htons(ETH_P_TEB)))) {  		geneve->dev->stats.rx_dropped++; @@ -1426,7 +1421,7 @@ static int geneve_configure(struct net *net, struct net_device *dev,  		dev->type = ARPHRD_NONE;  		dev->hard_header_len = 0;  		dev->addr_len = 0; -		dev->flags = IFF_NOARP; +		dev->flags = IFF_POINTOPOINT | IFF_NOARP;  	}  	err = register_netdevice(dev);  |