ARC: mm: do_page_fault refactor #6: error handlers to use same pattern

- up_read
 - if !user_mode
 - whatever error handling

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
This commit is contained in:
Vineet Gupta
2019-05-14 15:10:45 -07:00
parent d0542c7eac
commit 98cb57ad70
+10 -11
View File
@@ -191,22 +191,21 @@ retry:
bad_area: bad_area:
up_read(&mm->mmap_sem); up_read(&mm->mmap_sem);
/* User mode accesses just cause a SIGSEGV */ if (!user_mode(regs))
if (user_mode(regs)) { goto no_context;
tsk->thread.fault_address = address;
force_sig_fault(SIGSEGV, si_code, (void __user *)address, tsk); tsk->thread.fault_address = address;
return; force_sig_fault(SIGSEGV, si_code, (void __user *)address, tsk);
} return;
out_of_memory: out_of_memory:
up_read(&mm->mmap_sem); up_read(&mm->mmap_sem);
if (user_mode(regs)) { if (!user_mode(regs))
pagefault_out_of_memory(); goto no_context;
return;
}
goto no_context; pagefault_out_of_memory();
return;
do_sigbus: do_sigbus:
up_read(&mm->mmap_sem); up_read(&mm->mmap_sem);