diff options
| author | HuKeping <hukeping@huawei.com> | 2014-08-29 18:19:11 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-29 19:28:17 -0400 |
| commit | 16b0371a2e2ba1a2dea84a18356b9bc7168a5b12 (patch) | |
| tree | 96a938a38398546e161f8aef99b4a795493b3c6c /Documentation | |
| parent | e3560305192cd51b3c07206c85eb4231594dd58b (diff) | |
Documentation/kdump/kdump.txt: add ARM description
Add arm specific parts to kdump kernel documentation.
Signed-off-by: Hu Keping <hukeping@huawei.com>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Cc: Haren Myneni <hbabu@us.ibm.com>
Cc: Rob Landley <rob@landley.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation')
| -rw-r--r-- | Documentation/kdump/kdump.txt | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/Documentation/kdump/kdump.txt b/Documentation/kdump/kdump.txt index 88d5a863712a..6c0b9f27e465 100644 --- a/Documentation/kdump/kdump.txt +++ b/Documentation/kdump/kdump.txt | |||
| @@ -18,7 +18,7 @@ memory image to a dump file on the local disk, or across the network to | |||
| 18 | a remote system. | 18 | a remote system. |
| 19 | 19 | ||
| 20 | Kdump and kexec are currently supported on the x86, x86_64, ppc64, ia64, | 20 | Kdump and kexec are currently supported on the x86, x86_64, ppc64, ia64, |
| 21 | and s390x architectures. | 21 | s390x and arm architectures. |
| 22 | 22 | ||
| 23 | When the system kernel boots, it reserves a small section of memory for | 23 | When the system kernel boots, it reserves a small section of memory for |
| 24 | the dump-capture kernel. This ensures that ongoing Direct Memory Access | 24 | the dump-capture kernel. This ensures that ongoing Direct Memory Access |
| @@ -112,7 +112,7 @@ There are two possible methods of using Kdump. | |||
| 112 | 2) Or use the system kernel binary itself as dump-capture kernel and there is | 112 | 2) Or use the system kernel binary itself as dump-capture kernel and there is |
| 113 | no need to build a separate dump-capture kernel. This is possible | 113 | no need to build a separate dump-capture kernel. This is possible |
| 114 | only with the architectures which support a relocatable kernel. As | 114 | only with the architectures which support a relocatable kernel. As |
| 115 | of today, i386, x86_64, ppc64 and ia64 architectures support relocatable | 115 | of today, i386, x86_64, ppc64, ia64 and arm architectures support relocatable |
| 116 | kernel. | 116 | kernel. |
| 117 | 117 | ||
| 118 | Building a relocatable kernel is advantageous from the point of view that | 118 | Building a relocatable kernel is advantageous from the point of view that |
| @@ -241,6 +241,13 @@ Dump-capture kernel config options (Arch Dependent, ia64) | |||
| 241 | kernel will be aligned to 64Mb, so if the start address is not then | 241 | kernel will be aligned to 64Mb, so if the start address is not then |
| 242 | any space below the alignment point will be wasted. | 242 | any space below the alignment point will be wasted. |
| 243 | 243 | ||
| 244 | Dump-capture kernel config options (Arch Dependent, arm) | ||
| 245 | ---------------------------------------------------------- | ||
| 246 | |||
| 247 | - To use a relocatable kernel, | ||
| 248 | Enable "AUTO_ZRELADDR" support under "Boot" options: | ||
| 249 | |||
| 250 | AUTO_ZRELADDR=y | ||
| 244 | 251 | ||
| 245 | Extended crashkernel syntax | 252 | Extended crashkernel syntax |
| 246 | =========================== | 253 | =========================== |
| @@ -256,6 +263,10 @@ The syntax is: | |||
| 256 | crashkernel=<range1>:<size1>[,<range2>:<size2>,...][@offset] | 263 | crashkernel=<range1>:<size1>[,<range2>:<size2>,...][@offset] |
| 257 | range=start-[end] | 264 | range=start-[end] |
| 258 | 265 | ||
| 266 | Please note, on arm, the offset is required. | ||
| 267 | crashkernel=<range1>:<size1>[,<range2>:<size2>,...]@offset | ||
| 268 | range=start-[end] | ||
| 269 | |||
| 259 | 'start' is inclusive and 'end' is exclusive. | 270 | 'start' is inclusive and 'end' is exclusive. |
| 260 | 271 | ||
| 261 | For example: | 272 | For example: |
| @@ -296,6 +307,12 @@ Boot into System Kernel | |||
| 296 | on the memory consumption of the kdump system. In general this is not | 307 | on the memory consumption of the kdump system. In general this is not |
| 297 | dependent on the memory size of the production system. | 308 | dependent on the memory size of the production system. |
| 298 | 309 | ||
| 310 | On arm, use "crashkernel=Y@X". Note that the start address of the kernel | ||
| 311 | will be aligned to 128MiB (0x08000000), so if the start address is not then | ||
| 312 | any space below the alignment point may be overwritten by the dump-capture kernel, | ||
| 313 | which means it is possible that the vmcore is not that precise as expected. | ||
| 314 | |||
| 315 | |||
| 299 | Load the Dump-capture Kernel | 316 | Load the Dump-capture Kernel |
| 300 | ============================ | 317 | ============================ |
| 301 | 318 | ||
| @@ -315,7 +332,8 @@ For ia64: | |||
| 315 | - Use vmlinux or vmlinuz.gz | 332 | - Use vmlinux or vmlinuz.gz |
| 316 | For s390x: | 333 | For s390x: |
| 317 | - Use image or bzImage | 334 | - Use image or bzImage |
| 318 | 335 | For arm: | |
| 336 | - Use zImage | ||
| 319 | 337 | ||
| 320 | If you are using a uncompressed vmlinux image then use following command | 338 | If you are using a uncompressed vmlinux image then use following command |
| 321 | to load dump-capture kernel. | 339 | to load dump-capture kernel. |
| @@ -331,6 +349,15 @@ to load dump-capture kernel. | |||
| 331 | --initrd=<initrd-for-dump-capture-kernel> \ | 349 | --initrd=<initrd-for-dump-capture-kernel> \ |
| 332 | --append="root=<root-dev> <arch-specific-options>" | 350 | --append="root=<root-dev> <arch-specific-options>" |
| 333 | 351 | ||
| 352 | If you are using a compressed zImage, then use following command | ||
| 353 | to load dump-capture kernel. | ||
| 354 | |||
| 355 | kexec --type zImage -p <dump-capture-kernel-bzImage> \ | ||
| 356 | --initrd=<initrd-for-dump-capture-kernel> \ | ||
| 357 | --dtb=<dtb-for-dump-capture-kernel> \ | ||
| 358 | --append="root=<root-dev> <arch-specific-options>" | ||
| 359 | |||
| 360 | |||
| 334 | Please note, that --args-linux does not need to be specified for ia64. | 361 | Please note, that --args-linux does not need to be specified for ia64. |
| 335 | It is planned to make this a no-op on that architecture, but for now | 362 | It is planned to make this a no-op on that architecture, but for now |
| 336 | it should be omitted | 363 | it should be omitted |
| @@ -347,6 +374,9 @@ For ppc64: | |||
| 347 | For s390x: | 374 | For s390x: |
| 348 | "1 maxcpus=1 cgroup_disable=memory" | 375 | "1 maxcpus=1 cgroup_disable=memory" |
| 349 | 376 | ||
| 377 | For arm: | ||
| 378 | "1 maxcpus=1 reset_devices" | ||
| 379 | |||
| 350 | Notes on loading the dump-capture kernel: | 380 | Notes on loading the dump-capture kernel: |
| 351 | 381 | ||
| 352 | * By default, the ELF headers are stored in ELF64 format to support | 382 | * By default, the ELF headers are stored in ELF64 format to support |
