OpenCloudOS-Kernel/arch/s390/kernel
Martin Schwidefsky 1a36a39e22 s390/dump: rework CPU register dump code
To collect the CPU registers of the crashed system allocated a single
page with memblock_alloc_base and use it as a copy buffer. Replace the
stop-and-store-status sigp with a store-status-at-address sigp in
smp_save_dump_cpus() and smp_store_status(). In both cases the target
CPU is already stopped and store-status-at-address avoids the detour
via the absolute zero page.

For kexec simplify s390_reset_system and call store_status() before
the prefix register of the boot CPU has been set to zero. Use STPX
to store the prefix register and remove dump_prefix_page.

Acked-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2015-11-27 09:24:14 +01:00
..
vdso32 s390/vdso: emit a GNU hash 2015-08-07 09:57:39 +02:00
vdso64 s390/vdso: emit a GNU hash 2015-08-07 09:57:39 +02:00
.gitignore s390: add various .gitignore files. 2012-05-16 14:42:41 +02:00
Makefile s390/diag: add tracepoint for diagnose calls 2015-10-14 14:32:06 +02:00
asm-offsets.c s390/dump: remove SAVE_AREA_BASE 2015-11-27 09:24:14 +01:00
audit.c
audit.h
base.S s390/kdump: fix nosmt kernel parameter 2015-06-25 09:39:26 +02:00
cache.c s390/cachinfo: add missing facility check to init_cache_level() 2015-07-28 08:54:42 +02:00
compat_audit.c
compat_linux.c groups: Consolidate the setgroups permission checks 2014-12-05 17:19:27 -06:00
compat_linux.h s390: add support for vector extension 2014-10-09 09:14:13 +02:00
compat_ptrace.h [S390] ptrace cleanup 2011-01-05 12:47:31 +01:00
compat_signal.c s390/fpu: always enable the vector facility if it is available 2015-10-14 14:32:08 +02:00
compat_wrapper.c s390: wire up mlock2 system call 2015-11-16 12:51:07 +01:00
cpcmd.c s390/diag: add a statistic for diagnose calls 2015-10-14 14:32:06 +02:00
crash_dump.c s390/dump: streamline oldmem copy functions 2015-11-27 09:24:12 +01:00
debug.c s390: time: Provide read_boot_clock64() and read_persistent_clock64() 2015-05-22 10:36:29 -07:00
diag.c s390/diag: add a s390 prefix to the diagnose trace point 2015-11-09 09:10:47 +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/dump: rework CPU register dump code 2015-11-27 09:24:14 +01:00
ebcdic.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
entry.S s390/udelay: make udelay have busy loop semantics 2015-10-14 14:32:13 +02:00
entry.h s390/udelay: make udelay have busy loop semantics 2015-10-14 14:32:13 +02:00
ftrace.c s390/maccess: remove potentially broken probe_kernel_write() 2015-03-25 11:49:43 +01:00
head.S s390: remove SALIPL loader 2015-11-16 12:51:11 +01:00
head64.S s390/cpumf: rework program parameter setting to detect guest samples 2015-10-14 14:32:12 +02:00
head_kdump.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
idle.c s390/idle: convert open coded idle time seqcount 2014-12-08 09:42:32 +01:00
ipl.c s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +01:00
irq.c s390: remove runtime instrumentation interrupts 2015-11-03 14:40:51 +01:00
jump_label.c Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-09-03 15:46:07 -07:00
kprobes.c s390/maccess: remove potentially broken probe_kernel_write() 2015-03-25 11:49:43 +01:00
lgr.c s390/sysinfo,stsi: change return code handling 2012-09-26 15:45:12 +02:00
machine_kexec.c s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +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/nmi: reduce size of percpu variable 2015-10-27 09:33:57 +01:00
os_info.c s390/dump: streamline oldmem copy functions 2015-11-27 09:24:12 +01:00
perf_cpum_cf.c Merge branch 'linus' into perf/core, to pick up fixes before applying new changes 2015-09-28 08:06:57 +02:00
perf_cpum_cf_events.c s390/cpum_cf: Export event names in sysfs 2013-12-16 14:37:50 +01:00
perf_cpum_sf.c s390/cpumf: rework program parameter setting to detect guest samples 2015-10-14 14:32:12 +02:00
perf_event.c s390/perf: make print_debug_cf() static 2014-03-14 12:59:32 +01:00
pgm_check.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
process.c s390: avoid cache aliasing under z/VM and KVM 2015-11-16 12:04:18 +01:00
processor.c s390/diag: add a statistic for diagnose calls 2015-10-14 14:32:06 +02:00
ptrace.c s390/kernel: fix ptrace peek/poke for floating point registers 2015-11-03 14:40:42 +01:00
reipl.S s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +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: remove runtime instrumentation interrupts 2015-11-03 14:40:51 +01:00
s390_ksyms.c s390/fpu: split fpu-internal.h into fpu internals, api, and type headers 2015-10-16 09:41:12 +02:00
sclp.c s390/sclp: _sclp_wait_int(): retain full PSW mask 2015-11-12 13:08:00 +01:00
setup.c s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +01:00
signal.c s390/fpu: always enable the vector facility if it is available 2015-10-14 14:32:08 +02:00
smp.c s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +01:00
stacktrace.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
suspend.c PCI: Include <linux/pci.h>, not <asm/pci.h> 2015-06-08 07:55:03 -05:00
swsusp.S s390/hibernate: fix save and restore of vector registers 2015-09-17 13:43:41 +02:00
sys_s390.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
syscalls.S s390: wire up mlock2 system call 2015-11-16 12:51:07 +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/etr,stp: fix possible deadlock on machine check 2015-10-14 14:32:18 +02:00
topology.c s390/topology: reduce per_cpu() invocations 2015-10-27 09:34:39 +01:00
trace.c s390/diag: add a s390 prefix to the diagnose trace point 2015-11-09 09:10:47 +01:00
traps.c s390/fpu: split fpu-internal.h into fpu internals, api, and type headers 2015-10-16 09:41:12 +02:00
uprobes.c s390/uprobes: fix address space annotation 2015-03-25 11:49:47 +01:00
vdso.c s390/vdso: use correct memory barrier 2015-10-14 14:32:01 +02:00
vmlinux.lds.S s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
vtime.c s390/vtime: correct scaled cputime of partially idle CPUs 2015-09-30 16:22:38 +02:00