Lines Matching refs:error_code

110 is_prefetch(struct pt_regs *regs, unsigned long error_code, unsigned long addr)  in is_prefetch()  argument
120 if (error_code & X86_PF_INSTR) in is_prefetch()
515 show_fault_oops(struct pt_regs *regs, unsigned long error_code, unsigned long address) in show_fault_oops() argument
520 if (error_code & X86_PF_INSTR) { in show_fault_oops()
548 (error_code & X86_PF_USER) ? "user" : "supervisor", in show_fault_oops()
549 (error_code & X86_PF_INSTR) ? "instruction fetch" : in show_fault_oops()
550 (error_code & X86_PF_WRITE) ? "write access" : in show_fault_oops()
553 pr_alert("#PF: error_code(0x%04lx) - %s\n", error_code, in show_fault_oops()
554 !(error_code & X86_PF_PROT) ? "not-present page" : in show_fault_oops()
555 (error_code & X86_PF_RSVD) ? "reserved bit violation" : in show_fault_oops()
556 (error_code & X86_PF_PK) ? "protection keys violation" : in show_fault_oops()
559 if (!(error_code & X86_PF_USER) && user_mode(regs)) { in show_fault_oops()
592 pgtable_bad(struct pt_regs *regs, unsigned long error_code, in pgtable_bad() argument
607 if (__die("Bad pagetable", regs, error_code)) in pgtable_bad()
614 unsigned long error_code) in set_signal_archinfo() argument
628 error_code |= X86_PF_PROT; in set_signal_archinfo()
631 tsk->thread.error_code = error_code | X86_PF_USER; in set_signal_archinfo()
636 no_context(struct pt_regs *regs, unsigned long error_code, in no_context() argument
653 if (fixup_exception(regs, X86_TRAP_PF, error_code, address)) { in no_context()
669 set_signal_archinfo(address, error_code); in no_context()
723 if (is_prefetch(regs, error_code, address)) in no_context()
737 if (!(error_code & X86_PF_PROT) && in no_context()
738 kfence_handle_page_fault(address, error_code & X86_PF_WRITE, regs)) in no_context()
748 show_fault_oops(regs, error_code, address); in no_context()
754 if (__die("Oops", regs, error_code)) in no_context()
768 show_signal_msg(struct pt_regs *regs, unsigned long error_code, in show_signal_msg() argument
781 (void *)regs->ip, (void *)regs->sp, error_code); in show_signal_msg()
800 __bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code, in __bad_area_nosemaphore() argument
806 if (user_mode(regs) && (error_code & X86_PF_USER)) { in __bad_area_nosemaphore()
816 if (is_prefetch(regs, error_code, address)) in __bad_area_nosemaphore()
828 error_code |= X86_PF_PROT; in __bad_area_nosemaphore()
831 show_signal_msg(regs, error_code, address, tsk); in __bad_area_nosemaphore()
833 set_signal_archinfo(address, error_code); in __bad_area_nosemaphore()
848 no_context(regs, error_code, address, SIGSEGV, si_code); in __bad_area_nosemaphore()
852 bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code, in bad_area_nosemaphore() argument
855 __bad_area_nosemaphore(regs, error_code, address, 0, SEGV_MAPERR); in bad_area_nosemaphore()
859 __bad_area(struct pt_regs *regs, unsigned long error_code, in __bad_area() argument
869 __bad_area_nosemaphore(regs, error_code, address, pkey, si_code); in __bad_area()
873 bad_area(struct pt_regs *regs, unsigned long error_code, unsigned long address) in bad_area() argument
875 __bad_area(regs, error_code, address, 0, SEGV_MAPERR); in bad_area()
878 static inline bool bad_area_access_from_pkeys(unsigned long error_code, in bad_area_access_from_pkeys() argument
886 if (error_code & X86_PF_PK) in bad_area_access_from_pkeys()
889 if (!arch_vma_access_permitted(vma, (error_code & X86_PF_WRITE), in bad_area_access_from_pkeys()
890 (error_code & X86_PF_INSTR), foreign)) in bad_area_access_from_pkeys()
896 bad_area_access_error(struct pt_regs *regs, unsigned long error_code, in bad_area_access_error() argument
904 if (bad_area_access_from_pkeys(error_code, vma)) { in bad_area_access_error()
927 __bad_area(regs, error_code, address, pkey, SEGV_PKUERR); in bad_area_access_error()
929 __bad_area(regs, error_code, address, 0, SEGV_ACCERR); in bad_area_access_error()
934 do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address, in do_sigbus() argument
938 if (!(error_code & X86_PF_USER)) { in do_sigbus()
939 no_context(regs, error_code, address, SIGBUS, BUS_ADRERR); in do_sigbus()
944 if (is_prefetch(regs, error_code, address)) in do_sigbus()
947 set_signal_archinfo(address, error_code); in do_sigbus()
969 mm_fault_error(struct pt_regs *regs, unsigned long error_code, in mm_fault_error() argument
972 if (fatal_signal_pending(current) && !(error_code & X86_PF_USER)) { in mm_fault_error()
973 no_context(regs, error_code, address, 0, 0); in mm_fault_error()
979 if (!(error_code & X86_PF_USER)) { in mm_fault_error()
980 no_context(regs, error_code, address, in mm_fault_error()
994 do_sigbus(regs, error_code, address, fault); in mm_fault_error()
996 bad_area_nosemaphore(regs, error_code, address); in mm_fault_error()
1002 static int spurious_kernel_fault_check(unsigned long error_code, pte_t *pte) in spurious_kernel_fault_check() argument
1004 if ((error_code & X86_PF_WRITE) && !pte_write(*pte)) in spurious_kernel_fault_check()
1007 if ((error_code & X86_PF_INSTR) && !pte_exec(*pte)) in spurious_kernel_fault_check()
1035 spurious_kernel_fault(unsigned long error_code, unsigned long address) in spurious_kernel_fault() argument
1053 if (error_code != (X86_PF_WRITE | X86_PF_PROT) && in spurious_kernel_fault()
1054 error_code != (X86_PF_INSTR | X86_PF_PROT)) in spurious_kernel_fault()
1066 return spurious_kernel_fault_check(error_code, (pte_t *) p4d); in spurious_kernel_fault()
1073 return spurious_kernel_fault_check(error_code, (pte_t *) pud); in spurious_kernel_fault()
1080 return spurious_kernel_fault_check(error_code, (pte_t *) pmd); in spurious_kernel_fault()
1086 ret = spurious_kernel_fault_check(error_code, pte); in spurious_kernel_fault()
1094 ret = spurious_kernel_fault_check(error_code, (pte_t *) pmd); in spurious_kernel_fault()
1104 access_error(unsigned long error_code, struct vm_area_struct *vma) in access_error() argument
1114 if (error_code & X86_PF_PK) in access_error()
1122 if (!arch_vma_access_permitted(vma, (error_code & X86_PF_WRITE), in access_error()
1123 (error_code & X86_PF_INSTR), foreign)) in access_error()
1126 if (error_code & X86_PF_WRITE) { in access_error()
1134 if (unlikely(error_code & X86_PF_PROT)) in access_error()
1437 trace_page_fault_entries(struct pt_regs *regs, unsigned long error_code, in trace_page_fault_entries() argument
1444 trace_page_fault_user(address, regs, error_code); in trace_page_fault_entries()
1446 trace_page_fault_kernel(address, regs, error_code); in trace_page_fault_entries()
1450 handle_page_fault(struct pt_regs *regs, unsigned long error_code, in handle_page_fault() argument
1453 trace_page_fault_entries(regs, error_code, address); in handle_page_fault()
1460 do_kern_addr_fault(regs, error_code, address); in handle_page_fault()
1462 do_user_addr_fault(regs, error_code, address); in handle_page_fault()
1518 handle_page_fault(regs, error_code, address); in DEFINE_IDTENTRY_RAW_ERRORCODE()