Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1668150

[PATCH v2 2/2] ip6_tunnel: fix ip6 tunnel lookup in collect_md mode

Path csiph.com!news.redatomik.org!news.albasani.net!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
Newsgroups linux.kernel
Subject [PATCH v2 2/2] ip6_tunnel: fix ip6 tunnel lookup in collect_md mode
Date Sat, 17 Jun 2017 05:30:01 +0200
Message-ID <tTcAV-18w-7@gated-at.bofh.it> (permalink)
References <tTcAV-18w-5@gated-at.bofh.it>
X-Original-To "David S. Miller" <davem@davemloft.net>, Paolo Abeni <pabeni@redhat.com>, Alexei Starovoitov <ast@fb.com>
X-Rm-Transid 2ee35944a19a53f-0855c
X-Rm-Spam-Flag 00000000
X-Rm-Transid 2ee95944a19b55a-1ad62
X-Mailer git-send-email 1.8.3.1
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 30
Organization linux.* mail to news gateway
X-Original-Cc netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
X-Original-Date Sat, 17 Jun 2017 11:27:11 +0800
X-Original-Message-ID <1497670031-2971-2-git-send-email-yanhaishuang@cmss.chinamobile.com>
X-Original-References <1497670031-2971-1-git-send-email-yanhaishuang@cmss.chinamobile.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1668150

Show key headers only | View raw


In collect_md mode, if the tun dev is down, it still can call
__ip6_tnl_rcv to receive on packets, and the rx statistics increase
improperly.

Fixes: 8d79266bc48c ("ip6_tunnel: add collect_md mode to IPv6 tunnels")
Cc: Alexei Starovoitov <ast@fb.com>
Signed-off-by: Haishuang Yan <yanhaishuang@cmss.chinamobile.com>

---
Change since v2:
  * Fix wrong recipient address
---
 net/ipv6/ip6_tunnel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
index 6400726..25961c7 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -171,7 +171,7 @@ static struct net_device_stats *ip6_get_stats(struct net_device *dev)
 	}
 
 	t = rcu_dereference(ip6n->collect_md_tun);
-	if (t)
+	if (t && (t->dev->flags & IFF_UP))
 		return t;
 
 	t = rcu_dereference(ip6n->tnls_wc[0]);
-- 
1.8.3.1

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 1/2] ip_tunnel: fix ip tunnel lookup in collect_md mode Haishuang Yan <yanhaishuang@cmss.chinamobile.com> - 2017-06-17 05:30 +0200
  [PATCH v2 2/2] ip6_tunnel: fix ip6 tunnel lookup in collect_md mode Haishuang Yan <yanhaishuang@cmss.chinamobile.com> - 2017-06-17 05:30 +0200
  Re: [PATCH v2 1/2] ip_tunnel: fix ip tunnel lookup in collect_md mode Pravin Shelar <pshelar@ovn.org> - 2017-06-19 07:50 +0200
    Re: [PATCH v2 1/2] ip_tunnel: fix ip tunnel lookup in collect_md mode 严海双 <yanhaishuang@cmss.chinamobile.com> - 2017-06-19 15:20 +0200
      Re: [PATCH v2 1/2] ip_tunnel: fix ip tunnel lookup in collect_md mode Pravin Shelar <pshelar@ovn.org> - 2017-06-19 20:10 +0200

csiph-web