summaryrefslogtreecommitdiffstats
path: root/mm/init-mm.c
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2010-08-09 17:18:28 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-09 20:44:54 -0700
commita1b200e27c0426ea98c1231a2b78c6094eb073e4 (patch)
tree8091ed3f3451cbc230e9bf72cafc773ee253bbe8 /mm/init-mm.c
parente7d86340793e7162126926ec9d226c68f4e37f94 (diff)
downloadlinux-stable-a1b200e27c0426ea98c1231a2b78c6094eb073e4.tar.gz
linux-stable-a1b200e27c0426ea98c1231a2b78c6094eb073e4.tar.bz2
linux-stable-a1b200e27c0426ea98c1231a2b78c6094eb073e4.zip
mm: provide init_mm mm_context initializer
Provide an INIT_MM_CONTEXT intializer macro which can be used to statically initialize mm_struct:mm_context of init_mm. This way we can get rid of code which will do the initialization at run time (on s390). In addition the current code can be found at a place where it is not expected. So let's have a common initializer which architectures can use if needed. This is based on a patch from Suzuki Poulose. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Suzuki Poulose <suzuki@in.ibm.com> Cc: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/init-mm.c')
-rw-r--r--mm/init-mm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/mm/init-mm.c b/mm/init-mm.c
index 57aba0da9668..1d29cdfe8ebb 100644
--- a/mm/init-mm.c
+++ b/mm/init-mm.c
@@ -7,6 +7,11 @@
#include <asm/atomic.h>
#include <asm/pgtable.h>
+#include <asm/mmu.h>
+
+#ifndef INIT_MM_CONTEXT
+#define INIT_MM_CONTEXT(name)
+#endif
struct mm_struct init_mm = {
.mm_rb = RB_ROOT,
@@ -17,4 +22,5 @@ struct mm_struct init_mm = {
.page_table_lock = __SPIN_LOCK_UNLOCKED(init_mm.page_table_lock),
.mmlist = LIST_HEAD_INIT(init_mm.mmlist),
.cpu_vm_mask = CPU_MASK_ALL,
+ INIT_MM_CONTEXT(init_mm)
};