ipip: used time_before for comparing jiffies
authorWei Yongjun <yjwei@cn.fujitsu.com>
Wed, 25 Feb 2009 07:36:47 +0000 (23:36 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Feb 2009 07:36:47 +0000 (23:36 -0800)
The functions time_before is more robust for comparing
jiffies against other values.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ipip.c

index c49c4ecfb1541c06db42d3501f0938d3c85d66a6..9054139795af480757357dc626815296666f8919 100644 (file)
@@ -327,7 +327,7 @@ static int ipip_err(struct sk_buff *skb, u32 info)
        if (t->parms.iph.ttl == 0 && type == ICMP_TIME_EXCEEDED)
                goto out;
 
-       if (jiffies - t->err_time < IPTUNNEL_ERR_TIMEO)
+       if (time_before(jiffies, t->err_time + IPTUNNEL_ERR_TIMEO))
                t->err_count++;
        else
                t->err_count = 1;
@@ -466,7 +466,8 @@ static int ipip_tunnel_xmit(struct sk_buff *skb, struct net_device *dev)
        }
 
        if (tunnel->err_count > 0) {
-               if (jiffies - tunnel->err_time < IPTUNNEL_ERR_TIMEO) {
+               if (time_before(jiffies,
+                               tunnel->err_time + IPTUNNEL_ERR_TIMEO)) {
                        tunnel->err_count--;
                        dst_link_failure(skb);
                } else