blob: f8dff1c67538b75381964b6c5c7b4dd3dcc9b37d [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * include/asm-x8664/cache.h
3 */
4#ifndef __ARCH_X8664_CACHE_H
5#define __ARCH_X8664_CACHE_H
6
7#include <linux/config.h>
8
9/* L1 cache line size */
10#define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT)
11#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
Linus Torvalds1da177e2005-04-16 15:20:36 -070012
Ravikiran G Thirumalai5fd63b32006-01-11 22:46:15 +010013#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
Eric Dumazet0b699e32006-04-20 02:36:48 +020025#define __read_mostly __attribute__((__section__(".data.read_mostly")))
26
Linus Torvalds1da177e2005-04-16 15:20:36 -070027#endif