[patch 11/11] show_interrupts: prevent cpu hotplug when walking cpu_online_map.

From: Martin Schwidefsky
Date: Thu May 15 2008 - 11:06:57 EST


From: Heiko Carstens <heiko.carstens@xxxxxxxxxx>

Surround all the code withing show_interrupts() with
get/put_online_cpus() to prevent strange results wrt cpu hotplug.

Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
---

arch/s390/kernel/irq.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Index: quilt-2.6/arch/s390/kernel/irq.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/irq.c
+++ quilt-2.6/arch/s390/kernel/irq.c
@@ -25,6 +25,7 @@ int show_interrupts(struct seq_file *p,
static const char *intrclass_names[] = { "EXT", "I/O", };
int i = *(loff_t *) v, j;

+ get_online_cpus();
if (i == 0) {
seq_puts(p, " ");
for_each_online_cpu(j)
@@ -43,7 +44,7 @@ int show_interrupts(struct seq_file *p,
seq_putc(p, '\n');

}
-
+ put_online_cpus();
return 0;
}


--
blue skies,
Martin.

"Reality continues to ruin my life." - Calvin.

--
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/