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.126 / U:0.376 seconds]
©2003-2014 Jasper Spaans. Advertise on this site