Mauro Carvalho Chehab | 8b4a503 | 2019-06-08 23:27:16 -0300 | [diff] [blame] | 1 | ================================== |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 2 | The s390 SCSI dump tool (zfcpdump) |
Mauro Carvalho Chehab | 8b4a503 | 2019-06-08 23:27:16 -0300 | [diff] [blame] | 3 | ================================== |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 4 | |
| 5 | System z machines (z900 or higher) provide hardware support for creating system |
| 6 | dumps on SCSI disks. The dump process is initiated by booting a dump tool, which |
| 7 | has to create a dump of the current (probably crashed) Linux image. In order to |
| 8 | not overwrite memory of the crashed Linux with data of the dump tool, the |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 9 | hardware saves some memory plus the register sets of the boot CPU before the |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 10 | dump tool is loaded. There exists an SCLP hardware interface to obtain the saved |
| 11 | memory afterwards. Currently 32 MB are saved. |
| 12 | |
| 13 | This zfcpdump implementation consists of a Linux dump kernel together with |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 14 | a user space dump tool, which are loaded together into the saved memory region |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 15 | below 32 MB. zfcpdump is installed on a SCSI disk using zipl (as contained in |
| 16 | the s390-tools package) to make the device bootable. The operator of a Linux |
| 17 | system can then trigger a SCSI dump by booting the SCSI disk, where zfcpdump |
| 18 | resides on. |
| 19 | |
Martin Schwidefsky | ffa52d0 | 2015-10-28 09:47:58 +0100 | [diff] [blame] | 20 | The user space dump tool accesses the memory of the crashed system by means |
| 21 | of the /proc/vmcore interface. This interface exports the crashed system's |
| 22 | memory and registers in ELF core dump format. To access the memory which has |
| 23 | been saved by the hardware SCLP requests will be created at the time the data |
| 24 | is needed by /proc/vmcore. The tail part of the crashed systems memory which |
| 25 | has not been stashed by hardware can just be copied from real memory. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 26 | |
Martin Schwidefsky | ffa52d0 | 2015-10-28 09:47:58 +0100 | [diff] [blame] | 27 | To build a dump enabled kernel the kernel config option CONFIG_CRASH_DUMP |
| 28 | has to be set. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 29 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 30 | To get a valid zfcpdump kernel configuration use "make zfcpdump_defconfig". |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 31 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 32 | The s390 zipl tool looks for the zfcpdump kernel and optional initrd/initramfs |
| 33 | under the following locations: |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 34 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 35 | * kernel: <zfcpdump directory>/zfcpdump.image |
| 36 | * ramdisk: <zfcpdump directory>/zfcpdump.rd |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 37 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 38 | The zfcpdump directory is defined in the s390-tools package. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 39 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 40 | The user space application of zfcpdump can reside in an intitramfs or an |
| 41 | initrd. It can also be included in a built-in kernel initramfs. The application |
| 42 | reads from /proc/vmcore or zcore/mem and writes the system dump to a SCSI disk. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 43 | |
Michael Holzheu | 7d4c738 | 2014-04-14 11:56:07 +0200 | [diff] [blame] | 44 | The s390-tools package version 1.24.0 and above builds an external zfcpdump |
| 45 | initramfs with a user space application that writes the dump to a SCSI |
| 46 | partition. |
Michael Holzheu | 411ed32 | 2007-04-27 16:01:49 +0200 | [diff] [blame] | 47 | |
| 48 | For more information on how to use zfcpdump refer to the s390 'Using the Dump |
Gerald Schaefer | d03756a | 2020-05-07 16:21:37 +0200 | [diff] [blame] | 49 | Tools' book, which is available from IBM Knowledge Center: |
| 50 | https://www.ibm.com/support/knowledgecenter/linuxonibm/liaaf/lnz_r_dt.html |