Skip to content

Commit

Permalink
[IA64] invoke oom-killer from page fault
Browse files Browse the repository at this point in the history
As explained in commit 1c0fe6e, we want to call the architecture independent
oom killer when getting an unexplained OOM from handle_mm_fault, rather than
simply killing current.

Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
  • Loading branch information
npiggin@suse.de authored and Tony Luck committed May 18, 2010
1 parent 7683a3f commit 0c3b96e
Showing 1 changed file with 3 additions and 10 deletions.
13 changes: 3 additions & 10 deletions arch/ia64/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,6 @@ ia64_do_page_fault (unsigned long address, unsigned long isr, struct pt_regs *re
if ((vma->vm_flags & mask) != mask)
goto bad_area;

survive:
/*
* If for any reason at all we couldn't handle the fault, make
* sure we exit gracefully rather than endlessly redo the
Expand Down Expand Up @@ -276,13 +275,7 @@ ia64_do_page_fault (unsigned long address, unsigned long isr, struct pt_regs *re

out_of_memory:
up_read(&mm->mmap_sem);
if (is_global_init(current)) {
yield();
down_read(&mm->mmap_sem);
goto survive;
}
printk(KERN_CRIT "VM: killing process %s\n", current->comm);
if (user_mode(regs))
do_group_exit(SIGKILL);
goto no_context;
if (!user_mode(regs))
goto no_context;
pagefault_out_of_memory();
}

0 comments on commit 0c3b96e

Please sign in to comment.