diff options
author | Gao feng <gaofeng@cn.fujitsu.com> | 2011-10-19 11:34:09 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-10-24 18:30:07 -0400 |
commit | 59445b6b1f90b97c4e28062b96306bacfa4fb170 (patch) | |
tree | 61408e20f1e56c98a5b377ae02079dc5c229af00 /net/ipv4/route.c | |
parent | 1805b2f04855f07afe3a71d620a68f483b0ed74f (diff) |
ipv4: avoid useless call of the function check_peer_pmtu
In func ipv4_dst_check,check_peer_pmtu should be called only when peer is updated.
So,if the peer is not updated in ip_rt_frag_needed,we can not inc __rt_peer_genid.
Signed-off-by: Gao feng <gaofeng@cn.fujitsu.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/route.c')
-rw-r--r-- | net/ipv4/route.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 1082460daca7..155138d8ec8b 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c | |||
@@ -1593,11 +1593,10 @@ unsigned short ip_rt_frag_needed(struct net *net, const struct iphdr *iph, | |||
1593 | est_mtu = mtu; | 1593 | est_mtu = mtu; |
1594 | peer->pmtu_learned = mtu; | 1594 | peer->pmtu_learned = mtu; |
1595 | peer->pmtu_expires = pmtu_expires; | 1595 | peer->pmtu_expires = pmtu_expires; |
1596 | atomic_inc(&__rt_peer_genid); | ||
1596 | } | 1597 | } |
1597 | 1598 | ||
1598 | inet_putpeer(peer); | 1599 | inet_putpeer(peer); |
1599 | |||
1600 | atomic_inc(&__rt_peer_genid); | ||
1601 | } | 1600 | } |
1602 | return est_mtu ? : new_mtu; | 1601 | return est_mtu ? : new_mtu; |
1603 | } | 1602 | } |