Lines Matching refs:fsr
107 __do_kernel_fault(struct mm_struct *mm, unsigned long addr, unsigned int fsr, in __do_kernel_fault() argument
126 die("Oops", regs, fsr); in __do_kernel_fault()
136 __do_user_fault(unsigned long addr, unsigned int fsr, unsigned int sig, in __do_user_fault() argument
149 tsk->comm, sig, addr, fsr); in __do_user_fault()
162 tsk->thread.error_code = fsr; in __do_user_fault()
167 void do_bad_area(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_bad_area() argument
177 __do_user_fault(addr, fsr, SIGSEGV, SEGV_MAPERR, regs); in do_bad_area()
179 __do_kernel_fault(mm, addr, fsr, regs); in do_bad_area()
191 static inline bool access_error(unsigned int fsr, struct vm_area_struct *vma) in access_error() argument
195 if ((fsr & FSR_WRITE) && !(fsr & FSR_CM)) in access_error()
197 if (fsr & FSR_LNX_PF) in access_error()
204 __do_page_fault(struct mm_struct *mm, unsigned long addr, unsigned int fsr, in __do_page_fault() argument
223 if (access_error(fsr, vma)) { in __do_page_fault()
240 do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_page_fault() argument
248 if (kprobe_page_fault(regs, fsr)) in do_page_fault()
267 if ((fsr & FSR_WRITE) && !(fsr & FSR_CM)) in do_page_fault()
296 fault = __do_page_fault(mm, addr, fsr, flags, tsk, regs); in do_page_fault()
357 __do_user_fault(addr, fsr, sig, code, regs); in do_page_fault()
361 __do_kernel_fault(mm, addr, fsr, regs); in do_page_fault()
366 do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_page_fault() argument
391 do_translation_fault(unsigned long addr, unsigned int fsr, in do_translation_fault() argument
401 return do_page_fault(addr, fsr, regs); in do_translation_fault()
453 do_bad_area(addr, fsr, regs); in do_translation_fault()
458 do_translation_fault(unsigned long addr, unsigned int fsr, in do_translation_fault() argument
471 do_sect_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_sect_fault() argument
473 do_bad_area(addr, fsr, regs); in do_sect_fault()
482 do_bad(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_bad() argument
488 int (*fn)(unsigned long addr, unsigned int fsr, struct pt_regs *regs);
518 do_DataAbort(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_DataAbort() argument
520 const struct fsr_info *inf = fsr_info + fsr_fs(fsr); in do_DataAbort()
522 if (!inf->fn(addr, fsr & ~FSR_LNX_PF, regs)) in do_DataAbort()
527 inf->name, fsr, addr); in do_DataAbort()
531 fsr, 0); in do_DataAbort()
567 static int __init early_abort_handler(unsigned long addr, unsigned int fsr, in early_abort_handler() argument
572 "firmware/bootloader bug.\n", fsr); in early_abort_handler()