diff options
Diffstat (limited to 'include/asm-x86_64/processor.h')
| -rw-r--r-- | include/asm-x86_64/processor.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/include/asm-x86_64/processor.h b/include/asm-x86_64/processor.h index a8321999448f..03837d34fba0 100644 --- a/include/asm-x86_64/processor.h +++ b/include/asm-x86_64/processor.h | |||
| @@ -254,7 +254,13 @@ struct thread_struct { | |||
| 254 | u64 tls_array[GDT_ENTRY_TLS_ENTRIES]; | 254 | u64 tls_array[GDT_ENTRY_TLS_ENTRIES]; |
| 255 | } __attribute__((aligned(16))); | 255 | } __attribute__((aligned(16))); |
| 256 | 256 | ||
| 257 | #define INIT_THREAD {} | 257 | #define INIT_THREAD { \ |
| 258 | .rsp0 = (unsigned long)&init_stack + sizeof(init_stack) \ | ||
| 259 | } | ||
| 260 | |||
| 261 | #define INIT_TSS { \ | ||
| 262 | .rsp0 = (unsigned long)&init_stack + sizeof(init_stack) \ | ||
| 263 | } | ||
| 258 | 264 | ||
| 259 | #define INIT_MMAP \ | 265 | #define INIT_MMAP \ |
| 260 | { &init_mm, 0, 0, NULL, PAGE_SHARED, VM_READ | VM_WRITE | VM_EXEC, 1, NULL, NULL } | 266 | { &init_mm, 0, 0, NULL, PAGE_SHARED, VM_READ | VM_WRITE | VM_EXEC, 1, NULL, NULL } |
| @@ -375,13 +381,13 @@ struct extended_sigtable { | |||
| 375 | #define ASM_NOP_MAX 8 | 381 | #define ASM_NOP_MAX 8 |
| 376 | 382 | ||
| 377 | /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */ | 383 | /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */ |
| 378 | extern inline void rep_nop(void) | 384 | static inline void rep_nop(void) |
| 379 | { | 385 | { |
| 380 | __asm__ __volatile__("rep;nop": : :"memory"); | 386 | __asm__ __volatile__("rep;nop": : :"memory"); |
| 381 | } | 387 | } |
| 382 | 388 | ||
| 383 | /* Stop speculative execution */ | 389 | /* Stop speculative execution */ |
| 384 | extern inline void sync_core(void) | 390 | static inline void sync_core(void) |
| 385 | { | 391 | { |
| 386 | int tmp; | 392 | int tmp; |
| 387 | asm volatile("cpuid" : "=a" (tmp) : "0" (1) : "ebx","ecx","edx","memory"); | 393 | asm volatile("cpuid" : "=a" (tmp) : "0" (1) : "ebx","ecx","edx","memory"); |
