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>
This commit is contained in:
parent
ac2f1018ac
commit
0994a2cf8f
3 changed files with 38 additions and 19 deletions
|
@ -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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue