Commit 91302143 authored by Michael Holzheu's avatar Michael Holzheu Committed by Martin Schwidefsky

[S390] Add s390x description to Documentation/kdump/kdump.txt

Add s390x specific parts to kdump kernel documentation.
Signed-off-by: default avatarMichael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 7fe7a18c
...@@ -17,8 +17,8 @@ You can use common commands, such as cp and scp, to copy the ...@@ -17,8 +17,8 @@ You can use common commands, such as cp and scp, to copy the
memory image to a dump file on the local disk, or across the network to memory image to a dump file on the local disk, or across the network to
a remote system. a remote system.
Kdump and kexec are currently supported on the x86, x86_64, ppc64 and ia64 Kdump and kexec are currently supported on the x86, x86_64, ppc64, ia64,
architectures. and s390x architectures.
When the system kernel boots, it reserves a small section of memory for When the system kernel boots, it reserves a small section of memory for
the dump-capture kernel. This ensures that ongoing Direct Memory Access the dump-capture kernel. This ensures that ongoing Direct Memory Access
...@@ -34,11 +34,18 @@ Similarly on PPC64 machines first 32KB of physical memory is needed for ...@@ -34,11 +34,18 @@ Similarly on PPC64 machines first 32KB of physical memory is needed for
booting regardless of where the kernel is loaded and to support 64K page booting regardless of where the kernel is loaded and to support 64K page
size kexec backs up the first 64KB memory. size kexec backs up the first 64KB memory.
For s390x, when kdump is triggered, the crashkernel region is exchanged
with the region [0, crashkernel region size] and then the kdump kernel
runs in [0, crashkernel region size]. Therefore no relocatable kernel is
needed for s390x.
All of the necessary information about the system kernel's core image is All of the necessary information about the system kernel's core image is
encoded in the ELF format, and stored in a reserved area of memory encoded in the ELF format, and stored in a reserved area of memory
before a crash. The physical address of the start of the ELF header is before a crash. The physical address of the start of the ELF header is
passed to the dump-capture kernel through the elfcorehdr= boot passed to the dump-capture kernel through the elfcorehdr= boot
parameter. parameter. Optionally the size of the ELF header can also be passed
when using the elfcorehdr=[size[KMG]@]offset[KMG] syntax.
With the dump-capture kernel, you can access the memory image, or "old With the dump-capture kernel, you can access the memory image, or "old
memory," in two ways: memory," in two ways:
...@@ -291,6 +298,10 @@ Boot into System Kernel ...@@ -291,6 +298,10 @@ Boot into System Kernel
The region may be automatically placed on ia64, see the The region may be automatically placed on ia64, see the
dump-capture kernel config option notes above. dump-capture kernel config option notes above.
On s390x, typically use "crashkernel=xxM". The value of xx is dependent
on the memory consumption of the kdump system. In general this is not
dependent on the memory size of the production system.
Load the Dump-capture Kernel Load the Dump-capture Kernel
============================ ============================
...@@ -308,6 +319,8 @@ For ppc64: ...@@ -308,6 +319,8 @@ For ppc64:
- Use vmlinux - Use vmlinux
For ia64: For ia64:
- Use vmlinux or vmlinuz.gz - Use vmlinux or vmlinuz.gz
For s390x:
- Use image or bzImage
If you are using a uncompressed vmlinux image then use following command If you are using a uncompressed vmlinux image then use following command
...@@ -337,6 +350,8 @@ For i386, x86_64 and ia64: ...@@ -337,6 +350,8 @@ For i386, x86_64 and ia64:
For ppc64: For ppc64:
"1 maxcpus=1 noirqdistrib reset_devices" "1 maxcpus=1 noirqdistrib reset_devices"
For s390x:
"1 maxcpus=1 cgroup_disable=memory"
Notes on loading the dump-capture kernel: Notes on loading the dump-capture kernel:
...@@ -362,6 +377,20 @@ Notes on loading the dump-capture kernel: ...@@ -362,6 +377,20 @@ Notes on loading the dump-capture kernel:
dump. Hence generally it is useful either to build a UP dump-capture dump. Hence generally it is useful either to build a UP dump-capture
kernel or specify maxcpus=1 option while loading dump-capture kernel. kernel or specify maxcpus=1 option while loading dump-capture kernel.
* For s390x there are two kdump modes: If a ELF header is specified with
the elfcorehdr= kernel parameter, it is used by the kdump kernel as it
is done on all other architectures. If no elfcorehdr= kernel parameter is
specified, the s390x kdump kernel dynamically creates the header. The
second mode has the advantage that for CPU and memory hotplug, kdump has
not to be reloaded with kexec_load().
* For s390x systems with many attached devices the "cio_ignore" kernel
parameter should be used for the kdump kernel in order to prevent allocation
of kernel memory for devices that are not relevant for kdump. The same
applies to systems that use SCSI/FCP devices. In that case the
"allow_lun_scan" zfcp module parameter should be set to zero before
setting FCP devices online.
Kernel Panic Kernel Panic
============ ============
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment