Home
last modified time | relevance | path

Searched refs:trampoline (Results 1 - 25 of 35) sorted by relevance

12

/kernel/linux/linux-6.6/arch/s390/kernel/
H A Dftrace.c43 * trampoline (ftrace_plt), which clobbers also r1.
83 static struct ftrace_hotpatch_trampoline *trampoline; in ftrace_init_nop() local
107 trampoline = (*next_trampoline)++; in ftrace_init_nop()
113 /* Generate the trampoline. */ in ftrace_init_nop()
115 tmp.brasl_disp = (shared - (const char *)&trampoline->brasl_opc) / 2; in ftrace_init_nop()
118 s390_kernel_write(trampoline, &tmp, sizeof(tmp)); in ftrace_init_nop()
120 /* Generate a jump to the trampoline. */ in ftrace_init_nop()
121 disp = ((char *)trampoline - (char *)rec->ip) / 2; in ftrace_init_nop()
130 struct ftrace_hotpatch_trampoline *trampoline; in ftrace_get_trampoline() local
138 trampoline in ftrace_get_trampoline()
149 struct ftrace_hotpatch_trampoline *trampoline; ftrace_modify_call() local
187 struct ftrace_hotpatch_trampoline *trampoline; ftrace_make_call() local
[all...]
H A Duprobes.c144 unsigned long arch_uretprobe_hijack_return_addr(unsigned long trampoline, in arch_uretprobe_hijack_return_addr() argument
150 regs->gprs[14] = trampoline; in arch_uretprobe_hijack_return_addr()
/kernel/linux/linux-5.10/arch/x86/kernel/
H A Dftrace.c300 * trampoline only services a single ftrace_ops, we can pass in
328 void *trampoline; in create_trampoline() local
355 * trampoline is used for. in create_trampoline()
357 trampoline = alloc_tramp(size + RET_SIZE + sizeof(void *)); in create_trampoline()
358 if (!trampoline) in create_trampoline()
364 /* Copy ftrace_caller onto the trampoline memory */ in create_trampoline()
365 ret = copy_from_kernel_nofault(trampoline, (void *)start_offset, size); in create_trampoline()
369 ip = trampoline + size; in create_trampoline()
371 /* The trampoline ends with ret(q) */ in create_trampoline()
380 ip = trampoline in create_trampoline()
[all...]
/kernel/linux/linux-6.6/arch/x86/kernel/
H A Dftrace.c73 * No need to translate into a callthunk. The trampoline does in ftrace_call_replace()
296 * trampoline only services a single ftrace_ops, we can pass in
324 void *trampoline; in create_trampoline() local
351 * trampoline is used for. in create_trampoline()
353 trampoline = alloc_tramp(size + RET_SIZE + sizeof(void *)); in create_trampoline()
354 if (!trampoline) in create_trampoline()
360 /* Copy ftrace_caller onto the trampoline memory */ in create_trampoline()
361 ret = copy_from_kernel_nofault(trampoline, (void *)start_offset, size); in create_trampoline()
365 ip = trampoline + size; in create_trampoline()
374 ip = trampoline in create_trampoline()
[all...]
/kernel/linux/linux-6.6/tools/testing/selftests/arm64/bti/
H A DMakefile38 $(OUTPUT)/trampoline-bti.o
49 $(OUTPUT)/trampoline-nobti.o
H A Dtest.c107 static void __do_test(void (*trampoline)(void (*)(void)), in __do_test()
125 trampoline(fn); in __do_test()
/kernel/linux/linux-6.6/arch/x86/boot/compressed/
H A Dpgtable.h13 extern void trampoline_32bit_src(void *trampoline, bool enable_5lvl);
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/
H A Di915_cmd_parser.h23 bool trampoline);
H A Di915_cmd_parser.c1431 * @trampoline: true if we need to trampoline into privileged execution
1445 bool trampoline) in intel_engine_cmd_parser()
1470 if (!trampoline) in intel_engine_cmd_parser()
1534 if (trampoline) { in intel_engine_cmd_parser()
1536 * With the trampoline, the shadow is executed twice. in intel_engine_cmd_parser()
1440 intel_engine_cmd_parser(struct intel_engine_cs *engine, struct i915_vma *batch, unsigned long batch_offset, unsigned long batch_length, struct i915_vma *shadow, bool trampoline) intel_engine_cmd_parser() argument
/kernel/linux/linux-5.10/arch/powerpc/include/asm/
H A Dmodule.h76 int module_trampoline_target(struct module *mod, unsigned long trampoline,
/kernel/linux/linux-6.6/arch/powerpc/include/asm/
H A Dmodule.h78 int module_trampoline_target(struct module *mod, unsigned long trampoline,
/kernel/linux/linux-5.10/arch/hexagon/kernel/
H A DMakefile7 obj-y += process.o trampoline.o reset.o ptrace.o vdso.o
/kernel/linux/linux-6.6/arch/hexagon/kernel/
H A DMakefile8 obj-y += process.o trampoline.o reset.o ptrace.o vdso.o
/kernel/linux/linux-6.6/kernel/trace/
H A Dftrace.c134 * Stub used to invoke the list ops without requiring a separate trampoline.
226 * then have the mcount trampoline call the function directly. in update_ftrace_function()
1092 if (op->trampoline && op->trampoline_size) in ftrace_ops_trampoline()
1093 if (addr >= op->trampoline && in ftrace_ops_trampoline()
1094 addr < op->trampoline + op->trampoline_size) { in ftrace_ops_trampoline()
1106 * address is on a dynamically allocated trampoline that would
1788 * function, and the ops has a trampoline registered in __ftrace_hash_rec_update()
1791 if (ftrace_rec_count(rec) == 1 && ops->trampoline) in __ftrace_hash_rec_update()
1797 * custom trampoline in use, then we need to go in __ftrace_hash_rec_update()
1798 * back to the default trampoline in __ftrace_hash_rec_update()
7271 unsigned long trampoline = ops->trampoline; ftrace_update_trampoline() local
[all...]
/kernel/linux/linux-5.10/kernel/trace/
H A Dftrace.c198 * then have the mcount trampoline call the function directly. in update_ftrace_function()
1067 if (op->trampoline && op->trampoline_size) in ftrace_ops_trampoline()
1068 if (addr >= op->trampoline && in ftrace_ops_trampoline()
1069 addr < op->trampoline + op->trampoline_size) { in ftrace_ops_trampoline()
1081 * address is on a dynamically allocated trampoline that would
1733 * function, and the ops has a trampoline registered in __ftrace_hash_rec_update()
1736 if (ftrace_rec_count(rec) == 1 && ops->trampoline) in __ftrace_hash_rec_update()
1742 * custom trampoline in use, then we need to go in __ftrace_hash_rec_update()
1743 * back to the default trampoline. in __ftrace_hash_rec_update()
1783 * left has a trampoline in __ftrace_hash_rec_update()
6936 unsigned long trampoline = ops->trampoline; ftrace_update_trampoline() local
[all...]
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gem/
H A Di915_gem_execbuffer.c249 struct i915_vma *trampoline; /** trampoline used for chaining */ member
2289 struct i915_vma *shadow, *trampoline, *batch; in eb_parse() local
2337 trampoline = NULL; in eb_parse()
2339 trampoline = shadow; in eb_parse()
2346 shadow = trampoline; in eb_parse()
2364 shadow, trampoline); in eb_parse()
2372 eb->trampoline = trampoline; in eb_parse()
2387 if (trampoline) in eb_parse()
[all...]
/kernel/linux/linux-6.6/kernel/bpf/
H A Dtrampoline.c46 /* Instead of updating the trampoline here, we propagate in bpf_tramp_ftrace_ops_func()
49 * trampoline. in bpf_tramp_ftrace_ops_func()
73 * (something else is making changes to this same trampoline). in bpf_tramp_ftrace_ops_func()
297 /* the case of fmod_ret/fexit trampoline and CONFIG_PREEMPTION=y */ in __bpf_tramp_image_put_rcu_tasks()
300 /* the case of fentry trampoline */ in __bpf_tramp_image_put_rcu_tasks()
306 /* The trampoline image that calls original function is using: in bpf_tramp_image_put()
309 * percpu_ref to protect trampoline itself in bpf_tramp_image_put()
310 * rcu tasks to protect trampoline asm not covered by percpu_ref in bpf_tramp_image_put()
314 * The trampoline is unreachable before bpf_tramp_image_put(). in bpf_tramp_image_put()
316 * First, patch the trampoline t in bpf_tramp_image_put()
[all...]
H A DMakefile16 obj-$(CONFIG_BPF_JIT) += trampoline.o
/kernel/linux/linux-5.10/kernel/bpf/
H A DMakefile14 obj-$(CONFIG_BPF_JIT) += trampoline.o
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/gem/
H A Di915_gem_execbuffer.c261 struct i915_vma *trampoline; /** trampoline used for chaining */ member
2288 struct i915_vma *shadow, *trampoline, *batch; in eb_parse() local
2340 trampoline = NULL; in eb_parse()
2342 trampoline = shadow; in eb_parse()
2367 shadow, trampoline); in eb_parse()
2375 eb->trampoline = trampoline; in eb_parse()
2426 if (eb->trampoline) { in eb_request_submit()
2430 i915_vma_offset(eb->trampoline) in eb_request_submit()
[all...]
/kernel/linux/linux-5.10/arch/x86/realmode/rm/
H A Dtrampoline_64.S11 * trampoline page to make our stack and everything else
141 # Setup trampoline 4 level pagetables
/kernel/linux/linux-5.10/arch/s390/kernel/
H A Duprobes.c143 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()
H A Dkprobes.c253 /* Replace the return addr with trampoline addr */ in arch_prepare_kretprobe()
339 * Function return probe trampoline:
351 * Called when the probe at kretprobe trampoline is hit
536 static struct kprobe trampoline = { variable
543 return register_kprobe(&trampoline); in arch_init_kprobes()
/kernel/linux/linux-6.6/arch/x86/realmode/rm/
H A Dtrampoline_64.S11 * trampoline page to make our stack and everything else
157 # Setup trampoline 4 level pagetables
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/
H A Di915_cmd_parser.c1414 * @trampoline: whether to emit a conditional trampoline at the end of the batch
1428 bool trampoline) in intel_engine_cmd_parser()
1451 if (!trampoline) in intel_engine_cmd_parser()
1515 if (trampoline) { in intel_engine_cmd_parser()
1517 * With the trampoline, the shadow is executed twice. in intel_engine_cmd_parser()
1423 intel_engine_cmd_parser(struct intel_engine_cs *engine, struct i915_vma *batch, unsigned long batch_offset, unsigned long batch_length, struct i915_vma *shadow, bool trampoline) intel_engine_cmd_parser() argument

Completed in 29 milliseconds

12