aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/percpu.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2009-04-21 18:00:29 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-04-21 22:40:00 -0400
commit5028eaa97dd1dab9cd7c30c4d38f71c708ca64bc (patch)
treeff416e9ecb00ab2b616bce6acc4e2579c45b06b9 /include/linux/percpu.h
parent9b8de7479d0dbab1ed98b5b015d44232c9d3d08e (diff)
PERCPU: Collect the DECLARE/DEFINE declarations together
Collect the DECLARE/DEFINE declarations together in linux/percpu-defs.h so that they're in one place, and give them descriptive comments, particularly the SHARED_ALIGNED variant. It would be nice to collect these in linux/percpu.h, but that's not possible without sorting out the severe #include recursion between the x86 arch headers and the general headers (and possibly other arches too). Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/percpu.h')
-rw-r--r--include/linux/percpu.h20
1 files changed, 0 insertions, 20 deletions
diff --git a/include/linux/percpu.h b/include/linux/percpu.h
index f052d8184993..1581ff235c7e 100644
--- a/include/linux/percpu.h
+++ b/include/linux/percpu.h
@@ -9,26 +9,6 @@
9 9
10#include <asm/percpu.h> 10#include <asm/percpu.h>
11 11
12#define DEFINE_PER_CPU_SECTION(type, name, section) \
13 __attribute__((__section__(PER_CPU_BASE_SECTION section))) \
14 PER_CPU_ATTRIBUTES __typeof__(type) per_cpu__##name
15
16#define DEFINE_PER_CPU(type, name) \
17 DEFINE_PER_CPU_SECTION(type, name, "")
18
19#define DEFINE_PER_CPU_SHARED_ALIGNED(type, name) \
20 DEFINE_PER_CPU_SECTION(type, name, PER_CPU_SHARED_ALIGNED_SECTION) \
21 ____cacheline_aligned_in_smp
22
23#define DEFINE_PER_CPU_PAGE_ALIGNED(type, name) \
24 DEFINE_PER_CPU_SECTION(type, name, ".page_aligned")
25
26#define DEFINE_PER_CPU_FIRST(type, name) \
27 DEFINE_PER_CPU_SECTION(type, name, PER_CPU_FIRST_SECTION)
28
29#define EXPORT_PER_CPU_SYMBOL(var) EXPORT_SYMBOL(per_cpu__##var)
30#define EXPORT_PER_CPU_SYMBOL_GPL(var) EXPORT_SYMBOL_GPL(per_cpu__##var)
31
32/* enough to cover all DEFINE_PER_CPUs in modules */ 12/* enough to cover all DEFINE_PER_CPUs in modules */
33#ifdef CONFIG_MODULES 13#ifdef CONFIG_MODULES
34#define PERCPU_MODULE_RESERVE (8 << 10) 14#define PERCPU_MODULE_RESERVE (8 << 10)