lkml.org 
[lkml]   [2006]   [Sep]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] i386-pda: Initialize the PDA early, before any C code runs.

    * Jeremy Fitzhardinge <jeremy@goop.org> wrote:

    > Jeremy Fitzhardinge wrote:
    > >Not sure, but I think this replicates the behaviour of the original
    > >code (ie, INIT_THREAD_INFO initializes cpu to 0, so smp_processor_id
    > >will return 0). Hm, Voyager will probably need a little patch to
    > >update the the PDA cpu_number properly in smp_setup_processor_id().
    >
    > Something like this, perhaps:
    >
    > Subject: set the boot CPU number in the boot_pda
    >
    > Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>

    > +++ b/arch/i386/mach-voyager/voyager_smp.c Mon Sep 11 16:34:09 2006

    > smp_setup_processor_id(void)
    > {
    > current_thread_info()->cpu = hard_smp_processor_id();
    > -}
    > + write_pda(cpu_number, hard_smp_processor_id());
    > +}

    yeah. On all other x86 SMP platforms we use the logical APIC ID 0 for
    the boot CPU. (the physical ID might be different, but that doesnt
    matter)

    NOTE: you'll also need to patch smp_voyager.c:find_smp_config(), where
    it sets current_thread_info()->cpu to boot_cpu_id.

    Ingo
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-09-12 19:19    [W:0.021 / U:90.380 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site