Home
last modified time | relevance | path

Searched refs:fregs (Results 1 – 25 of 46) sorted by relevance

12

/linux-6.15/arch/arm64/include/asm/
H A Dftrace.h63 #define arch_ftrace_regs(fregs) ((struct __arch_ftrace_regs *)(fregs)) argument
91 return arch_ftrace_regs(fregs)->pc; in ftrace_regs_get_instruction_pointer()
98 arch_ftrace_regs(fregs)->pc = pc; in ftrace_regs_set_instruction_pointer()
104 return arch_ftrace_regs(fregs)->sp; in ftrace_regs_get_stack_pointer()
111 return arch_ftrace_regs(fregs)->regs[n]; in ftrace_regs_get_argument()
118 return arch_ftrace_regs(fregs)->regs[0]; in ftrace_regs_get_return_value()
125 arch_ftrace_regs(fregs)->regs[0] = ret; in ftrace_regs_set_return_value()
131 arch_ftrace_regs(fregs)->pc = arch_ftrace_regs(fregs)->lr; in ftrace_override_function_with_return()
137 return arch_ftrace_regs(fregs)->fp; in ftrace_regs_get_frame_pointer()
143 return arch_ftrace_regs(fregs)->lr; in ftrace_regs_get_return_address()
[all …]
/linux-6.15/include/linux/
H A Dftrace_regs.h15 #define arch_ftrace_regs(fregs) ((struct __arch_ftrace_regs *)(fregs)) argument
19 #define ftrace_regs_get_instruction_pointer(fregs) \ argument
20 instruction_pointer(&arch_ftrace_regs(fregs)->regs)
21 #define ftrace_regs_get_argument(fregs, n) \ argument
23 #define ftrace_regs_get_stack_pointer(fregs) \ argument
24 kernel_stack_pointer(&arch_ftrace_regs(fregs)->regs)
25 #define ftrace_regs_get_return_value(fregs) \ argument
26 regs_return_value(&arch_ftrace_regs(fregs)->regs)
27 #define ftrace_regs_set_return_value(fregs, ret) \ argument
33 #define ftrace_regs_get_frame_pointer(fregs) \ argument
[all …]
H A Dftrace.h67 struct ftrace_ops *op, struct ftrace_regs *fregs);
168 return &arch_ftrace_regs(fregs)->regs; in arch_ftrace_get_regs()
187 if (!fregs) in ftrace_get_regs()
190 return arch_ftrace_get_regs(fregs); in ftrace_get_regs()
205 return &arch_ftrace_regs(fregs)->regs; in ftrace_partial_regs()
227 arch_ftrace_fill_perf_regs(fregs, regs); in ftrace_fill_perf_regs()
236 return &arch_ftrace_regs(fregs)->regs; in ftrace_fill_perf_regs()
250 return ftrace_get_regs(fregs) != NULL; in ftrace_regs_has_args()
493 struct ftrace_ops *op, struct ftrace_regs *fregs);
1168 struct ftrace_regs *fregs);
[all …]
/linux-6.15/arch/riscv/include/asm/
H A Dftrace.h130 #define arch_ftrace_regs(fregs) ((struct __arch_ftrace_regs *)(fregs)) argument
154 *fregs) in ftrace_regs_get_instruction_pointer()
156 return arch_ftrace_regs(fregs)->epc; in ftrace_regs_get_instruction_pointer()
162 arch_ftrace_regs(fregs)->epc = pc; in ftrace_regs_set_instruction_pointer()
167 return arch_ftrace_regs(fregs)->sp; in ftrace_regs_get_stack_pointer()
172 return arch_ftrace_regs(fregs)->s0; in ftrace_regs_get_frame_pointer()
185 return arch_ftrace_regs(fregs)->a0; in ftrace_regs_get_return_value()
190 return arch_ftrace_regs(fregs)->ra; in ftrace_regs_get_return_address()
196 arch_ftrace_regs(fregs)->a0 = ret; in ftrace_regs_set_return_value()
201 arch_ftrace_regs(fregs)->epc = arch_ftrace_regs(fregs)->ra; in ftrace_override_function_with_return()
[all …]
/linux-6.15/arch/sh/math-emu/
H A Dmath.c28 #define FPUL (fregs->fpul)
29 #define FPSCR (fregs->fpscr)
38 #define FR ((unsigned long*)(fregs->fp_regs))
42 #define DR ((unsigned long long*)(fregs->fp_regs))
408 fxchg(fregs, flag[x >> 2]); in id_fxfd()
411 ftrv(fregs, x - 1); in id_fxfd()
414 fsca(fregs, x); in id_fxfd()
422 return (fnxd[x])(fregs, n); in id_fnxd()
429 return (fnmx[x])(fregs, regs, m, n); in id_fnmx()
467 return id_fnmx(fregs, regs, code); in fpu_emulate()
[all …]
/linux-6.15/arch/s390/include/asm/
H A Dftrace.h60 struct pt_regs *regs = &arch_ftrace_regs(fregs)->regs; in arch_ftrace_get_regs()
68 ftrace_regs_set_instruction_pointer(struct ftrace_regs *fregs, in ftrace_regs_set_instruction_pointer() argument
71 arch_ftrace_regs(fregs)->regs.psw.addr = ip; in ftrace_regs_set_instruction_pointer()
76 ftrace_regs_get_frame_pointer(struct ftrace_regs *fregs) in ftrace_regs_get_frame_pointer() argument
78 return ftrace_regs_get_stack_pointer(fregs); in ftrace_regs_get_frame_pointer()
82 ftrace_regs_get_return_address(const struct ftrace_regs *fregs) in ftrace_regs_get_return_address() argument
84 return arch_ftrace_regs(fregs)->regs.gprs[14]; in ftrace_regs_get_return_address()
87 #define arch_ftrace_fill_perf_regs(fregs, _regs) do { \ argument
89 (_regs)->psw.addr = arch_ftrace_regs(fregs)->regs.psw.addr; \
103 struct pt_regs *regs = &arch_ftrace_regs(fregs)->regs; in arch_ftrace_set_direct_caller()
[all …]
/linux-6.15/arch/loongarch/include/asm/
H A Dftrace.h49 static __always_inline struct pt_regs *arch_ftrace_get_regs(struct ftrace_regs *fregs) in arch_ftrace_get_regs() argument
51 return &arch_ftrace_regs(fregs)->regs; in arch_ftrace_get_regs()
55 ftrace_regs_set_instruction_pointer(struct ftrace_regs *fregs, unsigned long ip) in ftrace_regs_set_instruction_pointer() argument
57 instruction_pointer_set(&arch_ftrace_regs(fregs)->regs, ip); in ftrace_regs_set_instruction_pointer()
61 #define ftrace_regs_get_frame_pointer(fregs) \ argument
62 (arch_ftrace_regs(fregs)->regs.regs[22])
65 ftrace_regs_get_return_address(struct ftrace_regs *fregs) in ftrace_regs_get_return_address() argument
67 return *(unsigned long *)(arch_ftrace_regs(fregs)->regs.regs[1]); in ftrace_regs_get_return_address()
72 struct ftrace_ops *op, struct ftrace_regs *fregs);
81 #define arch_ftrace_set_direct_caller(fregs, addr) \ argument
[all …]
/linux-6.15/arch/x86/include/asm/
H A Dftrace.h51 arch_ftrace_get_regs(struct ftrace_regs *fregs) in arch_ftrace_get_regs() argument
54 if (!arch_ftrace_regs(fregs)->regs.cs) in arch_ftrace_get_regs()
56 return &arch_ftrace_regs(fregs)->regs; in arch_ftrace_get_regs()
59 #define arch_ftrace_fill_perf_regs(fregs, _regs) do { \ argument
60 (_regs)->ip = arch_ftrace_regs(fregs)->regs.ip; \
61 (_regs)->sp = arch_ftrace_regs(fregs)->regs.sp; \
66 #define ftrace_regs_set_instruction_pointer(fregs, _ip) \ argument
67 do { arch_ftrace_regs(fregs)->regs.ip = (_ip); } while (0)
71 ftrace_regs_get_return_address(struct ftrace_regs *fregs) in ftrace_regs_get_return_address() argument
79 struct ftrace_ops *op, struct ftrace_regs *fregs);
[all …]
/linux-6.15/arch/powerpc/include/asm/
H A Dftrace.h40 static __always_inline struct pt_regs *arch_ftrace_get_regs(struct ftrace_regs *fregs) in arch_ftrace_get_regs() argument
43 return arch_ftrace_regs(fregs)->regs.msr ? &arch_ftrace_regs(fregs)->regs : NULL; in arch_ftrace_get_regs()
46 #define arch_ftrace_fill_perf_regs(fregs, _regs) do { \ argument
48 (_regs)->nip = arch_ftrace_regs(fregs)->regs.nip; \
49 (_regs)->gpr[1] = arch_ftrace_regs(fregs)->regs.gpr[1]; \
54 ftrace_regs_set_instruction_pointer(struct ftrace_regs *fregs, in ftrace_regs_set_instruction_pointer() argument
57 regs_set_return_ip(&arch_ftrace_regs(fregs)->regs, ip); in ftrace_regs_set_instruction_pointer()
61 ftrace_regs_get_return_address(struct ftrace_regs *fregs) in ftrace_regs_get_return_address() argument
63 return arch_ftrace_regs(fregs)->regs.link; in ftrace_regs_get_return_address()
70 struct ftrace_ops *op, struct ftrace_regs *fregs);
[all …]
/linux-6.15/kernel/trace/
H A Dtrace_fprobe.c137 struct ftrace_regs *fregs = rec; in process_fetch_insn() local
148 val = ftrace_regs_get_stack_pointer(fregs); in process_fetch_insn()
151 val = ftrace_regs_get_return_value(fregs); in process_fetch_insn()
178 struct ftrace_regs *fregs, in NOKPROBE_SYMBOL()
199 fbuffer.regs = ftrace_get_regs(fregs); in NOKPROBE_SYMBOL()
209 struct ftrace_regs *fregs) in fentry_trace_func() argument
285 fbuffer.regs = ftrace_get_regs(fregs); in NOKPROBE_SYMBOL()
308 struct ftrace_regs *fregs) in fentry_perf_func() argument
330 regs = ftrace_fill_perf_regs(fregs, regs); in fentry_perf_func()
366 regs = ftrace_fill_perf_regs(fregs, regs); in fexit_perf_func()
[all …]
H A Dtrace_functions.c26 struct ftrace_ops *op, struct ftrace_regs *fregs);
29 struct ftrace_ops *op, struct ftrace_regs *fregs);
32 struct ftrace_ops *op, struct ftrace_regs *fregs);
35 struct ftrace_ops *op, struct ftrace_regs *fregs);
39 struct ftrace_regs *fregs);
209 struct ftrace_ops *op, struct ftrace_regs *fregs) in function_trace_call() argument
236 struct ftrace_ops *op, struct ftrace_regs *fregs) in function_args_trace_call() argument
256 trace_function(tr, ip, parent_ip, trace_ctx, fregs); in function_args_trace_call()
281 struct ftrace_ops *op, struct ftrace_regs *fregs) in function_stack_trace_call() argument
351 struct ftrace_regs *fregs) in function_no_repeats_trace_call() argument
[all …]
H A Dfgraph.c296 struct ftrace_regs *fregs) in entry_run() argument
303 struct ftrace_regs *fregs) in return_run() argument
526 struct ftrace_regs *fregs) in ftrace_graph_entry_stub() argument
533 struct ftrace_regs *fregs) in ftrace_graph_ret_stub() argument
653 struct ftrace_regs *fregs) in function_graph_enter_regs() argument
829 if (fregs) in __ftrace_return_to_handler()
851 gops->retfunc(&trace, gops, fregs); in __ftrace_return_to_handler()
874 return __ftrace_return_to_handler(fregs, in ftrace_return_to_handler()
875 ftrace_regs_get_frame_pointer(fregs)); in ftrace_return_to_handler()
1024 struct ftrace_regs *fregs);
[all …]
H A Dfprobe.c218 struct fprobe *fp, struct ftrace_regs *fregs, in __fprobe_handler() argument
224 return fp->entry_handler(fp, ip, parent_ip, fregs, data); in __fprobe_handler()
228 struct fprobe *fp, struct ftrace_regs *fregs, in __fprobe_kprobe_handler() argument
244 ret = __fprobe_handler(ip, parent_ip, fp, fregs, data); in __fprobe_kprobe_handler()
250 struct ftrace_regs *fregs) in fprobe_entry() argument
260 if (WARN_ON_ONCE(!fregs)) in fprobe_entry()
300 ret_ip = ftrace_regs_get_return_address(fregs); in fprobe_entry()
321 ret = __fprobe_handler(func, ret_ip, fp, fregs, data); in fprobe_entry()
341 struct ftrace_regs *fregs) in fprobe_return() argument
353 ret_ip = ftrace_regs_get_instruction_pointer(fregs); in fprobe_return()
[all …]
H A Dtrace_selftest.c111 struct ftrace_regs *fregs) in trace_selftest_test_probe1_func() argument
120 struct ftrace_regs *fregs) in trace_selftest_test_probe2_func() argument
129 struct ftrace_regs *fregs) in trace_selftest_test_probe3_func() argument
138 struct ftrace_regs *fregs) in trace_selftest_test_global_func() argument
147 struct ftrace_regs *fregs) in trace_selftest_test_dyn_func() argument
452 struct ftrace_regs *fregs) in trace_selftest_test_recursion_func() argument
467 struct ftrace_regs *fregs) in trace_selftest_test_recursion_safe_func() argument
586 struct ftrace_regs *fregs) in trace_selftest_test_regs_func() argument
778 struct ftrace_regs *fregs) in store_entry() argument
812 struct ftrace_regs *fregs) in store_return() argument
[all …]
/linux-6.15/arch/mips/kernel/
H A Dptrace32.c95 union fpureg *fregs; in compat_arch_ptrace() local
102 fregs = get_fpu_regs(child); in compat_arch_ptrace()
109 tmp = get_fpr32(&fregs[(addr & ~1) - FPR_BASE], in compat_arch_ptrace()
113 tmp = get_fpr64(&fregs[addr - FPR_BASE], 0); in compat_arch_ptrace()
211 union fpureg *fregs = get_fpu_regs(child); in compat_arch_ptrace() local
225 set_fpr32(&fregs[(addr & ~1) - FPR_BASE], in compat_arch_ptrace()
229 set_fpr64(&fregs[addr - FPR_BASE], 0, data); in compat_arch_ptrace()
H A Dptrace.c367 union fpureg *fregs = get_fpu_regs(child); in ptrace_getfpregs() local
369 __put_user(get_fpr64(&fregs[i], 0), in ptrace_getfpregs()
384 union fpureg *fregs; in ptrace_setfpregs() local
393 fregs = get_fpu_regs(child); in ptrace_setfpregs()
397 set_fpr64(&fregs[i], 0, fpr_val); in ptrace_setfpregs()
1111 union fpureg *fregs; in arch_ptrace() local
1118 fregs = get_fpu_regs(child); in arch_ptrace()
1132 tmp = get_fpr64(&fregs[addr - FPR_BASE], 0); in arch_ptrace()
1215 union fpureg *fregs = get_fpu_regs(child); in arch_ptrace() local
1225 set_fpr32(&fregs[(addr & ~1) - FPR_BASE], in arch_ptrace()
[all …]
/linux-6.15/arch/s390/kernel/
H A Dftrace.c267 struct ftrace_ops *op, struct ftrace_regs *fregs) in ftrace_graph_func() argument
269 unsigned long *parent = &arch_ftrace_regs(fregs)->regs.gprs[14]; in ftrace_graph_func()
270 unsigned long sp = arch_ftrace_regs(fregs)->regs.gprs[15]; in ftrace_graph_func()
276 if (!function_graph_enter_regs(*parent, ip, 0, (unsigned long *)sp, fregs)) in ftrace_graph_func()
284 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
298 kmsan_unpoison_memory(fregs, ftrace_regs_size()); in kprobe_ftrace_handler()
299 regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/riscv/kernel/
H A Dftrace.c215 struct ftrace_ops *op, struct ftrace_regs *fregs) in ftrace_graph_func() argument
218 unsigned long frame_pointer = arch_ftrace_regs(fregs)->s0; in ftrace_graph_func()
219 unsigned long *parent = &arch_ftrace_regs(fregs)->ra; in ftrace_graph_func()
231 if (!function_graph_enter_regs(old, ip, frame_pointer, parent, fregs)) in ftrace_graph_func()
/linux-6.15/arch/parisc/kernel/
H A Dftrace.c59 struct ftrace_regs *fregs) in ftrace_function_trampoline() argument
63 ftrace_func(self_addr, parent, function_trace_op, fregs); in ftrace_function_trampoline()
202 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
216 regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/loongarch/kernel/
H A Dftrace_dyn.c241 struct ftrace_ops *op, struct ftrace_regs *fregs) in ftrace_graph_func() argument
243 struct pt_regs *regs = &arch_ftrace_regs(fregs)->regs; in ftrace_graph_func()
253 if (!function_graph_enter_regs(old, ip, 0, parent, fregs)) in ftrace_graph_func()
290 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
308 regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/powerpc/kernel/
H A Dkprobes-ftrace.c17 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
31 regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/x86/kernel/kprobes/
H A Dftrace.c18 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
20 struct pt_regs *regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/csky/kernel/probes/
H A Dftrace.c7 struct ftrace_ops *ops, struct ftrace_regs *fregs) in kprobe_ftrace_handler() argument
22 regs = ftrace_get_regs(fregs); in kprobe_ftrace_handler()
/linux-6.15/arch/sparc/math-emu/
H A Dmath_32.c133 static int do_one_mathemu(u32 insn, unsigned long *fsr, unsigned long *fregs);
275 static int do_one_mathemu(u32 insn, unsigned long *pfsr, unsigned long *fregs) in do_one_mathemu() argument
369 rs1 = (argp)&fregs[freg]; in do_one_mathemu()
390 rs2 = (argp)&fregs[freg]; in do_one_mathemu()
419 rd = (void *)&fregs[freg]; in do_one_mathemu()
/linux-6.15/arch/arm64/kernel/
H A Dftrace.c544 struct ftrace_ops *op, struct ftrace_regs *fregs) in ftrace_graph_func() argument
547 unsigned long frame_pointer = arch_ftrace_regs(fregs)->fp; in ftrace_graph_func()
548 unsigned long *parent = &arch_ftrace_regs(fregs)->lr; in ftrace_graph_func()
557 (void *)frame_pointer, fregs)) { in ftrace_graph_func()

12