kernel_optimize_test/arch/i386/mach-voyager
Jeremy Fitzhardinge 6211119580 [PATCH] i386: Initialize the per-CPU data area
When a CPU is brought up, a PDA and GDT are allocated for it.  The GDT's
__KERNEL_PDA entry is pointed to the allocated PDA memory, so that all
references using this segment descriptor will refer to the PDA.

This patch rearranges CPU initialization a bit, so that the GDT/PDA are set up
as early as possible in cpu_init().  Also for secondary CPUs, GDT+PDA are
preallocated and initialized so all the secondary CPU needs to do is set up
the ldt and load %gs.  This will be important once smp_processor_id() and
current use the PDA.

In all cases, the PDA is set up in head.S, before a CPU starts running C code,
so the PDA is always available.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Cc: Chuck Ebbert <76306.1226@compuserve.com>
Cc: Zachary Amsden <zach@vmware.com>
Cc: Jan Beulich <jbeulich@novell.com>
Cc: Andi Kleen <ak@suse.de>
Cc: James Bottomley <James.Bottomley@SteelEye.com>
Cc: Matt Tolentino <matthew.e.tolentino@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
2006-12-07 02:14:02 +01:00
..
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.c [PATCH] irq-flags: i386: Use the new IRQF_ constants 2006-07-02 13:58:47 -07:00
voyager_basic.c [VOYAGER] fix up ptregs removal mess 2006-10-12 22:25:03 -05:00
voyager_cat.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
voyager_smp.c [PATCH] i386: Initialize the per-CPU data area 2006-12-07 02:14:02 +01:00
voyager_thread.c [PATCH] Voyager: tty locking 2006-09-26 08:48:56 -07:00