summaryrefslogtreecommitdiffstats
path: root/arch/s390/mm/fault.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2015-02-04 07:58:29 +0100
committerIngo Molnar <mingo@kernel.org>2015-02-04 07:58:29 +0100
commit8f4bf4bcc4d6f70a47baec5d73bd411e572842e0 (patch)
tree8ed86ebd19c32a629bfcfb43378bf32acd14c7d6 /arch/s390/mm/fault.c
parent1ed39bac21c3c2934b18de34df9478ad7b8edf1f (diff)
parente36f014edff70fc02b3d3d79cead1d58f289332e (diff)
Merge tag 'v3.19-rc7' into perf/core, to merge fixes before applying new changes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/s390/mm/fault.c')
-rw-r--r--arch/s390/mm/fault.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c
index 811937bb90be..9065d5aa3932 100644
--- a/arch/s390/mm/fault.c
+++ b/arch/s390/mm/fault.c
@@ -374,6 +374,12 @@ static noinline void do_fault_error(struct pt_regs *regs, int fault)
do_no_context(regs);
else
pagefault_out_of_memory();
+ } else if (fault & VM_FAULT_SIGSEGV) {
+ /* Kernel mode? Handle exceptions or die */
+ if (!user_mode(regs))
+ do_no_context(regs);
+ else
+ do_sigsegv(regs, SEGV_MAPERR);
} else if (fault & VM_FAULT_SIGBUS) {
/* Kernel mode? Handle exceptions or die */
if (!user_mode(regs))