af_decnet: Use time_after_eq
authorHimangi Saraogi <himangi774@gmail.com>
Wed, 20 Aug 2014 17:54:40 +0000 (23:24 +0530)
committerDavid S. Miller <davem@davemloft.net>
Fri, 22 Aug 2014 19:23:11 +0000 (12:23 -0700)
The functions time_before, time_before_eq, time_after, and time_after_eq
are more robust for comparing jiffies against other values.

A simplified version of the Coccinelle semantic patch making this change
is as follows:

@change@
expression E1,E2,E3;
@@
- jiffies - E1 >= (E2*E3)
+ time_after_eq(jiffies, E1+E2*E3)

Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/decnet/af_decnet.c

index ae011b46c0710fc96204deda6bddb1d912d78f22..25733d53814763c85e49a612df3bbcdb202992d6 100644 (file)
@@ -127,6 +127,7 @@ Version 0.0.6    2.1.110   07-aug-98   Eduardo Marcelo Serrat
 #include <linux/stat.h>
 #include <linux/init.h>
 #include <linux/poll.h>
+#include <linux/jiffies.h>
 #include <net/net_namespace.h>
 #include <net/neighbour.h>
 #include <net/dst.h>
@@ -598,7 +599,7 @@ int dn_destroy_timer(struct sock *sk)
        if (sk->sk_socket)
                return 0;
 
-       if ((jiffies - scp->stamp) >= (HZ * decnet_time_wait)) {
+       if (time_after_eq(jiffies, scp->stamp + HZ * decnet_time_wait)) {
                dn_unhash_sock(sk);
                sock_put(sk);
                return 1;