OpenCloudOS-Kernel/arch/s390/kernel
Martin Schwidefsky 127581b64b s390/mm: handle asce-type exceptions as normal page fault
Git commit 9e34f2686bb088b211b6cac8772e1f644c6180f8
"s390/mm,tlb: tlb flush on page table upgrade fixup" removed the
exception handler for the asce-type exception. This is incorrect
as the user-copy with MVCOS can cause asce-type exceptions in
the kernel if a user pointer is too large. Those need to be
handled with do_no_context to branch to the fixup in the
user-copy code.

The simplest fix for this problem is to call do_dat_exception for
asce-type excpetions, as there is no vma for the address the code
will handle the exception correctly.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2013-11-25 09:15:42 +01:00
..
vdso32 s390/time,vdso: convert to the new update_vsyscall interface 2013-11-25 09:15:39 +01:00
vdso64 s390/time,vdso: convert to the new update_vsyscall interface 2013-11-25 09:15:39 +01:00
.gitignore s390: add various .gitignore files. 2012-05-16 14:42:41 +02:00
Makefile s390/bitops: use generic find bit functions / reimplement _left variant 2013-10-24 17:16:55 +02:00
asm-offsets.c s390/time,vdso: convert to the new update_vsyscall interface 2013-11-25 09:15:39 +01:00
audit.c [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
audit.h [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
base.S s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
cache.c s390/cache: get rid of compile warning 2013-10-24 17:17:06 +02:00
compat_audit.c [S390] Get rid of a bunch of sparse warnings again. 2007-10-12 16:13:06 +02:00
compat_exec_domain.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
compat_linux.c s390/compat: make psw32_user_bits a constant value again 2013-10-24 17:17:12 +02:00
compat_linux.h s390: fix save and restore of the floating-point-control register 2013-10-24 17:17:11 +02:00
compat_ptrace.h [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
compat_signal.c s390/signal: always restore saved runtime instrumentation psw bit 2013-11-20 09:04:53 +01:00
compat_wrapper.S switch compat_sys_sysctl to COMPAT_SYSCALL_DEFINE 2013-05-09 14:53:20 -04:00
cpcmd.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
crash_dump.c s390/sclp: Determine HSA size dynamically for zfcpdump 2013-11-15 14:08:40 +01:00
debug.c s390: convert use of typedef ctl_table to struct ctl_table 2013-10-28 08:36:25 +01:00
diag.c [S390] replace diag10() with diag10_range() function 2011-05-10 17:13:43 +02:00
dis.c s390/kprobes: allow kprobes only on known instructions 2013-10-24 17:16:50 +02:00
dumpstack.c s390/dis: move disassembler function prototypes to proper header file 2013-10-24 17:16:48 +02:00
early.c s390/sclp: Consolidate early sclp init calls to sclp_early_detect() 2013-11-15 14:08:41 +01:00
ebcdic.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
entry.S s390: fix system call restart after inferior call 2013-09-30 13:04:40 +02:00
entry.h s390/mm,tlb: correct tlb flush on page table upgrade 2013-11-04 13:51:47 +01:00
entry64.S s390: fix system call restart after inferior call 2013-09-30 13:04:40 +02:00
ftrace.c s390/ftrace: prepare_ftrace_return() function call order 2013-10-24 17:17:03 +02:00
head.S s390/bitops: optimize set_bit() for constant values 2013-10-24 17:16:53 +02:00
head31.S s390/mm: let kernel text section always begin at 1MB 2012-10-09 14:16:59 +02:00
head64.S s390/mm: let kernel text section always begin at 1MB 2012-10-09 14:16:59 +02:00
head_kdump.S s390/kdump: Use 64 bit mode for 0x10000 entry point 2012-10-18 17:50:09 +02:00
ipl.c s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
irq.c irq: Consolidate do_softirq() arch overriden implementations 2013-10-01 12:53:25 +02:00
jump_label.c s390/jump-label: add arch_jump_label_transform_static() 2011-10-25 11:54:37 -07:00
kprobes.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-11-15 16:47:22 -08:00
lgr.c s390/sysinfo,stsi: change return code handling 2012-09-26 15:45:12 +02:00
machine_kexec.c s390: make various functions static, add declarations to header files 2013-09-07 11:58:03 +02:00
mcount.S s390/ftrace: fix mcount adjustment 2013-05-15 13:09:09 +02:00
mcount64.S s390/ftrace: fix mcount adjustment 2013-05-15 13:09:09 +02:00
module.c mm/arch: use NUMA_NO_NODE 2013-11-13 12:09:05 +09:00
nmi.c s390/time: clock comparator revalidation 2013-08-22 12:20:08 +02:00
os_info.c Include missing linux/slab.h inclusions 2013-04-29 15:42:01 -04:00
perf_cpum_cf.c s390/irq: rework irq subclass handling 2013-09-04 17:19:13 +02:00
perf_event.c s390/perf: Remove print_hex_dump_bytes() debug output 2013-09-04 17:19:04 +02:00
pgm_check.S s390/mm: handle asce-type exceptions as normal page fault 2013-11-25 09:15:42 +01:00
process.c s390: fix save and restore of the floating-point-control register 2013-10-24 17:17:11 +02:00
processor.c s390: delete __cpuinit usage from all s390 files 2013-07-14 19:36:53 -04:00
ptrace.c s390/compat: make psw32_user_bits a constant value again 2013-10-24 17:17:12 +02:00
reipl.S s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
reipl64.S s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
relocate_kernel.S s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
relocate_kernel64.S s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
runtime_instr.c s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
s390_ksyms.c KVM: s390,perf: Detect if perf samples belong to KVM host or guest 2013-06-17 17:10:23 +02:00
sclp.S s390/sclp: fix new line detection 2013-06-05 17:36:21 +02:00
setup.c s390/sclp: Determine HSA size dynamically for zfcpdump 2013-11-15 14:08:40 +01:00
signal.c s390/signal: always restore saved runtime instrumentation psw bit 2013-11-20 09:04:53 +01:00
smp.c s390/vtime: correct idle time calculation 2013-10-31 09:52:52 +01:00
stacktrace.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
suspend.c s390: make various functions static, add declarations to header files 2013-09-07 11:58:03 +02:00
swsusp_asm64.S s390/hibernate: add early resume function 2013-08-30 08:57:15 +02:00
sys_s390.c teach SYSCALL_DEFINE<n> how to deal with long long/unsigned long long 2013-03-03 22:46:22 -05:00
syscalls.S switch compat_sys_sysctl to COMPAT_SYSCALL_DEFINE 2013-05-09 14:53:20 -04:00
sysinfo.c s390: delete __cpuinit usage from all s390 files 2013-07-14 19:36:53 -04:00
time.c s390,time: revert direct ktime path for s390 clockevent device 2013-11-25 09:15:41 +01:00
topology.c s390/topology: export cpu_topology 2013-01-08 10:57:10 +01:00
traps.c s390/dumpstack: fix call chain walking 2013-04-17 14:07:28 +02:00
vdso.c s390/uaccess: always run the kernel in home space 2013-10-24 17:16:57 +02:00
vmlinux.lds.S s390/linker skript: discard exit.data at runtime 2013-02-14 15:55:21 +01:00
vtime.c s390/vtime: correct idle time calculation 2013-10-31 09:52:52 +01:00