aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/ip6_tunnel.c
diff options
context:
space:
mode:
authorYasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>2006-09-09 14:59:17 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-02-26 14:42:53 -0500
commit268920584b57d534a40503a8a3a47eff9e57fbf8 (patch)
tree8b98ced21e285f6d5a670bc98c918f4c96a66f93 /net/ipv6/ip6_tunnel.c
parent8c14b7ce22a7ddd9fe1b1c852c4015633ec3efec (diff)
[IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.
Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp> Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'net/ipv6/ip6_tunnel.c')
-rw-r--r--net/ipv6/ip6_tunnel.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
index 662edb82689..08d944223ec 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
@@ -727,11 +727,8 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev)
727 } 727 }
728 if (mtu < IPV6_MIN_MTU) 728 if (mtu < IPV6_MIN_MTU)
729 mtu = IPV6_MIN_MTU; 729 mtu = IPV6_MIN_MTU;
730 if (skb->dst && mtu < dst_mtu(skb->dst)) { 730 if (skb->dst)
731 struct rt6_info *rt = (struct rt6_info *) skb->dst; 731 skb->dst->ops->update_pmtu(skb->dst, mtu);
732 rt->rt6i_flags |= RTF_MODIFIED;
733 rt->u.dst.metrics[RTAX_MTU-1] = mtu;
734 }
735 if (skb->len > mtu) { 732 if (skb->len > mtu) {
736 icmpv6_send(skb, ICMPV6_PKT_TOOBIG, 0, mtu, dev); 733 icmpv6_send(skb, ICMPV6_PKT_TOOBIG, 0, mtu, dev);
737 goto tx_err_dst_release; 734 goto tx_err_dst_release;