diff options
author | Hugh Dickins <hughd@google.com> | 2017-12-17 19:29:01 -0800 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2018-01-07 01:46:49 +0000 |
commit | 026a90cb90fc41b70c275bd240bbe54dfb46497d (patch) | |
tree | 44913f648067ac8856cfaddca350b2a07f0ceb35 | |
parent | 0cee3c94208ae76fc10459cf9398c63dc6956dad (diff) | |
download | linux-stable-026a90cb90fc41b70c275bd240bbe54dfb46497d.tar.gz linux-stable-026a90cb90fc41b70c275bd240bbe54dfb46497d.tar.bz2 linux-stable-026a90cb90fc41b70c275bd240bbe54dfb46497d.zip |
kaiser: user_map __kprobes_text too
In 3.2 (and earlier, and up to 3.15) Kaiser needs to user_map the
__kprobes_text as well as the __entry_text: entry_64.S places some
vital functions there, so without this you very soon triple-fault.
Many thanks to Jiri Kosina for pointing me in this direction.
Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r-- | arch/x86/mm/kaiser.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/mm/kaiser.c b/arch/x86/mm/kaiser.c index ab1dfa607546..fb16d79fc07a 100644 --- a/arch/x86/mm/kaiser.c +++ b/arch/x86/mm/kaiser.c @@ -281,6 +281,8 @@ void __init kaiser_init(void) */ kaiser_add_user_map_ptrs_early(__entry_text_start, __entry_text_end, __PAGE_KERNEL_RX); + kaiser_add_user_map_ptrs_early(__kprobes_text_start, __kprobes_text_end, + __PAGE_KERNEL_RX); #ifdef CONFIG_FUNCTION_GRAPH_TRACER kaiser_add_user_map_ptrs_early(__irqentry_text_start, __irqentry_text_end, |