[PATCH] i386, nmi: signed vs unsigned mixup

From: Jesper Juhl
Date: Sat Nov 19 2005 - 18:14:24 EST


In arch/i386/kernel/nmi.c::nmi_watchdog_tick(), the variable `sum' is
of type "int" but it's used to store the result of
per_cpu(irq_stat, cpu).apic_timer_irqs which is an "unsigned int", it's
also later compared to last_irq_sums[cpu] which is also an
"unsigned int", so `sum' really ought to be unsigned itself.
This small patch makes that change.


Signed-off-by: Jesper Juhl <jesper.juhl@xxxxxxxxx>
---

arch/i386/kernel/nmi.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)

--- linux-2.6.15-rc1-git7-orig/arch/i386/kernel/nmi.c 2005-11-12 18:07:14.000000000 +0100
+++ linux-2.6.15-rc1-git7/arch/i386/kernel/nmi.c 2005-11-19 23:58:17.000000000 +0100
@@ -528,9 +528,10 @@ void nmi_watchdog_tick (struct pt_regs *
* Since current_thread_info()-> is always on the stack, and we
* always switch the stack NMI-atomically, it's safe to use
* smp_processor_id().
*/
- int sum, cpu = smp_processor_id();
+ unsigned int sum;
+ int cpu = smp_processor_id();

sum = per_cpu(irq_stat, cpu).apic_timer_irqs;

if (last_irq_sums[cpu] == sum) {



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/