diff options
Diffstat (limited to 'include/asm-x86/processor.h')
-rw-r--r-- | include/asm-x86/processor.h | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/include/asm-x86/processor.h b/include/asm-x86/processor.h index 559105220a4..5f58da401b4 100644 --- a/include/asm-x86/processor.h +++ b/include/asm-x86/processor.h | |||
@@ -134,7 +134,7 @@ extern __u32 cleared_cpu_caps[NCAPINTS]; | |||
134 | #ifdef CONFIG_SMP | 134 | #ifdef CONFIG_SMP |
135 | DECLARE_PER_CPU(struct cpuinfo_x86, cpu_info); | 135 | DECLARE_PER_CPU(struct cpuinfo_x86, cpu_info); |
136 | #define cpu_data(cpu) per_cpu(cpu_info, cpu) | 136 | #define cpu_data(cpu) per_cpu(cpu_info, cpu) |
137 | #define current_cpu_data cpu_data(smp_processor_id()) | 137 | #define current_cpu_data __get_cpu_var(cpu_info) |
138 | #else | 138 | #else |
139 | #define cpu_data(cpu) boot_cpu_data | 139 | #define cpu_data(cpu) boot_cpu_data |
140 | #define current_cpu_data boot_cpu_data | 140 | #define current_cpu_data boot_cpu_data |
@@ -153,7 +153,7 @@ static inline int hlt_works(int cpu) | |||
153 | 153 | ||
154 | extern void cpu_detect(struct cpuinfo_x86 *c); | 154 | extern void cpu_detect(struct cpuinfo_x86 *c); |
155 | 155 | ||
156 | extern void identify_cpu(struct cpuinfo_x86 *); | 156 | extern void early_cpu_init(void); |
157 | extern void identify_boot_cpu(void); | 157 | extern void identify_boot_cpu(void); |
158 | extern void identify_secondary_cpu(struct cpuinfo_x86 *); | 158 | extern void identify_secondary_cpu(struct cpuinfo_x86 *); |
159 | extern void print_cpu_info(struct cpuinfo_x86 *); | 159 | extern void print_cpu_info(struct cpuinfo_x86 *); |
@@ -263,15 +263,11 @@ struct tss_struct { | |||
263 | struct thread_struct *io_bitmap_owner; | 263 | struct thread_struct *io_bitmap_owner; |
264 | 264 | ||
265 | /* | 265 | /* |
266 | * Pad the TSS to be cacheline-aligned (size is 0x100): | ||
267 | */ | ||
268 | unsigned long __cacheline_filler[35]; | ||
269 | /* | ||
270 | * .. and then another 0x100 bytes for the emergency kernel stack: | 266 | * .. and then another 0x100 bytes for the emergency kernel stack: |
271 | */ | 267 | */ |
272 | unsigned long stack[64]; | 268 | unsigned long stack[64]; |
273 | 269 | ||
274 | } __attribute__((packed)); | 270 | } ____cacheline_aligned; |
275 | 271 | ||
276 | DECLARE_PER_CPU(struct tss_struct, init_tss); | 272 | DECLARE_PER_CPU(struct tss_struct, init_tss); |
277 | 273 | ||
@@ -535,7 +531,6 @@ static inline void load_sp0(struct tss_struct *tss, | |||
535 | } | 531 | } |
536 | 532 | ||
537 | #define set_iopl_mask native_set_iopl_mask | 533 | #define set_iopl_mask native_set_iopl_mask |
538 | #define SWAPGS swapgs | ||
539 | #endif /* CONFIG_PARAVIRT */ | 534 | #endif /* CONFIG_PARAVIRT */ |
540 | 535 | ||
541 | /* | 536 | /* |
@@ -727,11 +722,11 @@ static inline void __sti_mwait(unsigned long eax, unsigned long ecx) | |||
727 | 722 | ||
728 | extern void mwait_idle_with_hints(unsigned long eax, unsigned long ecx); | 723 | extern void mwait_idle_with_hints(unsigned long eax, unsigned long ecx); |
729 | 724 | ||
730 | extern int force_mwait; | ||
731 | |||
732 | extern void select_idle_routine(const struct cpuinfo_x86 *c); | 725 | extern void select_idle_routine(const struct cpuinfo_x86 *c); |
733 | 726 | ||
734 | extern unsigned long boot_option_idle_override; | 727 | extern unsigned long boot_option_idle_override; |
728 | extern unsigned long idle_halt; | ||
729 | extern unsigned long idle_nomwait; | ||
735 | 730 | ||
736 | extern void enable_sep_cpu(void); | 731 | extern void enable_sep_cpu(void); |
737 | extern int sysenter_setup(void); | 732 | extern int sysenter_setup(void); |