Commit 21e1c936 authored by Nick Piggin's avatar Nick Piggin Committed by Michal Šimek

microblaze: invoke oom-killer from page fault

As explained in commit 1c0fe6e3, we want to call the architecture independent
oom killer when getting an unexplained OOM from handle_mm_fault, rather than
simply killing current.

Cc: microblaze-uclinux@itee.uq.edu.au
Cc: Michal Simek <monstr@monstr.eu>
Cc: linux-arch@vger.kernel.org
Signed-off-by: default avatarNick Piggin <npiggin@suse.de>
Acked-by: default avatarDavid Rientjes <rientjes@google.com>
Acked-by: Michal Šimek's avatarMichal Simek <monstr@monstr.eu>
parent f3ff8212
......@@ -273,16 +273,11 @@ void do_page_fault(struct pt_regs *regs, unsigned long address,
* us unable to handle the page fault gracefully.
*/
out_of_memory:
if (current->pid == 1) {
yield();
down_read(&mm->mmap_sem);
goto survive;
}
up_read(&mm->mmap_sem);
printk(KERN_WARNING "VM: killing process %s\n", current->comm);
if (user_mode(regs))
do_exit(SIGKILL);
bad_page_fault(regs, address, SIGKILL);
if (!user_mode(regs))
bad_page_fault(regs, address, SIGKILL);
else
pagefault_out_of_memory();
return;
do_sigbus:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment