diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-x86_64/cache.h | 12 | ||||
-rw-r--r-- | include/asm-x86_64/processor.h | 6 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/asm-x86_64/cache.h b/include/asm-x86_64/cache.h index b4a2401de77b..263f0a211ed7 100644 --- a/include/asm-x86_64/cache.h +++ b/include/asm-x86_64/cache.h | |||
@@ -10,4 +10,16 @@ | |||
10 | #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT) | 10 | #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT) |
11 | #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) | 11 | #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) |
12 | 12 | ||
13 | #ifdef CONFIG_X86_VSMP | ||
14 | |||
15 | /* vSMP Internode cacheline shift */ | ||
16 | #define INTERNODE_CACHE_SHIFT (12) | ||
17 | #ifdef CONFIG_SMP | ||
18 | #define __cacheline_aligned_in_smp \ | ||
19 | __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) \ | ||
20 | __attribute__((__section__(".data.page_aligned"))) | ||
21 | #endif | ||
22 | |||
23 | #endif | ||
24 | |||
13 | #endif | 25 | #endif |
diff --git a/include/asm-x86_64/processor.h b/include/asm-x86_64/processor.h index 5cb151538cd5..394dd729752d 100644 --- a/include/asm-x86_64/processor.h +++ b/include/asm-x86_64/processor.h | |||
@@ -227,7 +227,13 @@ struct tss_struct { | |||
227 | extern struct cpuinfo_x86 boot_cpu_data; | 227 | extern struct cpuinfo_x86 boot_cpu_data; |
228 | DECLARE_PER_CPU(struct tss_struct,init_tss); | 228 | DECLARE_PER_CPU(struct tss_struct,init_tss); |
229 | 229 | ||
230 | #ifdef CONFIG_X86_VSMP | ||
231 | #define ARCH_MIN_TASKALIGN (1 << INTERNODE_CACHE_SHIFT) | ||
232 | #define ARCH_MIN_MMSTRUCT_ALIGN (1 << INTERNODE_CACHE_SHIFT) | ||
233 | #else | ||
230 | #define ARCH_MIN_TASKALIGN 16 | 234 | #define ARCH_MIN_TASKALIGN 16 |
235 | #define ARCH_MIN_MMSTRUCT_ALIGN 0 | ||
236 | #endif | ||
231 | 237 | ||
232 | struct thread_struct { | 238 | struct thread_struct { |
233 | unsigned long rsp0; | 239 | unsigned long rsp0; |