From d56ec7946579adec9fcae9bb896878462ce4c92d Mon Sep 17 00:00:00 2001 From: Dave Jones Date: Wed, 3 Apr 2002 07:26:52 -0500 Subject: [PATCH] jiffies wrap fixes for net drivers atp, yam, and sb1000. --- drivers/net/atp.c | 2 +- drivers/net/hamradio/yam.c | 3 ++- drivers/net/sb1000.c | 6 +++--- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/net/atp.c b/drivers/net/atp.c index 5a31cfe28fd9..c3904af3bbe3 100644 --- a/drivers/net/atp.c +++ b/drivers/net/atp.c @@ -667,7 +667,7 @@ static void atp_interrupt(int irq, void *dev_instance, struct pt_regs * regs) } num_tx_since_rx++; } else if (num_tx_since_rx > 8 - && jiffies > dev->last_rx + HZ) { + && time_after(jiffies, dev->last_rx + HZ)) { if (net_debug > 2) printk(KERN_DEBUG "%s: Missed packet? No Rx after %d Tx and " "%ld jiffies status %02x CMR1 %02x.\n", dev->name, diff --git a/drivers/net/hamradio/yam.c b/drivers/net/hamradio/yam.c index 7e175b3a5138..d74a43f3ce20 100644 --- a/drivers/net/hamradio/yam.c +++ b/drivers/net/hamradio/yam.c @@ -308,7 +308,8 @@ static const unsigned char chktabh[256] = static void delay(int ms) { unsigned long timeout = jiffies + ((ms * HZ) / 1000); - while (jiffies < timeout); + while (time_before(jiffies, timeout)) + cpu_relax(); } /* diff --git a/drivers/net/sb1000.c b/drivers/net/sb1000.c index a044d72c70cc..184b2a4c2aae 100644 --- a/drivers/net/sb1000.c +++ b/drivers/net/sb1000.c @@ -405,7 +405,7 @@ sb1000_wait_for_ready(const int ioaddr[], const char* name) } timeout = jiffies + Sb1000TimeOutJiffies; while (!(inb(ioaddr[1] + 6) & 0x40)) { - if (jiffies >= timeout) { + if (time_after_eq(jiffies, timeout)) { printk(KERN_WARNING "%s: sb1000_wait_for_ready timeout\n", name); return -ETIME; @@ -423,7 +423,7 @@ sb1000_wait_for_ready_clear(const int ioaddr[], const char* name) timeout = jiffies + Sb1000TimeOutJiffies; while (inb(ioaddr[1] + 6) & 0x80) { - if (jiffies >= timeout) { + if (time_after_eq(jiffies, timeout)) { printk(KERN_WARNING "%s: sb1000_wait_for_ready_clear timeout\n", name); return -ETIME; @@ -431,7 +431,7 @@ sb1000_wait_for_ready_clear(const int ioaddr[], const char* name) } timeout = jiffies + Sb1000TimeOutJiffies; while (inb(ioaddr[1] + 6) & 0x40) { - if (jiffies >= timeout) { + if (time_after_eq(jiffies, timeout)) { printk(KERN_WARNING "%s: sb1000_wait_for_ready_clear timeout\n", name); return -ETIME; -- 2.39.5