Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* |
Uwe Zeisberger | f30c226 | 2006-10-03 23:01:26 +0200 | [diff] [blame] | 2 | * include/asm-x86_64/cache.h |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 | */ |
| 4 | #ifndef __ARCH_X8664_CACHE_H |
| 5 | #define __ARCH_X8664_CACHE_H |
| 6 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 7 | |
| 8 | /* L1 cache line size */ |
| 9 | #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT) |
| 10 | #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 11 | |
Ravikiran G Thirumalai | 5fd63b3 | 2006-01-11 22:46:15 +0100 | [diff] [blame] | 12 | #ifdef CONFIG_X86_VSMP |
| 13 | |
| 14 | /* vSMP Internode cacheline shift */ |
| 15 | #define INTERNODE_CACHE_SHIFT (12) |
| 16 | #ifdef CONFIG_SMP |
| 17 | #define __cacheline_aligned_in_smp \ |
| 18 | __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) \ |
| 19 | __attribute__((__section__(".data.page_aligned"))) |
| 20 | #endif |
| 21 | |
| 22 | #endif |
| 23 | |
Eric Dumazet | 0b699e3 | 2006-04-20 02:36:48 +0200 | [diff] [blame] | 24 | #define __read_mostly __attribute__((__section__(".data.read_mostly"))) |
| 25 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | #endif |