Lines Matching refs:instruction
31 on virtually any instruction in the kernel. A jprobe is inserted at
59 instruction and replaces the first byte(s) of the probed instruction
60 with a breakpoint instruction (e.g., int3 on i386 and x86_64).
62 When a CPU hits the breakpoint instruction, a trap occurs, the CPU's
68 Next, Kprobes single-steps its copy of the probed instruction.
69 (It would be simpler to single-step the actual instruction in place,
71 instruction. This would open a small time window when another CPU
74 After the instruction is single-stepped, Kprobes executes the
76 Execution then continues with the instruction following the probepoint.
89 Kprobes then points the saved instruction pointer at the jprobe's
114 is an arbitrary piece of code -- typically just a nop instruction.
117 When the probed function executes its return instruction, control
120 kretprobe, then sets the saved instruction pointer to the saved return
173 instruction instead of a breakpoint instruction at each probepoint.
187 instruction (the "optimized region") lies entirely within one function.
188 (A jump instruction is multiple bytes, and so may overlay multiple
194 - the function contains no instruction that causes an exception (since
201 - For each instruction in the optimized region, Kprobes verifies that
202 the instruction can be executed out of line.
207 instruction sequence:
229 Kprobes returns control to the original instruction path by setting
230 the CPU's instruction pointer to the copied code in the detour buffer
235 The Kprobe-optimizer doesn't insert the jump instruction immediately;
244 the optimized region with a jump instruction to the detour buffer,
256 (*)Please imagine that the 2nd instruction is interrupted and then
257 the optimizer replaces the 2nd instruction with the jump *address*
259 returns to original address, there is no valid instruction,
298 - ia64 (Does not support probes on instruction slot1.)
339 hit, Kprobes calls kp->pre_handler. After the probed instruction
342 or during single-stepping of the probed instruction, Kprobes calls
365 does not validate if the kprobe.addr is at an instruction boundary.
404 of the first instruction of a function. When the breakpoint is hit,
591 explain it, we introduce some terminology. Imagine a 3-instruction
593 instruction.
611 a 5-byte jump instruction. So there are several limitations.
614 b) The instructions in DCR must not include a call instruction.
615 c) JTPR must not be targeted by any jump or call instruction.
618 Anyway, these limitations are checked by the in-kernel instruction