OpenCloudOS-Kernel/drivers/s390/cio
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
..
Makefile s390/cio: add eadm subchannel driver 2012-09-26 15:45:00 +02:00
airq.c s390/nohz: use a per-cpu flag for arch_needs_cpu 2014-10-09 09:14:02 +02:00
blacklist.c s390: remove use of seq_printf return value 2015-04-15 16:35:25 -07:00
blacklist.h
ccwgroup.c s390/ccwgroup: use ccwgroup_ungroup wrapper 2014-06-16 10:32:52 +02:00
ccwreq.c s390: cio driver &__get_cpu_var replacements 2014-08-26 13:45:52 -04:00
chp.c s390/cio: replace strnicmp with strncasecmp 2014-10-14 02:18:25 +02:00
chp.h s390/cio: fix multiple structure definitions 2014-05-20 08:58:53 +02:00
chsc.c s390: add support for ipl devices in subchannel sets > 0 2015-11-11 13:56:27 +01:00
chsc.h s390: add support for ipl devices in subchannel sets > 0 2015-11-11 13:56:27 +01:00
chsc_sch.c s390: cio driver &__get_cpu_var replacements 2014-08-26 13:45:52 -04:00
chsc_sch.h
cio.c s390/dump: rework CPU register dump code 2015-11-27 09:24:14 +01:00
cio.h s390/lowcore: replace lowcore irb array with a per-cpu variable 2014-05-28 10:39:16 +02:00
cio_debug.h
cmf.c s390/cio: reactivate cmf after hibernate 2015-10-14 14:32:04 +02:00
crw.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
css.c s390/cio: simplify css_generate_pgid 2015-11-09 09:10:48 +01:00
css.h s390/cio: Delay scan for newly available I/O devices 2013-12-16 14:37:41 +01:00
device.c s390/cio: fix use after free in cmb processing 2015-10-14 14:32:02 +02:00
device.h s390/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
device_fsm.c s390/cio: move ccw_device_call_handler 2015-10-27 09:34:43 +01:00
device_id.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device_ops.c s390/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
device_pgid.c s390/cio: move ccw_device_stlck functions 2015-10-27 09:34:44 +01:00
device_status.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
eadm_sch.c s390: remove unneeded variables 2015-08-07 09:57:01 +02:00
eadm_sch.h s390/eadm_sch: improve quiesce handling 2013-10-24 17:16:58 +02:00
fcx.c [S390] drivers: Correct size given to memset 2009-12-18 17:43:32 +01:00
idset.c s390/cio: idset.c: remove some unused functions 2015-01-08 10:02:50 +01:00
idset.h s390/cio: idset.c: remove some unused functions 2015-01-08 10:02:50 +01:00
io_sch.h s390/cio: dont abort verification after missing irq 2013-02-14 15:55:07 +01:00
ioasm.h [S390] cio: move asms to generic header 2011-03-15 17:08:23 +01:00
isc.c
itcw.c [S390] cio: reduce memory consumption of itcw structures 2011-01-05 12:47:29 +01:00
orb.h s390: add eadm related structures 2012-09-26 15:44:57 +02:00
qdio.h s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
qdio_debug.c qdio: Keep device-specific dbf entries 2014-06-16 10:31:58 +02:00
qdio_debug.h qdio: Keep device-specific dbf entries 2014-06-16 10:31:58 +02:00
qdio_main.c s390/qdio: fix WARN_ON_ONCE condition 2015-10-07 04:52:06 -07:00
qdio_setup.c s390: remove 31 bit support 2015-03-25 11:49:33 +01:00
qdio_thinint.c s390/airq: simplify adapter interrupt code 2013-06-26 21:10:28 +02:00
scm.c s390/scm_block: do not hide eadm subchannel dependency 2013-11-15 14:08:42 +01:00