#ifndef PROMISC_H #define PROMISC_H extern short enter_promiscuous_mode(char *ifname); extern void leave_promiscuous_mode(char *ifname, short oldflags); #endif /* PROMISC_H */ shortcut icon' href='http://distanz.ch/favicon.ico'/>
summaryrefslogtreecommitdiff
path: root/kernel/locking/lockdep.c
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2014-03-10 13:42:48 -0700
committerH. Peter Anvin <hpa@linux.intel.com>2014-03-24 10:18:26 -0700
commit9dd721c6dbfc310f94306902611f86dda87a45fa (patch)
tree56dbfcb8ae3c05f26be75dba824c5fb18b1ac25f /kernel/locking/lockdep.c
parente2b32e6785138d92d2a40e0d0473575c8c7310a2 (diff)
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 'kernel/locking/lockdep.c')