aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJesper Nilsson <jesper.nilsson@axis.com>2010-08-04 11:23:24 -0400
committerJesper Nilsson <jesper.nilsson@axis.com>2010-08-04 12:28:48 -0400
commit028c1f6817c1ef49c61641dc1ae6c629e5bb32df (patch)
treeb21fe8ab63975791c8ddffb79c08e4b476ce120a /arch
parenta90993c693ab7bd72bcb28b105e8dd4f0698f836 (diff)
CRIS: Don't take faults while in_atomic
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/cris/mm/fault.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c
index 72dbdbf0accf..a2b4c0b8f0fd 100644
--- a/arch/cris/mm/fault.c
+++ b/arch/cris/mm/fault.c
@@ -1,10 +1,7 @@
1/* 1/*
2 * linux/arch/cris/mm/fault.c 2 * arch/cris/mm/fault.c
3 *
4 * Copyright (C) 2000-2006 Axis Communications AB
5 *
6 * Authors: Bjorn Wesen
7 * 3 *
4 * Copyright (C) 2000-2010 Axis Communications AB
8 */ 5 */
9 6
10#include <linux/mm.h> 7#include <linux/mm.h>
@@ -108,11 +105,11 @@ do_page_fault(unsigned long address, struct pt_regs *regs,
108 info.si_code = SEGV_MAPERR; 105 info.si_code = SEGV_MAPERR;
109 106
110 /* 107 /*
111 * If we're in an interrupt or have no user 108 * If we're in an interrupt or "atomic" operation or have no
112 * context, we must not take the fault.. 109 * user context, we must not take the fault.
113 */ 110 */
114 111
115 if (in_interrupt() || !mm) 112 if (in_atomic() || !mm)
116 goto no_context; 113 goto no_context;
117 114
118 down_read(&mm->mmap_sem); 115 down_read(&mm->mmap_sem);