From: Masami Hiramatsu on
Update kprobes.txt about interrupts disabled state inside
kprobes handlers, because optimized probe/boosted kretprobe
run without disabling interrrupts on x86.

Signed-off-by: Masami Hiramatsu <>
Cc: Ananth N Mavinakayanahalli <ananth(a)>
Cc: linux-kernel(a)
Cc: linux-doc(a)

Documentation/kprobes.txt | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/Documentation/kprobes.txt b/Documentation/kprobes.txt
index 6653017..4189f01 100644
--- a/Documentation/kprobes.txt
+++ b/Documentation/kprobes.txt
@@ -541,9 +541,11 @@ Kprobes does not use mutexes or allocate memory except during
registration and unregistration.

Probe handlers are run with preemption disabled. Depending on the
-architecture, handlers may also run with interrupts disabled. In any
-case, your handler should not yield the CPU (e.g., by attempting to
-acquire a semaphore).
+architecture and optimization state, handlers may also run with
+interrupts disabled (e.g., kretprobe handlers and optimized kprobe
+handlers run without interrupt disabled on x86/x86-64). In any case,
+your handler should not yield the CPU (e.g., by attempting to acquire
+a semaphore).

Since a return probe is implemented by replacing the return
address with the trampoline's address, stack backtraces and calls

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)
More majordomo info at
Please read the FAQ at