aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/kprobes.txt
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2012-03-04 19:47:13 -0500
commitc71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch)
treeecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /Documentation/kprobes.txt
parentea53c912f8a86a8567697115b6a0d8152beee5c8 (diff)
parent6a00f206debf8a5c8899055726ad127dbeeed098 (diff)
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts: litmus/sched_cedf.c
Diffstat (limited to 'Documentation/kprobes.txt')
-rw-r--r--Documentation/kprobes.txt10
1 files changed, 6 insertions, 4 deletions
diff --git a/Documentation/kprobes.txt b/Documentation/kprobes.txt
index 1762b81fcdf2..0cfb00fd86ff 100644
--- a/Documentation/kprobes.txt
+++ b/Documentation/kprobes.txt
@@ -542,9 +542,11 @@ Kprobes does not use mutexes or allocate memory except during
542registration and unregistration. 542registration and unregistration.
543 543
544Probe handlers are run with preemption disabled. Depending on the 544Probe handlers are run with preemption disabled. Depending on the
545architecture, handlers may also run with interrupts disabled. In any 545architecture and optimization state, handlers may also run with
546case, your handler should not yield the CPU (e.g., by attempting to 546interrupts disabled (e.g., kretprobe handlers and optimized kprobe
547acquire a semaphore). 547handlers run without interrupt disabled on x86/x86-64). In any case,
548your handler should not yield the CPU (e.g., by attempting to acquire
549a semaphore).
548 550
549Since a return probe is implemented by replacing the return 551Since a return probe is implemented by replacing the return
550address with the trampoline's address, stack backtraces and calls 552address with the trampoline's address, stack backtraces and calls
@@ -596,7 +598,7 @@ a 5-byte jump instruction. So there are several limitations.
596a) The instructions in DCR must be relocatable. 598a) The instructions in DCR must be relocatable.
597b) The instructions in DCR must not include a call instruction. 599b) The instructions in DCR must not include a call instruction.
598c) JTPR must not be targeted by any jump or call instruction. 600c) JTPR must not be targeted by any jump or call instruction.
599d) DCR must not straddle the border betweeen functions. 601d) DCR must not straddle the border between functions.
600 602
601Anyway, these limitations are checked by the in-kernel instruction 603Anyway, these limitations are checked by the in-kernel instruction
602decoder, so you don't need to worry about that. 604decoder, so you don't need to worry about that.