Lines Matching refs:pt_regs
168 /* s390 provides user_pt_regs instead of struct pt_regs to userspace */
227 /* arm64 provides struct user_pt_regs instead of struct pt_regs to userspace */
354 /* riscv provides struct user_regs_struct instead of struct pt_regs to userspace */
385 /* arc provides struct user_regs_struct instead of struct pt_regs to userspace */
418 /* loongarch provides struct user_pt_regs instead of struct pt_regs to userspace */
448 struct pt_regs;
450 /* allow some architectures to override `struct pt_regs` */
614 * struct pt_regs containing syscall arguments and suitable for passing to
619 #define PT_REGS_SYSCALL_REGS(ctx) ((struct pt_regs *)PT_REGS_PARM1(ctx))
786 struct pt_regs;
802 * low-level way of getting kprobe input arguments from struct pt_regs, and
806 * Original struct pt_regs* context is preserved as 'ctx' argument. This might
810 name(struct pt_regs *ctx); \
812 ____##name(struct pt_regs *ctx, ##args); \
813 typeof(name(0)) name(struct pt_regs *ctx) \
821 ____##name(struct pt_regs *ctx, ##args)
829 * return value (in addition to `struct pt_regs *ctx`), but no input
834 name(struct pt_regs *ctx); \
836 ____##name(struct pt_regs *ctx, ##args); \
837 typeof(name(0)) name(struct pt_regs *ctx) \
844 static __always_inline typeof(name(0)) ____##name(struct pt_regs *ctx, ##args)
846 /* If kernel has CONFIG_ARCH_HAS_SYSCALL_WRAPPER, read pt_regs directly */
857 /* If kernel doesn't have CONFIG_ARCH_HAS_SYSCALL_WRAPPER, we have to BPF_CORE_READ from pt_regs */
872 * struct pt_regs, and provides a familiar typed and named function arguments
875 * Original struct pt_regs * context is preserved as 'ctx' argument. This might
893 name(struct pt_regs *ctx); \
896 ____##name(struct pt_regs *ctx, ##args); \
897 typeof(name(0)) name(struct pt_regs *ctx) \
899 struct pt_regs *regs = LINUX_HAS_SYSCALL_WRAPPER \
900 ? (struct pt_regs *)PT_REGS_PARM1(ctx) \
911 ____##name(struct pt_regs *ctx, ##args)