Lines Matching refs:addr

45 void show_pte(struct mm_struct *mm, unsigned long addr)  in show_pte()  argument
53 pgd = pgd_offset(mm, addr); in show_pte()
54 pr_alert("[%08lx] *pgd=%016llx", addr, pgd_val(*pgd)); in show_pte()
64 pud = pud_offset(pgd, addr); in show_pte()
69 pmd = pmd_offset(pud, addr); in show_pte()
74 pte = pte_offset_map(pmd, addr); in show_pte()
85 static void __do_kernel_fault(struct mm_struct *mm, unsigned long addr, in __do_kernel_fault() argument
99 (addr < PAGE_SIZE) ? "NULL pointer dereference" : in __do_kernel_fault()
100 "paging request", addr); in __do_kernel_fault()
102 show_pte(mm, addr); in __do_kernel_fault()
112 static void __do_user_fault(struct task_struct *tsk, unsigned long addr, in __do_user_fault() argument
122 addr, esr); in __do_user_fault()
123 show_pte(tsk->mm, addr); in __do_user_fault()
127 tsk->thread.fault_address = addr; in __do_user_fault()
132 si.si_addr = (void __user *)addr; in __do_user_fault()
136 static void do_bad_area(unsigned long addr, unsigned int esr, struct pt_regs *regs) in do_bad_area() argument
146 __do_user_fault(tsk, addr, esr, SIGSEGV, SEGV_MAPERR, regs); in do_bad_area()
148 __do_kernel_fault(mm, addr, esr, regs); in do_bad_area()
156 static int __do_page_fault(struct mm_struct *mm, unsigned long addr, in __do_page_fault() argument
163 vma = find_vma(mm, addr); in __do_page_fault()
167 if (unlikely(vma->vm_start > addr)) in __do_page_fault()
185 return handle_mm_fault(mm, vma, addr & PAGE_MASK, mm_flags); in __do_page_fault()
188 if (vma->vm_flags & VM_GROWSDOWN && !expand_stack(vma, addr)) in __do_page_fault()
194 static int __kprobes do_page_fault(unsigned long addr, unsigned int esr, in do_page_fault() argument
249 fault = __do_page_fault(mm, addr, mm_flags, vm_flags, tsk); in do_page_fault()
265 perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, addr); in do_page_fault()
270 addr); in do_page_fault()
274 addr); in do_page_fault()
330 __do_user_fault(tsk, addr, esr, sig, code, regs); in do_page_fault()
334 __do_kernel_fault(mm, addr, esr, regs); in do_page_fault()
355 static int __kprobes do_translation_fault(unsigned long addr, in do_translation_fault() argument
359 if (addr < TASK_SIZE) in do_translation_fault()
360 return do_page_fault(addr, esr, regs); in do_translation_fault()
362 do_bad_area(addr, esr, regs); in do_translation_fault()
369 static int do_bad(unsigned long addr, unsigned int esr, struct pt_regs *regs) in do_bad() argument
375 int (*fn)(unsigned long addr, unsigned int esr, struct pt_regs *regs);
455 asmlinkage void __exception do_mem_abort(unsigned long addr, unsigned int esr, in do_mem_abort() argument
461 if (!inf->fn(addr, esr, regs)) in do_mem_abort()
465 inf->name, esr, addr); in do_mem_abort()
470 info.si_addr = (void __user *)addr; in do_mem_abort()
477 asmlinkage void __exception do_sp_pc_abort(unsigned long addr, in do_sp_pc_abort() argument
486 info.si_addr = (void __user *)addr; in do_sp_pc_abort()
513 asmlinkage int __exception do_debug_exception(unsigned long addr, in do_debug_exception() argument
520 if (!inf->fn(addr, esr, regs)) in do_debug_exception()
524 inf->name, esr, addr); in do_debug_exception()
529 info.si_addr = (void __user *)addr; in do_debug_exception()