All of lore.kernel.org
 help / color / mirror / Atom feed
* NUMA-Q breakage 2/7 xquad_portio ioremap deadlock
@ 2002-07-12 22:39 William Lee Irwin III
  2002-07-12 22:58 ` Martin J. Bligh
  0 siblings, 1 reply; 3+ messages in thread
From: William Lee Irwin III @ 2002-07-12 22:39 UTC (permalink / raw)
  To: linux-kernel; +Cc: Martin.Bligh

The cpu_online_map stuff for hotplug cpu created a brand new bootstrap
ordering problem for NUMA-Q. The mmapped portio region needs to be
ioremapped early but ioremap attempts to do TLB shootdown, and
smp_call_function() (called by flush_tlb_all()) deadlocks when
cpu_online_map is uninitialized.

Workaround (due to Matt Dobson) below.



diff -Nur linux-2.5.23-vanilla/arch/i386/kernel/smp.c linux-2.5.23-patched/arch/i386/kernel/smp.c
--- linux-2.5.23-vanilla/arch/i386/kernel/smp.c	Tue Jun 18 19:11:47 2002
+++ linux-2.5.23-patched/arch/i386/kernel/smp.c	Mon Jul  8 14:52:32 2002
@@ -569,7 +569,7 @@
 	struct call_data_struct data;
 	int cpus = num_online_cpus()-1;
 
-	if (!cpus)
+	if (cpus <= 0)
 		return 0;
 
 	data.func = func;

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-07-12 23:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-07-12 22:39 NUMA-Q breakage 2/7 xquad_portio ioremap deadlock William Lee Irwin III
2002-07-12 22:58 ` Martin J. Bligh
2002-07-12 23:04   ` William Lee Irwin III

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.