public inbox for linux-kernel@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox