Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit adbf6e69 authored by Nick Piggin's avatar Nick Piggin Committed by Geert Uytterhoeven
Browse files

m68k: 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: linux-m68k@lists.linux-m68k.org
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: linux-arch@vger.kernel.org
Signed-off-by: default avatarNick Piggin <npiggin@suse.de>
Acked-by: default avatarDavid Rientjes <rientjes@google.com>
[Geert] Kill 2 introduced compiler warnings
Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
parent f3c7f317
Loading
Loading
Loading
Loading
+4 −10
Original line number Diff line number Diff line
@@ -154,7 +154,6 @@ good_area:
	 * the fault.
	 */

 survive:
	fault = handle_mm_fault(mm, vma, address, write ? FAULT_FLAG_WRITE : 0);
#ifdef DEBUG
	printk("handle_mm_fault returns %d\n",fault);
@@ -180,15 +179,10 @@ good_area:
 */
out_of_memory:
	up_read(&mm->mmap_sem);
	if (is_global_init(current)) {
		yield();
		down_read(&mm->mmap_sem);
		goto survive;
	}

	printk("VM: killing process %s\n", current->comm);
	if (user_mode(regs))
		do_group_exit(SIGKILL);
	if (!user_mode(regs))
		goto no_context;
	pagefault_out_of_memory();
	return 0;

no_context:
	current->thread.signo = SIGBUS;