• Rusty Russell's avatar
    [PATCH] i386: Use per-cpu GDT immediately upon boot · bf504672
    Rusty Russell authored
    Now we are no longer dynamically allocating the GDT, we don't need the
    "cpu_gdt_table" at all: we can switch straight from "boot_gdt_table" to the
    per-cpu GDT.  This means initializing the cpu_gdt array in C.
    
    The boot CPU uses the per-cpu var directly, then in smp_prepare_cpus() it
    switches to the per-cpu copy just allocated.  For secondary CPUs, the
    early_gdt_descr is set to point directly to their per-cpu copy.
    
    For UP the code is very simple: it keeps using the "per-cpu" GDT as per SMP,
    but we never have to move.
    Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: default avatarAndi Kleen <ak@suse.de>
    Cc: Andi Kleen <ak@suse.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    bf504672
voyager_smp.c 52.2 KB