diff options
author | Kees Cook <keescook@chromium.org> | 2014-03-11 00:42:48 +0400 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2014-03-24 21:18:26 +0400 |
commit | 9dd721c6dbfc310f94306902611f86dda87a45fa (patch) | |
tree | 56dbfcb8ae3c05f26be75dba824c5fb18b1ac25f /Documentation/kernel-parameters.txt | |
parent | e2b32e6785138d92d2a40e0d0473575c8c7310a2 (diff) | |
download | linux-9dd721c6dbfc310f94306902611f86dda87a45fa.tar.xz |
x86, kaslr: fix module lock ordering problem
There was a potential lock ordering problem with the module kASLR patch
("x86, kaslr: randomize module base load address"). This patch removes
the usage of the module_mutex and creates a new mutex to protect the
module base address offset value.
Chain exists of:
text_mutex --> kprobe_insn_slots.mutex --> module_mutex
[ 0.515561] Possible unsafe locking scenario:
[ 0.515561]
[ 0.515561] CPU0 CPU1
[ 0.515561] ---- ----
[ 0.515561] lock(module_mutex);
[ 0.515561] lock(kprobe_insn_slots.mutex);
[ 0.515561] lock(module_mutex);
[ 0.515561] lock(text_mutex);
[ 0.515561]
[ 0.515561] *** DEADLOCK ***
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Andy Honig <ahonig@google.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'Documentation/kernel-parameters.txt')
0 files changed, 0 insertions, 0 deletions