Blame view
include/linux/cache.h
1.59 KB
1da177e4c Linux-2.6.12-rc2 |
1 2 |
#ifndef __LINUX_CACHE_H #define __LINUX_CACHE_H |
c28aa1f0a printk/cache: mar... |
3 |
#include <uapi/linux/kernel.h> |
1da177e4c Linux-2.6.12-rc2 |
4 5 6 |
#include <asm/cache.h> #ifndef L1_CACHE_ALIGN |
c28aa1f0a printk/cache: mar... |
7 |
#define L1_CACHE_ALIGN(x) __ALIGN_KERNEL(x, L1_CACHE_BYTES) |
1da177e4c Linux-2.6.12-rc2 |
8 9 10 11 12 |
#endif #ifndef SMP_CACHE_BYTES #define SMP_CACHE_BYTES L1_CACHE_BYTES #endif |
804f1594c [PATCH] Move read... |
13 |
#ifndef __read_mostly |
6c036527a [PATCH] mostly_re... |
14 15 |
#define __read_mostly #endif |
1da177e4c Linux-2.6.12-rc2 |
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
#ifndef ____cacheline_aligned #define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES))) #endif #ifndef ____cacheline_aligned_in_smp #ifdef CONFIG_SMP #define ____cacheline_aligned_in_smp ____cacheline_aligned #else #define ____cacheline_aligned_in_smp #endif /* CONFIG_SMP */ #endif #ifndef __cacheline_aligned #define __cacheline_aligned \ __attribute__((__aligned__(SMP_CACHE_BYTES), \ |
4af57b787 Rename .data.cach... |
31 |
__section__(".data..cacheline_aligned"))) |
1da177e4c Linux-2.6.12-rc2 |
32 33 34 35 36 37 38 39 40 |
#endif /* __cacheline_aligned */ #ifndef __cacheline_aligned_in_smp #ifdef CONFIG_SMP #define __cacheline_aligned_in_smp __cacheline_aligned #else #define __cacheline_aligned_in_smp #endif /* CONFIG_SMP */ #endif |
22fc6eccb [PATCH] Change ma... |
41 42 43 44 45 46 47 48 49 50 |
/* * The maximum alignment needed for some critical structures * These could be inter-node cacheline sizes/L3 cacheline * size etc. Define this in asm/cache.h for your arch */ #ifndef INTERNODE_CACHE_SHIFT #define INTERNODE_CACHE_SHIFT L1_CACHE_SHIFT #endif #if !defined(____cacheline_internodealigned_in_smp) |
1da177e4c Linux-2.6.12-rc2 |
51 |
#if defined(CONFIG_SMP) |
22fc6eccb [PATCH] Change ma... |
52 53 |
#define ____cacheline_internodealigned_in_smp \ __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) |
1da177e4c Linux-2.6.12-rc2 |
54 |
#else |
22fc6eccb [PATCH] Change ma... |
55 |
#define ____cacheline_internodealigned_in_smp |
1da177e4c Linux-2.6.12-rc2 |
56 57 |
#endif #endif |
1b27d05b6 mm: move cache_li... |
58 59 60 |
#ifndef CONFIG_ARCH_HAS_CACHE_LINE_SIZE #define cache_line_size() L1_CACHE_BYTES #endif |
1da177e4c Linux-2.6.12-rc2 |
61 |
#endif /* __LINUX_CACHE_H */ |