alistair23-linux/arch/s390/kernel
Martin Schwidefsky d0fc41071a s390/kvm: integrate HANDLE_SIE_INTERCEPT into cleanup_critical
Currently there are two mechanisms to deal with cleanup work due to
interrupts. The HANDLE_SIE_INTERCEPT macro is used to undo the changes
required to enter SIE in sie64a. If the SIE instruction causes a program
check, or an asynchronous interrupt is received the HANDLE_SIE_INTERCEPT
code forwards the program execution to sie_exit.

All the other critical sections in entry.S are handled by the code in
cleanup_critical that is called by the SWITCH_ASYNC macro.

Move the sie64a function to the beginning of the critical section and
add the code from HANDLE_SIE_INTERCEPT to cleanup_critical. Add a special
case for the sie64a cleanup to the program check handler.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2015-07-22 09:58:03 +02:00
..
vdso32
vdso64 s390/vdso: fix clock_gettime for CLOCK_THREAD_CPUTIME_ID, -2 and -3 2015-02-12 09:37:21 +01:00
.gitignore
asm-offsets.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
audit.c
audit.h
base.S s390/kdump: fix nosmt kernel parameter 2015-06-25 09:39:26 +02:00
cache.c s390/cacheinfo: add missing facility check 2015-04-13 10:46:16 +02:00
compat_audit.c
compat_linux.c
compat_linux.h
compat_ptrace.h
compat_signal.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
compat_wrapper.c clone: support passing tls argument via C rather than pt_regs magic 2015-06-25 17:00:38 -07:00
cpcmd.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
crash_dump.c s390/kdump: fix nosmt kernel parameter 2015-06-25 09:39:26 +02:00
debug.c s390: time: Provide read_boot_clock64() and read_persistent_clock64() 2015-05-22 10:36:29 -07:00
diag.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
dis.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
dumpstack.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
early.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
ebcdic.c
entry.h
entry.S s390/kvm: integrate HANDLE_SIE_INTERCEPT into cleanup_critical 2015-07-22 09:58:03 +02:00
ftrace.c s390/maccess: remove potentially broken probe_kernel_write() 2015-03-25 11:49:43 +01:00
head.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
head64.S
head_kdump.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
idle.c
ipl.c s390/ipl: cleanup macro usage 2015-03-25 11:49:50 +01:00
irq.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2015-04-15 09:00:47 -07:00
jump_label.c s390/maccess: remove potentially broken probe_kernel_write() 2015-03-25 11:49:43 +01:00
kprobes.c s390/maccess: remove potentially broken probe_kernel_write() 2015-03-25 11:49:43 +01:00
lgr.c
machine_kexec.c
Makefile s390: remove "64" suffix from mem64.S and swsusp_asm64.S 2015-03-25 11:49:51 +01:00
mcount.S s390/ftrace: hotpatch support for function tracing 2015-01-29 09:19:25 +01:00
module.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
nmi.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
os_info.c
perf_cpum_cf.c
perf_cpum_cf_events.c
perf_cpum_sf.c kernel/params: constify struct kernel_param_ops uses 2015-05-28 11:32:10 +09:30
perf_event.c
pgm_check.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
process.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
processor.c s390/module: enable generic CPU feature modalias using s390 ELF hwcaps 2015-07-22 09:58:02 +02:00
ptrace.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
reipl.S s390: remove "64" suffix from a couple of files 2015-03-25 11:49:34 +01:00
relocate_kernel.S s390: remove "64" suffix from a couple of files 2015-03-25 11:49:34 +01:00
runtime_instr.c
s390_ksyms.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
sclp.S s390/sclp: clear upper register halves in _sclp_print_early 2015-07-07 09:28:29 +02:00
setup.c s390/module: enable generic CPU feature modalias using s390 ELF hwcaps 2015-07-22 09:58:02 +02:00
signal.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
smp.c s390/kdump: fix compile for !SMP 2015-06-29 10:13:11 +02:00
stacktrace.c
suspend.c PCI: Include <linux/pci.h>, not <asm/pci.h> 2015-06-08 07:55:03 -05:00
swsusp.S s390: remove "64" suffix from mem64.S and swsusp_asm64.S 2015-03-25 11:49:51 +01:00
sys_s390.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
syscalls.S s390: remove 31 bit syscalls 2015-03-25 11:49:35 +01:00
sysinfo.c Fairly small update, but there are some interesting new features. 2015-02-13 09:55:09 -08:00
time.c s390: time: Provide read_boot_clock64() and read_persistent_clock64() 2015-05-22 10:36:29 -07:00
topology.c s390: make couple of functions and variables static 2015-03-25 11:49:45 +01:00
traps.c s390/kernel: lazy restore fpu registers 2015-07-22 09:58:01 +02:00
uprobes.c s390/uprobes: fix address space annotation 2015-03-25 11:49:47 +01:00
vdso.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
vmlinux.lds.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
vtime.c