Lines Matching refs:fsr

34 static inline int notify_page_fault(struct pt_regs *regs, unsigned int fsr)  in notify_page_fault()  argument
41 if (kprobe_running() && kprobe_fault_handler(regs, fsr)) in notify_page_fault()
49 static inline int notify_page_fault(struct pt_regs *regs, unsigned int fsr) in notify_page_fault() argument
132 __do_kernel_fault(struct mm_struct *mm, unsigned long addr, unsigned int fsr, in __do_kernel_fault() argument
150 die("Oops", regs, fsr); in __do_kernel_fault()
161 unsigned int fsr, unsigned int sig, int code, in __do_user_fault() argument
170 tsk->comm, sig, addr, fsr); in __do_user_fault()
177 tsk->thread.error_code = fsr; in __do_user_fault()
186 void do_bad_area(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_bad_area() argument
196 __do_user_fault(tsk, addr, fsr, SIGSEGV, SEGV_MAPERR, regs); in do_bad_area()
198 __do_kernel_fault(mm, addr, fsr, regs); in do_bad_area()
210 static inline bool access_error(unsigned int fsr, struct vm_area_struct *vma) in access_error() argument
214 if (fsr & FSR_WRITE) in access_error()
216 if (fsr & FSR_LNX_PF) in access_error()
223 __do_page_fault(struct mm_struct *mm, unsigned long addr, unsigned int fsr, in __do_page_fault() argument
241 if (access_error(fsr, vma)) { in __do_page_fault()
258 do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_page_fault() argument
265 if (notify_page_fault(regs, fsr)) in do_page_fault()
284 if (fsr & FSR_WRITE) in do_page_fault()
311 fault = __do_page_fault(mm, addr, fsr, flags, tsk); in do_page_fault()
388 __do_user_fault(tsk, addr, fsr, sig, code, regs); in do_page_fault()
392 __do_kernel_fault(mm, addr, fsr, regs); in do_page_fault()
397 do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_page_fault() argument
422 do_translation_fault(unsigned long addr, unsigned int fsr, in do_translation_fault() argument
431 return do_page_fault(addr, fsr, regs); in do_translation_fault()
480 do_bad_area(addr, fsr, regs); in do_translation_fault()
485 do_translation_fault(unsigned long addr, unsigned int fsr, in do_translation_fault() argument
498 do_sect_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_sect_fault() argument
500 do_bad_area(addr, fsr, regs); in do_sect_fault()
509 do_bad(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_bad() argument
515 int (*fn)(unsigned long addr, unsigned int fsr, struct pt_regs *regs);
545 do_DataAbort(unsigned long addr, unsigned int fsr, struct pt_regs *regs) in do_DataAbort() argument
547 const struct fsr_info *inf = fsr_info + fsr_fs(fsr); in do_DataAbort()
550 if (!inf->fn(addr, fsr & ~FSR_LNX_PF, regs)) in do_DataAbort()
554 inf->name, fsr, addr); in do_DataAbort()
561 arm_notify_die("", regs, &info, fsr, 0); in do_DataAbort()