cache.h 629 B

123456789101112131415161718192021222324252627
  1. /*
  2. * include/asm-x8664/cache.h
  3. */
  4. #ifndef __ARCH_X8664_CACHE_H
  5. #define __ARCH_X8664_CACHE_H
  6. #include <linux/config.h>
  7. /* L1 cache line size */
  8. #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT)
  9. #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
  10. #ifdef CONFIG_X86_VSMP
  11. /* vSMP Internode cacheline shift */
  12. #define INTERNODE_CACHE_SHIFT (12)
  13. #ifdef CONFIG_SMP
  14. #define __cacheline_aligned_in_smp \
  15. __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) \
  16. __attribute__((__section__(".data.page_aligned")))
  17. #endif
  18. #define __read_mostly __attribute__((__section__(".data.read_mostly")))
  19. #endif
  20. #endif