diff options
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/ip_gre.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index 07a188afb3ac..e62510d5ea5a 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c | |||
@@ -491,7 +491,7 @@ static void ipgre_err(struct sk_buff *skb, u32 info) | |||
491 | if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) | 491 | if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED) |
492 | goto out; | 492 | goto out; |
493 | 493 | ||
494 | if (jiffies - t->err_time < IPTUNNEL_ERR_TIMEO) | 494 | if (time_before(jiffies, t->err_time + IPTUNNEL_ERR_TIMEO)) |
495 | t->err_count++; | 495 | t->err_count++; |
496 | else | 496 | else |
497 | t->err_count = 1; | 497 | t->err_count = 1; |
@@ -803,7 +803,8 @@ static int ipgre_tunnel_xmit(struct sk_buff *skb, struct net_device *dev) | |||
803 | #endif | 803 | #endif |
804 | 804 | ||
805 | if (tunnel->err_count > 0) { | 805 | if (tunnel->err_count > 0) { |
806 | if (jiffies - tunnel->err_time < IPTUNNEL_ERR_TIMEO) { | 806 | if (time_before(jiffies, |
807 | tunnel->err_time + IPTUNNEL_ERR_TIMEO)) { | ||
807 | tunnel->err_count--; | 808 | tunnel->err_count--; |
808 | 809 | ||
809 | dst_link_failure(skb); | 810 | dst_link_failure(skb); |