/linux-6.12.1/arch/s390/kernel/ |
D | ftrace.c | 80 static struct ftrace_hotpatch_trampoline *trampoline; in ftrace_init_nop() local 104 trampoline = (*next_trampoline)++; in ftrace_init_nop() 114 tmp.brasl_disp = (shared - (const char *)&trampoline->brasl_opc) / 2; in ftrace_init_nop() 117 s390_kernel_write(trampoline, &tmp, sizeof(tmp)); in ftrace_init_nop() 120 disp = ((char *)trampoline - (char *)rec->ip) / 2; in ftrace_init_nop() 129 struct ftrace_hotpatch_trampoline *trampoline; in ftrace_get_trampoline() local 137 trampoline = (void *)(rec->ip + disp); in ftrace_get_trampoline() 138 if (get_kernel_nofault(opc, &trampoline->brasl_opc)) in ftrace_get_trampoline() 142 return trampoline; in ftrace_get_trampoline() 175 struct ftrace_hotpatch_trampoline *trampoline; in ftrace_modify_trampoline_call() local [all …]
|
D | uprobes.c | 143 unsigned long arch_uretprobe_hijack_return_addr(unsigned long trampoline, in arch_uretprobe_hijack_return_addr() argument 149 regs->gprs[14] = trampoline; in arch_uretprobe_hijack_return_addr()
|
/linux-6.12.1/arch/x86/kernel/ |
D | ftrace.c | 315 void *trampoline; in create_trampoline() local 344 trampoline = alloc_tramp(size + RET_SIZE + sizeof(void *)); in create_trampoline() 345 if (!trampoline) in create_trampoline() 352 ret = copy_from_kernel_nofault(trampoline, (void *)start_offset, size); in create_trampoline() 356 ip = trampoline + size; in create_trampoline() 365 ip = trampoline + (jmp_offset - start_offset); in create_trampoline() 381 ptr = (unsigned long *)(trampoline + size + RET_SIZE); in create_trampoline() 385 memcpy(&op_ptr, trampoline + op_offset, OP_REF_SIZE); in create_trampoline() 393 offset -= (unsigned long)trampoline + op_offset + OP_REF_SIZE; in create_trampoline() 398 memcpy(trampoline + op_offset, &op_ptr, OP_REF_SIZE); in create_trampoline() [all …]
|
/linux-6.12.1/Documentation/livepatch/ |
D | reliable-stacktrace.rst | 163 to intercept when that function returns with a return trampoline, e.g. 165 * An ftrace trampoline may modify the return address so that function graph 168 * A kprobes (or optprobes) trampoline may modify the return address so that 174 is altered by the trampoline, the unwinder may report the original return 175 address in place of the trampoline and report this as reliable. Otherwise, an 180 trampoline or return trampoline. For example, considering the x86_64 181 'return_to_handler' return trampoline: 213 trampoline moves this into rdi before jumping to it. 232 with a JMP instruction which targets the associated optprobe trampoline. When 233 the probe is hit, the CPU will branch to the optprobe trampoline, and the [all …]
|
/linux-6.12.1/tools/testing/selftests/arm64/bti/ |
D | Makefile | 38 $(OUTPUT)/trampoline-bti.o 49 $(OUTPUT)/trampoline-nobti.o
|
D | test.c | 107 static void __do_test(void (*trampoline)(void (*)(void)), in __do_test() 125 trampoline(fn); in __do_test()
|
/linux-6.12.1/arch/x86/boot/compressed/ |
D | pgtable.h | 13 extern void trampoline_32bit_src(void *trampoline, bool enable_5lvl);
|
/linux-6.12.1/drivers/gpu/drm/i915/ |
D | i915_cmd_parser.h | 23 bool trampoline);
|
D | i915_cmd_parser.c | 1445 bool trampoline) in intel_engine_cmd_parser() argument 1470 if (!trampoline) in intel_engine_cmd_parser() 1534 if (trampoline) { in intel_engine_cmd_parser()
|
/linux-6.12.1/arch/powerpc/include/asm/ |
D | module.h | 73 int module_trampoline_target(struct module *mod, unsigned long trampoline,
|
/linux-6.12.1/arch/arm/boot/dts/intel/socfpga/ |
D | socfpga_arria5.dtsi | 7 /* First 4KB has trampoline code for secondary cores. */
|
D | socfpga_cyclone5.dtsi | 7 /* First 4KB has trampoline code for secondary cores. */
|
/linux-6.12.1/arch/hexagon/kernel/ |
D | Makefile | 8 obj-y += process.o trampoline.o reset.o ptrace.o vdso.o
|
/linux-6.12.1/Documentation/admin-guide/ |
D | syscall-user-dispatch.rst | 66 interface should make sure that at least the signal trampoline code is 68 trampoline code on the vDSO, that trampoline is never intercepted.
|
/linux-6.12.1/kernel/trace/ |
D | ftrace.c | 1097 if (op->trampoline && op->trampoline_size) in ftrace_ops_trampoline() 1098 if (addr >= op->trampoline && in ftrace_ops_trampoline() 1099 addr < op->trampoline + op->trampoline_size) { in ftrace_ops_trampoline() 1801 if (ftrace_rec_count(rec) == 1 && ops->trampoline) in __ftrace_hash_rec_update() 2199 (void *)ops->trampoline, in ftrace_bug() 2418 if (!op->trampoline) in ftrace_find_tramp_ops_any() 2436 if (op == op_exclude || !op->trampoline) in ftrace_find_tramp_ops_any_other() 2454 if (!op->trampoline) in ftrace_find_tramp_ops_next() 2501 if (!op->trampoline) in ftrace_find_tramp_ops_curr() 2626 if (FTRACE_WARN_ON(!ops || !ops->trampoline)) { in ftrace_get_addr_new() [all …]
|
/linux-6.12.1/kernel/bpf/ |
D | trampoline.c | 479 tr->fops->trampoline = 0; in bpf_trampoline_update() 619 if (!shim_link->trampoline) in bpf_shim_tramp_link_release() 622 WARN_ON_ONCE(bpf_trampoline_unlink_prog(&shim_link->link, shim_link->trampoline)); in bpf_shim_tramp_link_release() 623 bpf_trampoline_put(shim_link->trampoline); in bpf_shim_tramp_link_release() 740 shim_link->trampoline = tr; in bpf_trampoline_link_cgroup_shim()
|
D | Makefile | 16 obj-$(CONFIG_BPF_JIT) += trampoline.o
|
/linux-6.12.1/include/linux/ |
D | lsm_hooks.h | 53 void *trampoline; member
|
/linux-6.12.1/Documentation/arch/powerpc/ |
D | booting.rst | 53 trampoline located in arch/powerpc/kernel/prom_init.c to 57 the second method. This trampoline code runs in the 62 point is called by a) after the OF trampoline and can also be
|
/linux-6.12.1/drivers/gpu/drm/i915/gem/ |
D | i915_gem_execbuffer.c | 262 struct i915_vma *trampoline; /** trampoline used for chaining */ member 2281 struct i915_vma *shadow, *trampoline, *batch; in eb_parse() local 2333 trampoline = NULL; in eb_parse() 2335 trampoline = shadow; in eb_parse() 2360 shadow, trampoline); in eb_parse() 2368 eb->trampoline = trampoline; in eb_parse() 2419 if (eb->trampoline) { in eb_request_submit() 2423 i915_vma_offset(eb->trampoline) + in eb_request_submit() 3385 eb.trampoline = NULL; in i915_gem_do_execbuffer()
|
/linux-6.12.1/Documentation/trace/ |
D | kprobes.rst | 113 the return address with the address of a "trampoline." The trampoline 115 At boot time, Kprobes registers a kprobe at the trampoline. 118 passes to the trampoline and that probe is hit. Kprobes' trampoline 216 - a call to the trampoline code which calls user's probe handlers. 584 address with the trampoline's address, stack backtraces and calls 585 to __builtin_return_address() will typically yield the trampoline's
|
/linux-6.12.1/tools/testing/selftests/bpf/ |
D | README.rst | 31 trampoline support on IBM's s390x architecture. For cases like this, an in-tree 43 available, summarizes the underlying problem. A value of ``trampoline``, for 44 example, indicates that lack of trampoline support is causing the test to fail.
|
/linux-6.12.1/tools/testing/selftests/arm64/signal/ |
D | README | 34 they are just fired using some simple included assembly trampoline code.
|
/linux-6.12.1/arch/x86/realmode/rm/ |
D | trampoline_64.S | 159 # Setup trampoline 4 level pagetables
|
/linux-6.12.1/Documentation/bpf/ |
D | drgn.rst | 143 .trampoline = (struct bpf_trampoline *)0x0,
|