public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: William Lee Irwin III <wli@holomorphy.com>
To: Linus Torvalds <torvalds@transmeta.com>,
	Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Linux v2.5.48
Date: Sun, 17 Nov 2002 23:19:46 -0800	[thread overview]
Message-ID: <20021118071946.GH23425@holomorphy.com> (raw)
In-Reply-To: <20021118065705.GG11776@holomorphy.com>

On Sun, Nov 17, 2002 at 10:57:05PM -0800, William Lee Irwin III wrote:
> This oopses on NUMA-Q sometime prior to TSC synch and then hangs in TSC
> synch because not all cpus are responding where 2.5.47-mm3 (which
> included some intermediate bk stuff) did not. This is because AP's are
> taking timer interrupts before they are prepared to do so. Please apply
> the following patch from Martin Bligh which resolves this issue:

Actually, please apply this one instead. The prior patch did not
re-enable interrupts appropriately in its return paths (pointed out
by Andrew Morton):


diff -urpN linux-2.5.48/arch/i386/kernel/smpboot.c numaq-2.5.48/arch/i386/kernel/smpboot.c
--- linux-2.5.48/arch/i386/kernel/smpboot.c	2002-11-17 20:29:45.000000000 -0800
+++ numaq-2.5.48/arch/i386/kernel/smpboot.c	2002-11-17 22:35:05.000000000 -0800
@@ -419,6 +419,7 @@ void __init smp_callin(void)
  	smp_store_cpu_info(cpuid);
 
 	disable_APIC_timer();
+	local_irq_disable();
 	/*
 	 * Allow the master to continue.
 	 */
@@ -1179,13 +1180,18 @@ void __init smp_prepare_cpus(unsigned in
 int __devinit __cpu_up(unsigned int cpu)
 {
 	/* This only works at boot for x86.  See "rewrite" above. */
-	if (test_bit(cpu, &smp_commenced_mask))
+	if (test_bit(cpu, &smp_commenced_mask)) {
+		local_irq_enable();
 		return -ENOSYS;
+	}
 
 	/* In case one didn't come up */
-	if (!test_bit(cpu, &cpu_callin_map))
+	if (!test_bit(cpu, &cpu_callin_map)) {
+		local_irq_enable();
 		return -EIO;
+	}
 
+	local_irq_enable();
 	/* Unleash the CPU! */
 	set_bit(cpu, &smp_commenced_mask);
 	while (!test_bit(cpu, &cpu_online_map))

  reply	other threads:[~2002-11-18  7:15 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-18  4:41 Linux v2.5.48 Linus Torvalds
2002-11-18  6:32 ` modutils url for: " bert hubert
2002-11-18  6:57 ` William Lee Irwin III
2002-11-18  7:19   ` William Lee Irwin III [this message]
2002-11-18  7:47   ` Martin J. Bligh
2002-11-18  7:55     ` William Lee Irwin III
2002-11-18  9:08 ` Gabor Z. Papp
2002-11-18 12:37 ` Adrian Bunk
2002-11-18 18:33 ` Udo A. Steinberg
2002-11-19  5:13   ` Linus Torvalds
2002-11-19 11:20 ` modutils url for: " Allan Duncan
2002-11-26 23:15 ` Adrian Bunk
2002-11-26 23:49   ` Randy.Dunlap
2002-11-27  0:42     ` kuznet
2002-11-27  0:53     ` Adrian Bunk
  -- strict thread matches above, loose matches on Subject: below --
2002-11-18 18:30 Manfred Spraul
2002-11-18 18:59 ` Linus Torvalds
2002-11-18 19:09   ` Manfred Spraul
2002-11-18 19:14     ` Linus Torvalds
2002-11-18 20:57 ` William Lee Irwin III
2002-11-18 21:28   ` Manfred Spraul
     [not found] <Pine.LNX.4.33L2.0211261547450.2873-100000@dragon.pdx.osdl.net.suse.lists.linux.kernel>
     [not found] ` <200211270042.DAA19185@sex.inr.ac.ru.suse.lists.linux.kernel>
2002-11-27  4:57   ` Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20021118071946.GH23425@holomorphy.com \
    --to=wli@holomorphy.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox