Lines Matching defs:error_code
122 is_prefetch(struct pt_regs *regs, unsigned long error_code, unsigned long addr)
136 if (error_code & X86_PF_INSTR)
463 static int is_f00f_bug(struct pt_regs *regs, unsigned long error_code,
467 if (boot_cpu_has_bug(X86_BUG_F00F) && !(error_code & X86_PF_USER) &&
508 show_fault_oops(struct pt_regs *regs, unsigned long error_code, unsigned long address)
513 if (error_code & X86_PF_INSTR) {
541 (error_code & X86_PF_USER) ? "user" : "supervisor",
542 (error_code & X86_PF_INSTR) ? "instruction fetch" :
543 (error_code & X86_PF_WRITE) ? "write access" :
546 pr_alert("#PF: error_code(0x%04lx) - %s\n", error_code,
547 !(error_code & X86_PF_PROT) ? "not-present page" :
548 (error_code & X86_PF_RSVD) ? "reserved bit violation" :
549 (error_code & X86_PF_PK) ? "protection keys violation" :
552 if (!(error_code & X86_PF_USER) && user_mode(regs)) {
585 pgtable_bad(struct pt_regs *regs, unsigned long error_code,
600 if (__die("Bad pagetable", regs, error_code))
607 unsigned long *error_code)
619 *error_code |= X86_PF_PROT;
623 unsigned long error_code)
628 tsk->thread.error_code = error_code | X86_PF_USER;
633 page_fault_oops(struct pt_regs *regs, unsigned long error_code,
686 if (!(error_code & X86_PF_PROT) &&
687 kfence_handle_page_fault(address, error_code & X86_PF_WRITE, regs))
697 show_fault_oops(regs, error_code, address);
703 if (__die("Oops", regs, error_code))
713 kernelmode_fixup_or_oops(struct pt_regs *regs, unsigned long error_code,
720 if (fixup_exception(regs, X86_TRAP_PF, error_code, address)) {
736 sanitize_error_code(address, &error_code);
738 set_signal_archinfo(address, error_code);
758 if (is_prefetch(regs, error_code, address))
761 page_fault_oops(regs, error_code, address);
769 show_signal_msg(struct pt_regs *regs, unsigned long error_code,
784 (void *)regs->ip, (void *)regs->sp, error_code);
802 __bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code,
808 kernelmode_fixup_or_oops(regs, error_code, address,
813 if (!(error_code & X86_PF_USER)) {
815 page_fault_oops(regs, error_code, address);
829 if (is_prefetch(regs, error_code, address))
835 sanitize_error_code(address, &error_code);
837 if (fixup_vdso_exception(regs, X86_TRAP_PF, error_code, address))
841 show_signal_msg(regs, error_code, address, tsk);
843 set_signal_archinfo(address, error_code);
854 bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code,
857 __bad_area_nosemaphore(regs, error_code, address, 0, SEGV_MAPERR);
861 __bad_area(struct pt_regs *regs, unsigned long error_code,
871 __bad_area_nosemaphore(regs, error_code, address, pkey, si_code);
874 static inline bool bad_area_access_from_pkeys(unsigned long error_code,
882 if (error_code & X86_PF_PK)
885 if (!arch_vma_access_permitted(vma, (error_code & X86_PF_WRITE),
886 (error_code & X86_PF_INSTR), foreign))
892 bad_area_access_error(struct pt_regs *regs, unsigned long error_code,
900 if (bad_area_access_from_pkeys(error_code, vma)) {
923 __bad_area(regs, error_code, address, pkey, SEGV_PKUERR);
925 __bad_area(regs, error_code, address, 0, SEGV_ACCERR);
930 do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address,
935 kernelmode_fixup_or_oops(regs, error_code, address,
941 if (is_prefetch(regs, error_code, address))
944 sanitize_error_code(address, &error_code);
946 if (fixup_vdso_exception(regs, X86_TRAP_PF, error_code, address))
949 set_signal_archinfo(address, error_code);
970 static int spurious_kernel_fault_check(unsigned long error_code, pte_t *pte)
972 if ((error_code & X86_PF_WRITE) && !pte_write(*pte))
975 if ((error_code & X86_PF_INSTR) && !pte_exec(*pte))
1003 spurious_kernel_fault(unsigned long error_code, unsigned long address)
1021 if (error_code != (X86_PF_WRITE | X86_PF_PROT) &&
1022 error_code != (X86_PF_INSTR | X86_PF_PROT))
1034 return spurious_kernel_fault_check(error_code, (pte_t *) p4d);
1041 return spurious_kernel_fault_check(error_code, (pte_t *) pud);
1048 return spurious_kernel_fault_check(error_code, (pte_t *) pmd);
1054 ret = spurious_kernel_fault_check(error_code, pte);
1062 ret = spurious_kernel_fault_check(error_code, (pte_t *) pmd);
1072 access_error(unsigned long error_code, struct vm_area_struct *vma)
1082 if (error_code & X86_PF_PK)
1094 if (unlikely(error_code & X86_PF_SGX))
1102 if (!arch_vma_access_permitted(vma, (error_code & X86_PF_WRITE),
1103 (error_code & X86_PF_INSTR), foreign))
1110 if (error_code & X86_PF_SHSTK) {
1118 if (error_code & X86_PF_WRITE) {
1128 if (unlikely(error_code & X86_PF_PROT))
1231 unsigned long error_code,
1243 if (unlikely((error_code & (X86_PF_USER | X86_PF_INSTR)) == X86_PF_INSTR)) {
1254 page_fault_oops(regs, error_code, address);
1266 if (unlikely(error_code & X86_PF_RSVD))
1267 pgtable_bad(regs, error_code, address);
1277 !(error_code & X86_PF_USER) &&
1283 page_fault_oops(regs, error_code, address);
1292 bad_area_nosemaphore(regs, error_code, address);
1319 if (error_code & X86_PF_SHSTK)
1321 if (error_code & X86_PF_WRITE)
1323 if (error_code & X86_PF_INSTR)
1339 if (emulate_vsyscall(error_code, regs, address))
1351 if (unlikely(access_error(error_code, vma))) {
1368 kernelmode_fixup_or_oops(regs, error_code, address,
1378 bad_area_nosemaphore(regs, error_code, address);
1386 if (unlikely(access_error(error_code, vma))) {
1387 bad_area_access_error(regs, error_code, address, vma);
1412 kernelmode_fixup_or_oops(regs, error_code, address,
1438 kernelmode_fixup_or_oops(regs, error_code, address,
1446 kernelmode_fixup_or_oops(regs, error_code, address,
1461 do_sigbus(regs, error_code, address, fault);
1463 bad_area_nosemaphore(regs, error_code, address);
1471 trace_page_fault_entries(struct pt_regs *regs, unsigned long error_code,
1478 trace_page_fault_user(address, regs, error_code);
1480 trace_page_fault_kernel(address, regs, error_code);
1484 handle_page_fault(struct pt_regs *regs, unsigned long error_code,
1487 trace_page_fault_entries(regs, error_code, address);
1494 do_kern_addr_fault(regs, error_code, address);
1496 do_user_addr_fault(regs, error_code, address);
1552 handle_page_fault(regs, error_code, address);