• Home
  • Raw
  • Download

Lines Matching full:fault

8  *  Derived from "arch/i386/mm/fault.c"
181 pr_alert("Fault in "); in dump_fault_info()
227 printk(KERN_ALERT "User process fault: interruption code %04x ilc:%d ", in report_user_fault()
247 static noinline void do_no_context(struct pt_regs *regs, vm_fault_t fault) in do_no_context() argument
256 if ((fault_type == KERNEL_FAULT) && (fault == VM_FAULT_BADCONTEXT)) { in do_no_context()
298 static noinline void do_fault_error(struct pt_regs *regs, vm_fault_t fault) in do_fault_error() argument
302 switch (fault) { in do_fault_error()
308 si_code = (fault == VM_FAULT_BADMAP) ? in do_fault_error()
316 do_no_context(regs, fault); in do_fault_error()
320 do_no_context(regs, fault); in do_fault_error()
322 default: /* fault & VM_FAULT_ERROR */ in do_fault_error()
323 if (fault & VM_FAULT_OOM) { in do_fault_error()
325 do_no_context(regs, fault); in do_fault_error()
328 } else if (fault & VM_FAULT_SIGSEGV) { in do_fault_error()
331 do_no_context(regs, fault); in do_fault_error()
334 } else if (fault & (VM_FAULT_SIGBUS | VM_FAULT_HWPOISON)) { in do_fault_error()
337 do_no_context(regs, fault); in do_fault_error()
341 pr_emerg("Unexpected fault flags: %08x\n", fault); in do_fault_error()
368 vm_fault_t fault; in do_exception() local
386 * Verify that the fault happened in user space, that in do_exception()
390 fault = VM_FAULT_BADCONTEXT; in do_exception()
419 fault = handle_mm_fault(vma, address, flags | FAULT_FLAG_VMA_LOCK, regs); in do_exception()
420 if (!(fault & (VM_FAULT_RETRY | VM_FAULT_COMPLETED))) in do_exception()
422 if (!(fault & VM_FAULT_RETRY)) { in do_exception()
424 if (likely(!(fault & VM_FAULT_ERROR))) in do_exception()
425 fault = 0; in do_exception()
430 if (fault_signal_pending(fault, regs)) { in do_exception()
431 fault = VM_FAULT_SIGNAL; in do_exception()
445 fault = VM_FAULT_BADMAP; in do_exception()
453 fault = VM_FAULT_BADMAP; in do_exception()
470 fault = VM_FAULT_BADACCESS; in do_exception()
475 * If for any reason at all we couldn't handle the fault, in do_exception()
477 * the fault. in do_exception()
479 fault = handle_mm_fault(vma, address, flags, regs); in do_exception()
480 if (fault_signal_pending(fault, regs)) { in do_exception()
481 fault = VM_FAULT_SIGNAL; in do_exception()
487 /* The fault is fully completed (including releasing mmap lock) */ in do_exception()
488 if (fault & VM_FAULT_COMPLETED) { in do_exception()
493 fault = 0; in do_exception()
497 if (unlikely(fault & VM_FAULT_ERROR)) in do_exception()
500 if (fault & VM_FAULT_RETRY) { in do_exception()
508 fault = VM_FAULT_PFAULT; in do_exception()
521 fault = VM_FAULT_BADMAP; in do_exception()
525 fault = VM_FAULT_OOM; in do_exception()
529 fault = 0; in do_exception()
533 return fault; in do_exception()
540 vm_fault_t fault; in do_protection_exception() local
563 fault = VM_FAULT_BADACCESS; in do_protection_exception()
566 fault = do_exception(regs, access); in do_protection_exception()
568 if (unlikely(fault)) in do_protection_exception()
569 do_fault_error(regs, fault); in do_protection_exception()
576 vm_fault_t fault; in do_dat_exception() local
579 fault = do_exception(regs, access); in do_dat_exception()
580 if (unlikely(fault)) in do_dat_exception()
581 do_fault_error(regs, fault); in do_dat_exception()
608 * memory. Trigger a segmentation fault. in do_secure_storage_access()