/linux/arch/arm64/kernel/ |
H A D | entry-common.c | 39 static __always_inline void __enter_from_kernel_mode(struct pt_regs *regs) in __enter_from_kernel_mode() argument 41 regs->exit_rcu = false; in __enter_from_kernel_mode() 48 regs->exit_rcu = true; in __enter_from_kernel_mode() 57 static void noinstr enter_from_kernel_mode(struct pt_regs *regs) in enter_from_kernel_mode() argument 59 __enter_from_kernel_mode(regs); in enter_from_kernel_mode() 72 static __always_inline void __exit_to_kernel_mode(struct pt_regs *regs) in __exit_to_kernel_mode() argument 76 if (interrupts_enabled(regs)) { in __exit_to_kernel_mode() 77 if (regs->exit_rcu) { in __exit_to_kernel_mode() 87 if (regs->exit_rcu) in __exit_to_kernel_mode() 92 static void noinstr exit_to_kernel_mode(struct pt_regs *regs) in exit_to_kernel_mode() argument [all …]
|
/linux/arch/riscv/kernel/ |
H A D | traps.c | 40 static int copy_code(struct pt_regs *regs, u16 *val, const u16 *insns) in copy_code() argument 44 if (!user_mode(regs)) in copy_code() 48 if (regs != task_pt_regs(current)) in copy_code() 54 static void dump_instr(const char *loglvl, struct pt_regs *regs) in dump_instr() argument 57 const u16 *insns = (u16 *)instruction_pointer(regs); in dump_instr() 63 bad = copy_code(regs, &val, &insns[i]); in dump_instr() 75 void die(struct pt_regs *regs, const char *str) in die() argument 90 if (regs) { in die() 91 show_regs(regs); in die() 92 dump_instr(KERN_EMERG, regs); in die() [all …]
|
/linux/arch/x86/entry/ |
H A D | entry_fred.c | 21 static noinstr void fred_bad_type(struct pt_regs *regs, unsigned long error_code) in fred_bad_type() argument 23 irqentry_state_t irq_state = irqentry_nmi_enter(regs); in fred_bad_type() 28 if (regs->fred_cs.sl > 0) { in fred_bad_type() 31 regs->fred_ss.type, regs->fred_ss.vector, error_code, in fred_bad_type() 32 fred_event_data(regs), regs->cs, regs->ip); in fred_bad_type() 33 die("invalid or fatal FRED event", regs, error_code); in fred_bad_type() 41 regs->fred_ss.type, regs->fred_ss.vector, error_code, in fred_bad_type() 42 fred_event_data(regs), regs->cs, regs->ip); in fred_bad_type() 44 if (__die("Invalid or fatal FRED event", regs, error_code)) in fred_bad_type() 47 oops_end(flags, regs, sig); in fred_bad_type() [all …]
|
/linux/arch/csky/kernel/probes/ |
H A D | simulate-insn.c | 10 static inline bool csky_insn_reg_get_val(struct pt_regs *regs, in csky_insn_reg_get_val() argument 15 *ptr = *(®s->a0 + index); in csky_insn_reg_get_val() 18 *ptr = *(®s->exregs[0] + index - 16); in csky_insn_reg_get_val() 22 *ptr = regs->usp; in csky_insn_reg_get_val() 25 *ptr = regs->lr; in csky_insn_reg_get_val() 28 *ptr = regs->tls; in csky_insn_reg_get_val() 39 static inline bool csky_insn_reg_set_val(struct pt_regs *regs, in csky_insn_reg_set_val() argument 44 *(®s->a0 + index) = val; in csky_insn_reg_set_val() 47 *(®s->exregs[0] + index - 16) = val; in csky_insn_reg_set_val() 51 regs->usp = val; in csky_insn_reg_set_val() [all …]
|
/linux/drivers/media/platform/samsung/s5p-jpeg/ |
H A D | jpeg-hw-s5p.c | 14 #include "jpeg-regs.h" 17 void s5p_jpeg_reset(void __iomem *regs) in s5p_jpeg_reset() argument 21 writel(1, regs + S5P_JPG_SW_RESET); in s5p_jpeg_reset() 22 reg = readl(regs + S5P_JPG_SW_RESET); in s5p_jpeg_reset() 26 reg = readl(regs + S5P_JPG_SW_RESET); in s5p_jpeg_reset() 30 void s5p_jpeg_poweron(void __iomem *regs) in s5p_jpeg_poweron() argument 32 writel(S5P_POWER_ON, regs + S5P_JPGCLKCON); in s5p_jpeg_poweron() 35 void s5p_jpeg_input_raw_mode(void __iomem *regs, unsigned long mode) in s5p_jpeg_input_raw_mode() argument 45 reg = readl(regs + S5P_JPGCMOD); in s5p_jpeg_input_raw_mode() 48 writel(reg, regs + S5P_JPGCMOD); in s5p_jpeg_input_raw_mode() [all …]
|
/linux/arch/riscv/include/asm/ |
H A D | compat.h | 74 struct pt_regs *regs) in regs_to_cregs() argument 76 cregs->pc = (compat_ulong_t) regs->epc; in regs_to_cregs() 77 cregs->ra = (compat_ulong_t) regs->ra; in regs_to_cregs() 78 cregs->sp = (compat_ulong_t) regs->sp; in regs_to_cregs() 79 cregs->gp = (compat_ulong_t) regs->gp; in regs_to_cregs() 80 cregs->tp = (compat_ulong_t) regs->tp; in regs_to_cregs() 81 cregs->t0 = (compat_ulong_t) regs->t0; in regs_to_cregs() 82 cregs->t1 = (compat_ulong_t) regs->t1; in regs_to_cregs() 83 cregs->t2 = (compat_ulong_t) regs->t2; in regs_to_cregs() 84 cregs->s0 = (compat_ulong_t) regs->s0; in regs_to_cregs() [all …]
|
/linux/arch/hexagon/kernel/ |
H A D | vm_events.c | 16 * @regs: pointer to pt_regs 22 void show_regs(struct pt_regs *regs) in show_regs() argument 27 regs->restart_r0, regs->syscall_nr); in show_regs() 28 printk(KERN_EMERG "preds: \t\t0x%08lx\n", regs->preds); in show_regs() 30 regs->lc0, regs->sa0, regs->m0); in show_regs() 32 regs->lc1, regs->sa1, regs->m1); in show_regs() 34 regs->gp, regs->ugp, regs->usr); in show_regs() 36 regs->cs0, regs->cs1); in show_regs() 37 printk(KERN_EMERG "r0: \t0x%08lx %08lx %08lx %08lx\n", regs->r00, in show_regs() 38 regs->r01, in show_regs() [all …]
|
H A D | signal.c | 27 static void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs, in get_sigframe() argument 30 unsigned long sp = sigsp(regs->r29, ksig); in get_sigframe() 35 static int setup_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc) in setup_sigcontext() argument 40 err |= copy_to_user(&sc->sc_regs.r0, ®s->r00, in setup_sigcontext() 43 err |= __put_user(regs->sa0, &sc->sc_regs.sa0); in setup_sigcontext() 44 err |= __put_user(regs->lc0, &sc->sc_regs.lc0); in setup_sigcontext() 45 err |= __put_user(regs->sa1, &sc->sc_regs.sa1); in setup_sigcontext() 46 err |= __put_user(regs->lc1, &sc->sc_regs.lc1); in setup_sigcontext() 47 err |= __put_user(regs->m0, &sc->sc_regs.m0); in setup_sigcontext() 48 err |= __put_user(regs->m1, &sc->sc_regs.m1); in setup_sigcontext() [all …]
|
/linux/arch/parisc/include/asm/ |
H A D | assembly.h | 209 .macro save_general regs 210 STREG %r1, PT_GR1 (\regs) 211 STREG %r2, PT_GR2 (\regs) 212 STREG %r3, PT_GR3 (\regs) 213 STREG %r4, PT_GR4 (\regs) 214 STREG %r5, PT_GR5 (\regs) 215 STREG %r6, PT_GR6 (\regs) 216 STREG %r7, PT_GR7 (\regs) 217 STREG %r8, PT_GR8 (\regs) 218 STREG %r9, PT_GR9 (\regs) [all …]
|
/linux/arch/csky/abiv2/inc/abi/ |
H A D | elf.h | 7 #define ELF_CORE_COPY_REGS(pr_reg, regs) do { \ argument 8 pr_reg[0] = regs->pc; \ 9 pr_reg[1] = regs->a1; \ 10 pr_reg[2] = regs->a0; \ 11 pr_reg[3] = regs->sr; \ 12 pr_reg[4] = regs->a2; \ 13 pr_reg[5] = regs->a3; \ 14 pr_reg[6] = regs->regs[0]; \ 15 pr_reg[7] = regs->regs[1]; \ 16 pr_reg[8] = regs->regs[2]; \ [all …]
|
/linux/arch/arc/kernel/ |
H A D | signal.c | 24 * -In stash_usr_regs( ) and restore_usr_regs( ), save/restore of user regs 66 static int save_arcv2_regs(struct sigcontext __user *mctx, struct pt_regs *regs) in save_arcv2_regs() argument 72 v2abi.r30 = regs->r30; in save_arcv2_regs() 74 v2abi.r58 = regs->r58; in save_arcv2_regs() 75 v2abi.r59 = regs->r59; in save_arcv2_regs() 84 static int restore_arcv2_regs(struct sigcontext __user *mctx, struct pt_regs *regs) in restore_arcv2_regs() argument 92 regs->r30 = v2abi.r30; in restore_arcv2_regs() 94 regs->r58 = v2abi.r58; in restore_arcv2_regs() 95 regs->r59 = v2abi.r59; in restore_arcv2_regs() 102 stash_usr_regs(struct rt_sigframe __user *sf, struct pt_regs *regs, in stash_usr_regs() argument [all …]
|
/linux/arch/sh/kernel/ |
H A D | signal_32.c | 90 struct pt_regs *regs) in save_sigcontext_fpu() argument 108 unlazy_fpu(tsk, regs); in save_sigcontext_fpu() 115 restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, int *r0_p) in restore_sigcontext() argument 118 unsigned int sr = regs->sr & ~SR_USER_MASK; in restore_sigcontext() 120 #define COPY(x) err |= __get_user(regs->x, &sc->sc_##x) in restore_sigcontext() 121 COPY(regs[1]); in restore_sigcontext() 122 COPY(regs[2]); COPY(regs[3]); in restore_sigcontext() 123 COPY(regs[4]); COPY(regs[5]); in restore_sigcontext() 124 COPY(regs[6]); COPY(regs[7]); in restore_sigcontext() 125 COPY(regs[8]); COPY(regs[9]); in restore_sigcontext() [all …]
|
/linux/arch/openrisc/kernel/ |
H A D | traps.c | 43 asmlinkage void unhandled_exception(struct pt_regs *regs, int ea, int vector); 44 asmlinkage void do_trap(struct pt_regs *regs, unsigned long address); 45 asmlinkage void do_fpe_trap(struct pt_regs *regs, unsigned long address); 46 asmlinkage void do_unaligned_access(struct pt_regs *regs, unsigned long address); 47 asmlinkage void do_bus_fault(struct pt_regs *regs, unsigned long address); 48 asmlinkage void do_illegal_instruction(struct pt_regs *regs, 77 void show_registers(struct pt_regs *regs) in show_registers() argument 83 esp = (unsigned long)(regs->sp); in show_registers() 84 if (user_mode(regs)) in show_registers() 89 smp_processor_id(), regs->pc, regs->sr, regs->sp); in show_registers() [all …]
|
/linux/tools/testing/selftests/x86/ |
H A D | ptrace_syscall.c | 53 * Helper to invoke int80 with controlled regs and capture the final regs. 75 * controlled regs and capture the final regs. This is so nasty that it 152 printf("[FAIL]\tgetpid() failed to preserve regs\n"); in test_sys32_regs() 155 printf("[OK]\tgetpid() preserves regs\n"); in test_sys32_regs() 167 printf("[FAIL]\tkill(getpid(), SIGUSR1) failed to preserve regs\n"); in test_sys32_regs() 170 printf("[OK]\tkill(getpid(), SIGUSR1) preserves regs\n"); in test_sys32_regs() 201 struct user_regs_struct regs; in test_ptrace_syscall_restart() local 208 if (ptrace(PTRACE_GETREGS, chld, 0, ®s) != 0) in test_ptrace_syscall_restart() 211 if (regs.user_syscall_nr != SYS_gettid || in test_ptrace_syscall_restart() 212 regs.user_arg0 != 10 || regs.user_arg1 != 11 || in test_ptrace_syscall_restart() [all …]
|
/linux/arch/mips/kernel/ |
H A D | branch.c | 29 int __isa_exception_epc(struct pt_regs *regs) in __isa_exception_epc() argument 32 long epc = regs->cp0_epc; in __isa_exception_epc() 59 int __mm_isBranchInstr(struct pt_regs *regs, struct mm_decoded_insn dec_insn, in __mm_isBranchInstr() argument 79 regs->regs[insn.mm_i_format.rt] = in __mm_isBranchInstr() 80 regs->cp0_epc + in __mm_isBranchInstr() 83 *contpc = regs->regs[insn.mm_i_format.rs]; in __mm_isBranchInstr() 92 regs->regs[31] = regs->cp0_epc + in __mm_isBranchInstr() 97 if ((long)regs->regs[insn.mm_i_format.rs] < 0) in __mm_isBranchInstr() 98 *contpc = regs->cp0_epc + in __mm_isBranchInstr() 102 *contpc = regs->cp0_epc + in __mm_isBranchInstr() [all …]
|
/linux/drivers/media/tuners/ |
H A D | tda18271-common.c | 57 unsigned char *regs = priv->tda18271_regs; in tda18271_dump_regs() local 60 tda_reg("ID_BYTE = 0x%02x\n", 0xff & regs[R_ID]); in tda18271_dump_regs() 61 tda_reg("THERMO_BYTE = 0x%02x\n", 0xff & regs[R_TM]); in tda18271_dump_regs() 62 tda_reg("POWER_LEVEL_BYTE = 0x%02x\n", 0xff & regs[R_PL]); in tda18271_dump_regs() 63 tda_reg("EASY_PROG_BYTE_1 = 0x%02x\n", 0xff & regs[R_EP1]); in tda18271_dump_regs() 64 tda_reg("EASY_PROG_BYTE_2 = 0x%02x\n", 0xff & regs[R_EP2]); in tda18271_dump_regs() 65 tda_reg("EASY_PROG_BYTE_3 = 0x%02x\n", 0xff & regs[R_EP3]); in tda18271_dump_regs() 66 tda_reg("EASY_PROG_BYTE_4 = 0x%02x\n", 0xff & regs[R_EP4]); in tda18271_dump_regs() 67 tda_reg("EASY_PROG_BYTE_5 = 0x%02x\n", 0xff & regs[R_EP5]); in tda18271_dump_regs() 68 tda_reg("CAL_POST_DIV_BYTE = 0x%02x\n", 0xff & regs[R_CPD]); in tda18271_dump_regs() [all …]
|
/linux/arch/parisc/kernel/ |
H A D | traps.c | 59 struct pt_regs *regs, const char *loglvl); 85 static void print_gr(const char *level, struct pt_regs *regs) in print_gr() argument 92 printbinary(buf, regs->gr[0], 32); in print_gr() 96 PRINTREGS(level, regs->gr, "r", RFMT, i); in print_gr() 99 static void print_fr(const char *level, struct pt_regs *regs) in print_fr() argument 123 PRINTREGS(level, regs->fr, "fr", FFMT, i); in print_fr() 126 void show_regs(struct pt_regs *regs) in show_regs() argument 132 user = user_mode(regs); in show_regs() 137 print_gr(level, regs); in show_regs() 140 PRINTREGS(level, regs->sr, "sr", RFMT, i); in show_regs() [all …]
|
/linux/arch/x86/um/asm/ |
H A D | elf.h | 38 #define ELF_PLAT_INIT(regs, load_addr) do { \ argument 39 PT_REGS_BX(regs) = 0; \ 40 PT_REGS_CX(regs) = 0; \ 41 PT_REGS_DX(regs) = 0; \ 42 PT_REGS_SI(regs) = 0; \ 43 PT_REGS_DI(regs) = 0; \ 44 PT_REGS_BP(regs) = 0; \ 45 PT_REGS_AX(regs) = 0; \ 50 #define ELF_CORE_COPY_REGS(pr_reg, regs) do { \ argument 51 pr_reg[0] = PT_REGS_BX(regs); \ [all …]
|
/linux/arch/loongarch/kernel/ |
H A D | inst.c | 13 void simu_pc(struct pt_regs *regs, union loongarch_instruction insn) in simu_pc() argument 15 unsigned long pc = regs->csr_era; in simu_pc() 26 regs->regs[rd] = pc + sign_extend64(imm << 2, 21); in simu_pc() 29 regs->regs[rd] = pc + sign_extend64(imm << 12, 31); in simu_pc() 32 regs->regs[rd] = pc + sign_extend64(imm << 18, 37); in simu_pc() 35 regs->regs[rd] = pc + sign_extend64(imm << 12, 31); in simu_pc() 36 regs->regs[rd] &= ~((1 << 12) - 1); in simu_pc() 43 regs->csr_era += LOONGARCH_INSN_SIZE; in simu_pc() 46 void simu_branch(struct pt_regs *regs, union loongarch_instruction insn) in simu_branch() argument 49 unsigned long pc = regs->csr_era; in simu_branch() [all …]
|
/linux/arch/powerpc/kernel/ |
H A D | traps.c | 74 int (*__debugger)(struct pt_regs *regs) __read_mostly; 75 int (*__debugger_ipi)(struct pt_regs *regs) __read_mostly; 76 int (*__debugger_bpt)(struct pt_regs *regs) __read_mostly; 77 int (*__debugger_sstep)(struct pt_regs *regs) __read_mostly; 78 int (*__debugger_iabr_match)(struct pt_regs *regs) __read_mostly; 79 int (*__debugger_break_match)(struct pt_regs *regs) __read_mostly; 80 int (*__debugger_fault_handler)(struct pt_regs *regs) __read_mostly; 181 static unsigned long oops_begin(struct pt_regs *regs) in oops_begin() argument 207 static void oops_end(unsigned long flags, struct pt_regs *regs, in oops_end() argument 225 if (TRAP(regs) == INTERRUPT_SYSTEM_RESET) in oops_end() [all …]
|
/linux/arch/loongarch/include/asm/ |
H A D | ptrace.h | 20 unsigned long regs[32]; member 36 static inline int regs_irqs_disabled(struct pt_regs *regs) in regs_irqs_disabled() argument 38 return arch_irqs_disabled_flags(regs->csr_prmd); in regs_irqs_disabled() 41 static inline unsigned long kernel_stack_pointer(struct pt_regs *regs) in kernel_stack_pointer() argument 43 return regs->regs[3]; in kernel_stack_pointer() 51 static inline void instruction_pointer_set(struct pt_regs *regs, unsigned long val) in instruction_pointer_set() argument 53 regs->csr_era = val; in instruction_pointer_set() 62 * @regs: pt_regs from which register value is gotten. 66 * offset of the register in struct pt_regs address which specified by @regs. 69 static inline unsigned long regs_get_register(struct pt_regs *regs, unsigned int offset) in regs_get_register() argument [all …]
|
/linux/arch/powerpc/include/asm/ |
H A D | ptrace.h | 8 * this should only contain volatile regs 100 // Always displays as "REGS" in memory dumps 172 extern unsigned long profile_pc(struct pt_regs *regs); 174 #define profile_pc(regs) instruction_pointer(regs) argument 177 long do_syscall_trace_enter(struct pt_regs *regs); 178 void do_syscall_trace_leave(struct pt_regs *regs); 188 static inline void regs_set_return_ip(struct pt_regs *regs, unsigned long ip) in regs_set_return_ip() argument 190 regs->nip = ip; in regs_set_return_ip() 194 static inline void regs_set_return_msr(struct pt_regs *regs, unsigned long msr) in regs_set_return_msr() argument 196 regs->msr = msr; in regs_set_return_msr() [all …]
|
/linux/arch/nios2/kernel/ |
H A D | signal.c | 37 static inline int rt_restore_ucontext(struct pt_regs *regs, in rt_restore_ucontext() argument 52 err |= __get_user(regs->r1, &gregs[0]); in rt_restore_ucontext() 53 err |= __get_user(regs->r2, &gregs[1]); in rt_restore_ucontext() 54 err |= __get_user(regs->r3, &gregs[2]); in rt_restore_ucontext() 55 err |= __get_user(regs->r4, &gregs[3]); in rt_restore_ucontext() 56 err |= __get_user(regs->r5, &gregs[4]); in rt_restore_ucontext() 57 err |= __get_user(regs->r6, &gregs[5]); in rt_restore_ucontext() 58 err |= __get_user(regs->r7, &gregs[6]); in rt_restore_ucontext() 59 err |= __get_user(regs->r8, &gregs[7]); in rt_restore_ucontext() 60 err |= __get_user(regs->r9, &gregs[8]); in rt_restore_ucontext() [all …]
|
/linux/drivers/phy/mediatek/ |
H A D | phy-mtk-hdmi-mt8195.c | 25 mtk_phy_set_bits(hdmi_phy->regs + HDMI_ANA_CTL, REG_ANA_HDMI20_FIFO_EN); 31 void __iomem *regs = hdmi_phy->regs; in mtk_phy_tmds_clk_ratio() 39 mtk_phy_update_field(regs + HDMI20_CLK_CFG, REG_TXC_DIV, 3); in mtk_phy_tmds_clk_ratio() 41 mtk_phy_clear_bits(regs + HDMI20_CLK_CFG, REG_TXC_DIV); 47 void __iomem *regs = hdmi_phy->regs; in mtk_hdmi_pll_sel_src() 49 mtk_phy_clear_bits(regs + HDMI_CTL_3, REG_HDMITX_REF_XTAL_SEL); in mtk_hdmi_pll_sel_src() 50 mtk_phy_clear_bits(regs + HDMI_CTL_3, REG_HDMITX_REF_RESPLL_SEL); in mtk_hdmi_pll_sel_src() 53 mtk_phy_clear_bits(regs in mtk_hdmi_pll_sel_src() 29 void __iomem *regs = hdmi_phy->regs; mtk_phy_tmds_clk_ratio() local 45 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_sel_src() local 57 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_perf() local 90 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_set_hw() local 303 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_drv_setting() local 360 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_prepare() local 394 void __iomem *regs = hdmi_phy->regs; mtk_hdmi_pll_unprepare() local 446 void __iomem *regs = hdmi_phy->regs; vtx_signal_en() local [all...] |
/linux/arch/arm/probes/kprobes/ |
H A D | actions-thumb.c | 25 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_table_branch() argument 27 unsigned long pc = regs->ARM_pc; in t32_simulate_table_branch() 31 unsigned long rnv = (rn == 15) ? pc : regs->uregs[rn]; in t32_simulate_table_branch() 32 unsigned long rmv = regs->uregs[rm]; in t32_simulate_table_branch() 40 regs->ARM_pc = pc + 2 * halfwords; in t32_simulate_table_branch() 45 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_mrs() argument 49 regs->uregs[rd] = regs->ARM_cpsr & mask; in t32_simulate_mrs() 54 struct arch_probes_insn *asi, struct pt_regs *regs) in t32_simulate_cond_branch() argument 56 unsigned long pc = regs->ARM_pc; in t32_simulate_cond_branch() 64 regs->ARM_pc = pc + (offset * 2); in t32_simulate_cond_branch() [all …]
|