blob: d2818559e26ff405eee1314dcee41e783c0c3576 [file] [log] [blame]
The Android Open Source Projecta27d2ba2008-10-21 07:00:00 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef __LINUX_CACHE_H
13#define __LINUX_CACHE_H
14
15#include <linux/kernel.h>
16#include <asm/cache.h>
17
18#ifndef L1_CACHE_ALIGN
19#define L1_CACHE_ALIGN(x) ALIGN(x, L1_CACHE_BYTES)
20#endif
21
22#ifndef SMP_CACHE_BYTES
23#define SMP_CACHE_BYTES L1_CACHE_BYTES
24#endif
25
26#ifndef __read_mostly
27#define __read_mostly
28#endif
29
30#ifndef ____cacheline_aligned
31#define ____cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES)))
32#endif
33
34#ifndef ____cacheline_aligned_in_smp
35#define ____cacheline_aligned_in_smp
36#endif
37
38#ifndef __cacheline_aligned
39#define __cacheline_aligned __attribute__((__aligned__(SMP_CACHE_BYTES), __section__(".data.cacheline_aligned")))
40#endif
41
42#ifndef __cacheline_aligned_in_smp
43#define __cacheline_aligned_in_smp
44#endif
45
46#ifndef INTERNODE_CACHE_SHIFT
47#define INTERNODE_CACHE_SHIFT L1_CACHE_SHIFT
48#endif
49
50#ifndef ____cacheline_internodealigned_in_smp
51#define ____cacheline_internodealigned_in_smp
52#endif
53
54#endif