public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Manfred Spraul <manfred@colorfullife.com>
To: William Lee Irwin III <wli@holomorphy.com>
Cc: torvalds@transmeta.com, "Martin J. Bligh" <mbligh@aracnet.com>,
	linux-kernel@vger.kernel.org
Subject: Re: Linux v2.5.48
Date: Mon, 18 Nov 2002 22:28:27 +0100	[thread overview]
Message-ID: <3DD95B7B.20400@colorfullife.com> (raw)
In-Reply-To: 20021118205712.GR11776@holomorphy.com

William Lee Irwin III wrote:

>On Mon, Nov 18, 2002 at 07:30:37PM +0100, Manfred Spraul wrote:
>  
>
>>__cpu_up is called in the context of the boot cpu, not in the context of 
>>the new cpu.
>>I think this patch should keep the interrupts disabled until after
>>smp_commenced is set. It's partially tested: bochs boots until all cpus
>>are up and then crashes.
>>I've tested the interrupt flag (pushfl;popfl), noone else enables them.
>>    
>>
>
>That's odd, this should (in theory) enable them:
>
>void __init setup_secondary_APIC_clock(void)
>{
>        local_irq_disable(); /* FIXME: Do we need this? --RR */
>        setup_APIC_timer(calibration_result);
>        local_irq_enable();
>}
>  
>

That's ok.

>
>> +
>> +	local_irq_enable();
>>  	setup_secondary_APIC_clock();
>> 
>
Irqs are enabled just before setup_secondary_APIC_clock();

SMP bootstrap for i386 is
init() [linux/init/main.c()]
-> smp_prepare_cpus()
    -> smp_boot_cpus() [arch/i386/kernel/smpboot.c]
        ->do_boot_cpu()
            -> kick the new cpu.
            new cpu: spinns on the smp_commenced_mask
***** start of critical area: new cpu must not get an irq
-> do_pre_smp_initcalls()
-> smp_init()
    ->cpu_up() [kernel/cpu.c]
        -> CPU_ONLINE_PREPARE notifier call
***** end of critical area: memory for new cpu initialized
        ->__cpu_up() [arch/i386/kernel/smpboot.c]
            -> set_bit(smp_commenced_mask);

--
    Manfred



  reply	other threads:[~2002-11-18 21:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-18 18:30 Linux v2.5.48 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 [this message]
     [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
  -- strict thread matches above, loose matches on Subject: below --
2002-11-18  4:41 Linus Torvalds
2002-11-18  6:57 ` William Lee Irwin III
2002-11-18  7:19   ` William Lee Irwin III
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-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

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=3DD95B7B.20400@colorfullife.com \
    --to=manfred@colorfullife.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mbligh@aracnet.com \
    --cc=torvalds@transmeta.com \
    --cc=wli@holomorphy.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