zfcpdump.txt 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. The s390 SCSI dump tool (zfcpdump)
  2. System z machines (z900 or higher) provide hardware support for creating system
  3. dumps on SCSI disks. The dump process is initiated by booting a dump tool, which
  4. has to create a dump of the current (probably crashed) Linux image. In order to
  5. not overwrite memory of the crashed Linux with data of the dump tool, the
  6. hardware saves some memory plus the register sets of the boot CPU before the
  7. dump tool is loaded. There exists an SCLP hardware interface to obtain the saved
  8. memory afterwards. Currently 32 MB are saved.
  9. This zfcpdump implementation consists of a Linux dump kernel together with
  10. a user space dump tool, which are loaded together into the saved memory region
  11. below 32 MB. zfcpdump is installed on a SCSI disk using zipl (as contained in
  12. the s390-tools package) to make the device bootable. The operator of a Linux
  13. system can then trigger a SCSI dump by booting the SCSI disk, where zfcpdump
  14. resides on.
  15. The kernel part of zfcpdump is implemented as a debugfs file under "zcore/mem",
  16. which exports memory and registers of the crashed Linux in an s390
  17. standalone dump format. It can be used in the same way as e.g. /dev/mem. The
  18. dump format defines a 4K header followed by plain uncompressed memory. The
  19. register sets are stored in the prefix pages of the respective CPUs. To build a
  20. dump enabled kernel with the zcore driver, the kernel config option
  21. CONFIG_CRASH_DUMP has to be set. When reading from "zcore/mem", the part of
  22. memory, which has been saved by hardware is read by the driver via the SCLP
  23. hardware interface. The second part is just copied from the non overwritten real
  24. memory.
  25. Since kernel version 3.12 also the /proc/vmcore file can also be used to access
  26. the dump.
  27. To get a valid zfcpdump kernel configuration use "make zfcpdump_defconfig".
  28. The s390 zipl tool looks for the zfcpdump kernel and optional initrd/initramfs
  29. under the following locations:
  30. * kernel: <zfcpdump directory>/zfcpdump.image
  31. * ramdisk: <zfcpdump directory>/zfcpdump.rd
  32. The zfcpdump directory is defined in the s390-tools package.
  33. The user space application of zfcpdump can reside in an intitramfs or an
  34. initrd. It can also be included in a built-in kernel initramfs. The application
  35. reads from /proc/vmcore or zcore/mem and writes the system dump to a SCSI disk.
  36. The s390-tools package version 1.24.0 and above builds an external zfcpdump
  37. initramfs with a user space application that writes the dump to a SCSI
  38. partition.
  39. For more information on how to use zfcpdump refer to the s390 'Using the Dump
  40. Tools book', which is available from
  41. http://www.ibm.com/developerworks/linux/linux390.