net: improve the process of redirect and toobig for ipv6 tunnels
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest5 patches 1 replyIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/5 | ip6_gre: add the process for redirect in ip6gre_errnet/ | +5 | 0 replies | |
| 2/5 | ip6_gre: process toobig in a better waynet/ | +2 | 0 replies | |
| 3/5 | ip6_tunnel: add the process for redirect in ip6_tnl_errnet/ | +10 | 0 replies | |
| 4/5 | ip6_tunnel: process toobig in a better waynet/ | +3 | 0 replies | |
| 5/5 | ip6_tunnel: clean up ip4ip6 and ip6ip6's err_handlersnet/ | +14 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH net-next 0/5] net: improve the process of redirect and toobig for ipv6 tunnels
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(-)
Signature · 1 line
2.1.0