diff options
author | Hugh Dickins <hughd@google.com> | 2017-09-04 04:57:03 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-01-05 17:46:32 +0300 |
commit | 0994a2cf8fe4e884bad4810681117a7d0096c8e7 (patch) | |
tree | 524d647d9dc1bde3133cd09aca758e76792aad53 /init/main.c | |
parent | ac2f1018ac210cfedcfab82dbafbda4e2db7ed08 (diff) | |
download | linux-0994a2cf8fe4e884bad4810681117a7d0096c8e7.tar.xz |
kaiser: stack map PAGE_SIZE at THREAD_SIZE-PAGE_SIZE
Kaiser only needs to map one page of the stack; and
kernel/fork.c did not build on powerpc (no __PAGE_KERNEL).
It's all cleaner if linux/kaiser.h provides kaiser_map_thread_stack()
and kaiser_unmap_thread_stack() wrappers around asm/kaiser.h's
kaiser_add_mapping() and kaiser_remove_mapping(). And use
linux/kaiser.h in init/main.c to avoid the #ifdefs there.
Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'init/main.c')
-rw-r--r-- | init/main.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/init/main.c b/init/main.c index 2c009f77e655..99f026565608 100644 --- a/init/main.c +++ b/init/main.c @@ -80,15 +80,13 @@ #include <linux/integrity.h> #include <linux/proc_ns.h> #include <linux/io.h> +#include <linux/kaiser.h> #include <asm/io.h> #include <asm/bugs.h> #include <asm/setup.h> #include <asm/sections.h> #include <asm/cacheflush.h> -#ifdef CONFIG_KAISER -#include <asm/kaiser.h> -#endif static int kernel_init(void *); @@ -476,9 +474,7 @@ static void __init mm_init(void) pgtable_init(); vmalloc_init(); ioremap_huge_init(); -#ifdef CONFIG_KAISER kaiser_init(); -#endif } asmlinkage __visible void __init start_kernel(void) |