summaryrefslogtreecommitdiffstats
path: root/drivers/atm/iphase.c
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2008-04-19 18:14:50 -0700
committerDavid S. Miller <davem@davemloft.net>2008-04-19 18:14:50 -0700
commit420635f517cf1bb8929caf80ce5a30e827b9df42 (patch)
treeb3f86da101667298daac15772814360d632d5c2a /drivers/atm/iphase.c
parenta8827113abb5bd1506d9be78115950d213d9a071 (diff)
downloadlinux-stable-420635f517cf1bb8929caf80ce5a30e827b9df42.tar.gz
linux-stable-420635f517cf1bb8929caf80ce5a30e827b9df42.tar.bz2
linux-stable-420635f517cf1bb8929caf80ce5a30e827b9df42.zip
drivers/atm: use time_before, time_before_eq, etc
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 semantic patch making this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @ change_compare_np @ expression E; @@ ( - jiffies <= E + time_before_eq(jiffies,E) | - jiffies >= E + time_after_eq(jiffies,E) | - jiffies < E + time_before(jiffies,E) | - jiffies > E + time_after(jiffies,E) ) @ include depends on change_compare_np @ @@ #include <linux/jiffies.h> @ no_include depends on !include && change_compare_np @ @@ #include <linux/...> + #include <linux/jiffies.h> // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/atm/iphase.c')
-rw-r--r--drivers/atm/iphase.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/atm/iphase.c b/drivers/atm/iphase.c
index 670c093ed25f..5c28ca7380ff 100644
--- a/drivers/atm/iphase.c
+++ b/drivers/atm/iphase.c
@@ -60,7 +60,8 @@
#include <asm/uaccess.h>
#include <asm/string.h>
#include <asm/byteorder.h>
-#include <linux/vmalloc.h>
+#include <linux/vmalloc.h>
+#include <linux/jiffies.h>
#include "iphase.h"
#include "suni.h"
#define swap(x) (((x & 0xff) << 8) | ((x & 0xff00) >> 8))
@@ -189,7 +190,7 @@ static u16 get_desc (IADEV *dev, struct ia_vcc *iavcc) {
int ltimeout;
ia_hack_tcq (dev);
- if(((jiffies - timer)>50)||((dev->ffL.tcq_rd==dev->host_tcq_wr))){
+ if((time_after(jiffies,timer+50)) || ((dev->ffL.tcq_rd==dev->host_tcq_wr))) {
timer = jiffies;
i=0;
while (i < dev->num_tx_desc) {
@@ -1225,7 +1226,7 @@ static void rx_intr(struct atm_dev *dev)
iadev->rx_tmp_jif = jiffies;
iadev->rxing = 0;
}
- else if (((jiffies - iadev->rx_tmp_jif) > 50) &&
+ else if ((time_after(jiffies, iadev->rx_tmp_jif + 50)) &&
((iadev->rx_pkt_cnt - iadev->rx_tmp_cnt) == 0)) {
for (i = 1; i <= iadev->num_rx_desc; i++)
free_desc(dev, i);