From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xin Long Subject: [PATCH net-next 0/5] net: improve the process of redirect and toobig for ipv6 tunnels Date: Sat, 11 Nov 2017 19:06:48 +0800 Message-ID: Cc: davem@davemloft.net, Yasuyuki Kozakai , Dmitry Kozlov To: network dev Return-path: Received: from mail-pg0-f68.google.com ([74.125.83.68]:47606 "EHLO mail-pg0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751069AbdKKLHD (ORCPT ); Sat, 11 Nov 2017 06:07:03 -0500 Received: by mail-pg0-f68.google.com with SMTP id o7so9300400pgc.4 for ; Sat, 11 Nov 2017 03:07:02 -0800 (PST) Sender: netdev-owner@vger.kernel.org List-ID: Now let's say there are 3 kinds of icmp packets to process for tunnels, toobig(needfrag), redirect, others, their process should be: - toobig(needfrag) update the lower dst's pmtu by route cache, also update sk dst's pmtu if possible, or it will be fine if sk dst pmtu will get updated on tx path. - redirect update the lower dst's gw by route cache and return, no need to send this redirect packet to user sk. - others send the packet to user's sk, or it will also be fine to use err_count to count it and report fail link on tx path. All ipv4 tunnels basically follow this while some of ipv6 tunnels are doing in different ways, like ip6gre and ip6_tunnels update tnl dev's mtu instead of updating lower dst pmtu, no redirect process on their err_handlers, which doesn't make any sense and even causes performance problems. This patchset is to improve the process of redirect and toobig for ip6gre ip4ip6, ip6ip6 tunnels, as in ipv4 tunnels. Xin Long (5): ip6_gre: add the process for redirect in ip6gre_err ip6_gre: process toobig in a better way ip6_tunnel: add the process for redirect in ip6_tnl_err ip6_tunnel: process toobig in a better way ip6_tunnel: clean up ip4ip6 and ip6ip6's err_handlers net/ipv6/ip6_gre.c | 20 ++++++---------- net/ipv6/ip6_tunnel.c | 64 ++++++++++++++++++++++----------------------------- 2 files changed, 34 insertions(+), 50 deletions(-) -- 2.1.0