diff options
author | Brian Gerst <brgerst@gmail.com> | 2009-01-26 22:56:48 -0500 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-01-26 22:56:48 -0500 |
commit | 2697fbd5faf19c84c17441b1752bdcbdcfd1248c (patch) | |
tree | 70bdf58fba94bf9ff94b2b6372662da89add9723 /arch/x86/kernel/setup_percpu.c | |
parent | 1825b8edc2034c012ae48f797d74efd1bd9d4f72 (diff) |
x86: load new GDT after setting up boot cpu per-cpu area
Impact: sync 32 and 64-bit code
Merge load_gs_base() into switch_to_new_gdt(). Load the GDT and
per-cpu state for the boot cpu when its new area is set up.
Signed-off-by: Brian Gerst <brgerst@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'arch/x86/kernel/setup_percpu.c')
-rw-r--r-- | arch/x86/kernel/setup_percpu.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/setup_percpu.c b/arch/x86/kernel/setup_percpu.c index bcca3a7b3748..4caa78d7cb15 100644 --- a/arch/x86/kernel/setup_percpu.c +++ b/arch/x86/kernel/setup_percpu.c | |||
@@ -113,13 +113,13 @@ void __init setup_per_cpu_areas(void) | |||
113 | per_cpu(x86_cpu_to_node_map, cpu) = | 113 | per_cpu(x86_cpu_to_node_map, cpu) = |
114 | early_per_cpu_map(x86_cpu_to_node_map, cpu); | 114 | early_per_cpu_map(x86_cpu_to_node_map, cpu); |
115 | #endif | 115 | #endif |
116 | #endif | ||
116 | /* | 117 | /* |
117 | * Up to this point, the boot CPU has been using .data.init | 118 | * Up to this point, the boot CPU has been using .data.init |
118 | * area. Reload %gs offset for the boot CPU. | 119 | * area. Reload any changed state for the boot CPU. |
119 | */ | 120 | */ |
120 | if (cpu == boot_cpu_id) | 121 | if (cpu == boot_cpu_id) |
121 | load_gs_base(cpu); | 122 | switch_to_new_gdt(); |
122 | #endif | ||
123 | 123 | ||
124 | DBG("PERCPU: cpu %4d %p\n", cpu, ptr); | 124 | DBG("PERCPU: cpu %4d %p\n", cpu, ptr); |
125 | } | 125 | } |