aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulia Lawall <julia@diku.dk>2008-01-30 07:32:19 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:32:19 -0500
commit1d16b53e387b255d8e30f00594220b23b1290e6b (patch)
tree602de196943f3d555d46fef7ef75e251652dc519
parent4f2479f03c06e29d7d9e1e02191f8b5ba8ad4eef (diff)
arch/x86/kernel/io_apic_{64,32}.c: use time_before
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: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/kernel/io_apic_32.c5
-rw-r--r--arch/x86/kernel/io_apic_64.c3
2 files changed, 5 insertions, 3 deletions
diff --git a/arch/x86/kernel/io_apic_32.c b/arch/x86/kernel/io_apic_32.c
index 0d204237489e..4ca548632c8d 100644
--- a/arch/x86/kernel/io_apic_32.c
+++ b/arch/x86/kernel/io_apic_32.c
@@ -35,6 +35,7 @@
35#include <linux/htirq.h> 35#include <linux/htirq.h>
36#include <linux/freezer.h> 36#include <linux/freezer.h>
37#include <linux/kthread.h> 37#include <linux/kthread.h>
38#include <linux/jiffies.h> /* time_after() */
38 39
39#include <asm/io.h> 40#include <asm/io.h>
40#include <asm/smp.h> 41#include <asm/smp.h>
@@ -349,7 +350,7 @@ static void set_ioapic_affinity_irq(unsigned int irq, cpumask_t cpumask)
349# include <asm/processor.h> /* kernel_thread() */ 350# include <asm/processor.h> /* kernel_thread() */
350# include <linux/kernel_stat.h> /* kstat */ 351# include <linux/kernel_stat.h> /* kstat */
351# include <linux/slab.h> /* kmalloc() */ 352# include <linux/slab.h> /* kmalloc() */
352# include <linux/timer.h> /* time_after() */ 353# include <linux/timer.h>
353 354
354#define IRQBALANCE_CHECK_ARCH -999 355#define IRQBALANCE_CHECK_ARCH -999
355#define MAX_BALANCED_IRQ_INTERVAL (5*HZ) 356#define MAX_BALANCED_IRQ_INTERVAL (5*HZ)
@@ -1898,7 +1899,7 @@ static int __init timer_irq_works(void)
1898 * might have cached one ExtINT interrupt. Finally, at 1899 * might have cached one ExtINT interrupt. Finally, at
1899 * least one tick may be lost due to delays. 1900 * least one tick may be lost due to delays.
1900 */ 1901 */
1901 if (jiffies - t1 > 4) 1902 if (time_after(jiffies, t1 + 4))
1902 return 1; 1903 return 1;
1903 1904
1904 return 0; 1905 return 0;
diff --git a/arch/x86/kernel/io_apic_64.c b/arch/x86/kernel/io_apic_64.c
index f914d84a21da..1627c0d53e0b 100644
--- a/arch/x86/kernel/io_apic_64.c
+++ b/arch/x86/kernel/io_apic_64.c
@@ -32,6 +32,7 @@
32#include <linux/msi.h> 32#include <linux/msi.h>
33#include <linux/htirq.h> 33#include <linux/htirq.h>
34#include <linux/dmar.h> 34#include <linux/dmar.h>
35#include <linux/jiffies.h>
35#ifdef CONFIG_ACPI 36#ifdef CONFIG_ACPI
36#include <acpi/acpi_bus.h> 37#include <acpi/acpi_bus.h>
37#endif 38#endif
@@ -1299,7 +1300,7 @@ static int __init timer_irq_works(void)
1299 */ 1300 */
1300 1301
1301 /* jiffies wrap? */ 1302 /* jiffies wrap? */
1302 if (jiffies - t1 > 4) 1303 if (time_after(jiffies, t1 + 4))
1303 return 1; 1304 return 1;
1304 return 0; 1305 return 0;
1305} 1306}