Lines Matching +full:no +full:- +full:pc +full:- +full:write
1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
34 regs->pc = fixup->nextinsn; in fixup_exception()
47 asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long write, in do_page_fault() argument
52 struct mm_struct *mm = tsk->mm; in do_page_fault()
57 if (kprobe_page_fault(regs, tsk->thread.trap_no)) in do_page_fault()
64 * We fault-in kernel-space virtual memory on-demand. The in do_page_fault()
75 * Synchronize this task's top level page-table in do_page_fault()
117 * If we're in an interrupt or have no user in do_page_fault()
127 if (vma->vm_start <= address) in do_page_fault()
129 if (!(vma->vm_flags & VM_GROWSDOWN)) in do_page_fault()
140 if (write) { in do_page_fault()
141 if (!(vma->vm_flags & VM_WRITE)) in do_page_fault()
153 fault = handle_mm_fault(vma, address, write ? FAULT_FLAG_WRITE : 0, in do_page_fault()
177 tsk->thread.trap_no = trap_no(regs); in do_page_fault()
183 tsk->thread.trap_no = trap_no(regs); in do_page_fault()
195 "address 0x%08lx, pc: 0x%08lx\n", address, regs->pc); in do_page_fault()
199 tsk->thread.trap_no = trap_no(regs); in do_page_fault()
203 * (which will retry the fault, or kill us if we got oom-killed). in do_page_fault()
209 tsk->thread.trap_no = trap_no(regs); in do_page_fault()