Lines Matching refs:regs

34 static void __kprobes no_context(struct pt_regs *regs,
40 if (fixup_exception(regs))
43 if (kfence_handle_page_fault(address, write, regs))
54 raw_smp_processor_id(), field, address, field, regs->csr_era,
55 field, regs->regs[1]);
56 die("Oops", regs);
59 static void __kprobes do_out_of_memory(struct pt_regs *regs,
66 if (!user_mode(regs)) {
67 no_context(regs, write, address);
73 static void __kprobes do_sigbus(struct pt_regs *regs,
77 if (!user_mode(regs)) {
78 no_context(regs, write, address);
91 static void __kprobes do_sigsegv(struct pt_regs *regs,
98 if (!user_mode(regs)) {
99 no_context(regs, write, address);
118 (unsigned long) regs->csr_era);
119 print_vma_addr(KERN_CONT " ", regs->csr_era);
122 (unsigned long) regs->regs[1]);
123 print_vma_addr(KERN_CONT " ", regs->regs[1]);
134 static void __kprobes __do_page_fault(struct pt_regs *regs,
144 if (kprobe_page_fault(regs, current->thread.trap_nr))
157 if (!user_mode(regs))
158 no_context(regs, write, address);
160 do_sigsegv(regs, write, address, si_code);
169 do_sigsegv(regs, write, address, si_code);
173 if (user_mode(regs))
176 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address);
178 vma = lock_mm_and_find_vma(mm, address, regs);
190 do_sigsegv(regs, write, address, si_code);
205 if (!(vma->vm_flags & VM_READ) && address != exception_era(regs))
207 if (!(vma->vm_flags & VM_EXEC) && address == exception_era(regs))
216 fault = handle_mm_fault(vma, address, flags, regs);
218 if (fault_signal_pending(fault, regs)) {
219 if (!user_mode(regs))
220 no_context(regs, write, address);
241 do_out_of_memory(regs, write, address);
244 do_sigsegv(regs, write, address, si_code);
247 do_sigbus(regs, write, address, si_code);
256 asmlinkage void __kprobes do_page_fault(struct pt_regs *regs,
259 irqentry_state_t state = irqentry_enter(regs);
262 if (likely(regs->csr_prmd & CSR_PRMD_PIE))
265 __do_page_fault(regs, write, address);
269 irqentry_exit(regs, state);