summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHari Bathini <hbathini@linux.ibm.com>2019-09-11 10:47:07 -0400
committerMichael Ellerman <mpe@ellerman.id.au>2019-09-13 10:04:41 -0400
commit8468d155450c89adbb400cdae42bd4095f3045a9 (patch)
tree3ef6c934629d125c019968e2d0c3bd17f74edfce
parent7f0ad11d3fb948a0d7770bd38ae17a51413c3dac (diff)
powerpc/fadump: Improve fadump documentation
The figures depicting FADump's (Firmware-Assisted Dump) memory layout are missing some finer details like different memory regions and what they represent. Improve the documentation by updating those details. Signed-off-by: Hari Bathini <hbathini@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/156821322070.5656.8194734198500730487.stgit@hbathini.in.ibm.com
-rw-r--r--Documentation/powerpc/firmware-assisted-dump.rst61
1 files changed, 33 insertions, 28 deletions
diff --git a/Documentation/powerpc/firmware-assisted-dump.rst b/Documentation/powerpc/firmware-assisted-dump.rst
index 9ca12830a48e..563c021df539 100644
--- a/Documentation/powerpc/firmware-assisted-dump.rst
+++ b/Documentation/powerpc/firmware-assisted-dump.rst
@@ -76,8 +76,9 @@ as follows:
76 there is crash data available from a previous boot. During 76 there is crash data available from a previous boot. During
77 the early boot OS will reserve rest of the memory above 77 the early boot OS will reserve rest of the memory above
78 boot memory size effectively booting with restricted memory 78 boot memory size effectively booting with restricted memory
79 size. This will make sure that the second kernel will not 79 size. This will make sure that this kernel (also, referred
80 touch any of the dump memory area. 80 to as second kernel or capture kernel) will not touch any
81 of the dump memory area.
81 82
82- User-space tools will read /proc/vmcore to obtain the contents 83- User-space tools will read /proc/vmcore to obtain the contents
83 of memory, which holds the previous crashed kernel dump in ELF 84 of memory, which holds the previous crashed kernel dump in ELF
@@ -128,42 +129,46 @@ space memory except the user pages that were present in CMA region::
128 129
129 o Memory Reservation during first kernel 130 o Memory Reservation during first kernel
130 131
131 Low memory Top of memory 132 Low memory Top of memory
132 0 boot memory size | 133 0 boot memory size |<--Reserved dump area --->| |
133 | | |<--Reserved dump area -->| | 134 | | | (Permanent Reservation) | |
134 V V | Permanent Reservation | V 135 V V | | V
135 +-----------+----------/ /---+---+----+-----------+----+------+ 136 +-----------+----------/ /---+---+----+--------+---+----+------+
136 | | |CPU|HPTE| DUMP |ELF | | 137 | | |CPU|HPTE| DUMP |HDR|ELF | |
137 +-----------+----------/ /---+---+----+-----------+----+------+ 138 +-----------+----------/ /---+---+----+--------+---+----+------+
138 | ^ 139 | ^ ^
139 | | 140 | | |
140 \ / 141 \ / |
141 ------------------------------------------- 142 ----------------------------------- FADump Header
142 Boot memory content gets transferred to 143 Boot memory content gets transferred (meta area)
143 reserved area by firmware at the time of 144 to reserved area by firmware at the
144 crash 145 time of crash
146
145 Fig. 1 147 Fig. 1
146 148
149
147 o Memory Reservation during second kernel after crash 150 o Memory Reservation during second kernel after crash
148 151
149 Low memory Top of memory 152 Low memory Top of memory
150 0 boot memory size | 153 0 boot memory size |
151 | |<------------- Reserved dump area ----------- -->| 154 | |<----------- Crash preserved area --------------->|
152 V V V 155 V V |<-- Reserved dump area -->| V
153 +-----------+----------/ /---+---+----+-----------+----+------+ 156 +-----------+----------/ /---+---+----+--------+---+----+------+
154 | | |CPU|HPTE| DUMP |ELF | | 157 | | |CPU|HPTE| DUMP |HDR|ELF | |
155 +-----------+----------/ /---+---+----+-----------+----+------+ 158 +-----------+----------/ /---+---+----+--------+---+----+------+
156 | | 159 | |
157 V V 160 V V
158 Used by second /proc/vmcore 161 Used by second /proc/vmcore
159 kernel to boot 162 kernel to boot
160 Fig. 2 163 Fig. 2
161 164
162Currently the dump will be copied from /proc/vmcore to a 165Currently the dump will be copied from /proc/vmcore to a new file upon
163a new file upon user intervention. The dump data available through 166user intervention. The dump data available through /proc/vmcore will be
164/proc/vmcore will be in ELF format. Hence the existing kdump 167in ELF format. Hence the existing kdump infrastructure (kdump scripts)
165infrastructure (kdump scripts) to save the dump works fine with 168to save the dump works fine with minor modifications. KDump scripts on
166minor modifications. 169major Distro releases have already been modified to work seemlessly (no
170user intervention in saving the dump) when FADump is used, instead of
171KDump, as dump mechanism.
167 172
168The tools to examine the dump will be same as the ones 173The tools to examine the dump will be same as the ones
169used for kdump. 174used for kdump.