[FIX] call kprobe from IRQ context (x86) 27/73327/2
authorVyacheslav Cherkashin <v.cherkashin@samsung.com>
Thu, 2 Jun 2016 08:48:43 +0000 (11:48 +0300)
committerVyacheslav Cherkashin <v.cherkashin@samsung.com>
Fri, 10 Jun 2016 10:09:32 +0000 (03:09 -0700)
commita50333c3fa5419e94bda56bd0862f289e3dfc20d
tree002e8506d77365285f8dc17004dee0c9b582bf48
parentf8e1e03b46b6ea7b7764e2b419cb1dd83727c6c8
[FIX] call kprobe from IRQ context (x86)

If kprobe is called from IRQ context, we call handler in current
context and use PER_CPU to store temporary values.

Otherwise, we jump to exec_trampoline to call handler in process
context and use stack (swap_ktd) to store temporary values.

Change-Id: If377dbb02a47e9ae03f44d426f74b7ce8a40bb6f
Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
kprobe/arch/x86/swap-asm/swap_kprobes.c
kprobe/swap_kprobes.c
kprobe/swap_kprobes.h
kprobe/swap_kprobes_deps.h