From: "Eric W. Biederman" <ebiederm@xmission.com>
To: Andrew Morton <akpm@osdl.org>
Cc: <fastboot@lists.osdl.org>, <linux-kernel@vger.kernel.org>
Subject: [PATCH 25/29] crashdump-documentation
Date: Wed, 19 Jan 2005 0:31:37 -0700 [thread overview]
Message-ID: <crashdump-documentation-11061198972662@ebiederm.dsl.xmission.com> (raw)
In-Reply-To: <x86-crash-shutdown-apic-shutdown-11061198971134@ebiederm.dsl.xmission.com>
I have addressed the worst of the documentation changes
that come about from the current refacatoring.
From: Hariprasad Nellitheertha <hari@in.ibm.com>
This patch contains the documentation for the kexec based crash dump tool.
Signed off by Hariprasad Nellitheertha <hari@in.ibm.com>
Signed-off-by: Eric Biederman <ebiederm@xmission.com>
---
00-INDEX | 2 +
kdump.txt | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 100 insertions(+)
diff -uNr linux-2.6.11-rc1-mm1-nokexec-x86-crash_shutdown-apic-shutdown/Documentation/00-INDEX linux-2.6.11-rc1-mm1-nokexec-crashdump-documentation/Documentation/00-INDEX
--- linux-2.6.11-rc1-mm1-nokexec-x86-crash_shutdown-apic-shutdown/Documentation/00-INDEX Fri Jan 14 04:28:28 2005
+++ linux-2.6.11-rc1-mm1-nokexec-crashdump-documentation/Documentation/00-INDEX Tue Jan 18 23:16:08 2005
@@ -140,6 +140,8 @@
- info on the in-kernel binary support for Java(tm).
kbuild/
- directory with info about the kernel build process.
+kdumpt.txt
+ - mini HowTo on getting the crash dump code to work.
kernel-doc-nano-HOWTO.txt
- mini HowTo on generation and location of kernel documentation files.
kernel-docs.txt
diff -uNr linux-2.6.11-rc1-mm1-nokexec-x86-crash_shutdown-apic-shutdown/Documentation/kdump.txt linux-2.6.11-rc1-mm1-nokexec-crashdump-documentation/Documentation/kdump.txt
--- linux-2.6.11-rc1-mm1-nokexec-x86-crash_shutdown-apic-shutdown/Documentation/kdump.txt Wed Dec 31 17:00:00 1969
+++ linux-2.6.11-rc1-mm1-nokexec-crashdump-documentation/Documentation/kdump.txt Tue Jan 18 23:16:08 2005
@@ -0,0 +1,98 @@
+Documentation for kdump - the kexec based crash dumping solution
+================================================================
+
+DESIGN
+======
+
+We use kexec to reboot to a second kernel whenever a dump needs to be taken.
+This second kernel is booted with with very little memory (configurable
+at compile time). The first kernel reserves the section of memory that the
+second kernel uses. This ensures that on-going DMA from the first kernel
+does not corrupt the second kernel. The first 640k of physical memory is
+needed irrespective of where the kernel loads at. Hence, this region is
+backed up before reboot.
+
+In the second kernel, "old memory" can be accessed in two ways. The
+first one is through a device interface. We can create a /dev/oldmem or
+whatever and write out the memory in raw format. The second interface is
+through /proc/vmcore. This exports the dump as an ELF format file which
+can be written out using any file copy command (cp, scp, etc). Further, gdb
+can be used to perform some minimal debugging on the dump file. Both these
+methods ensure that there is correct ordering of the dump pages (corresponding
+to the first 640k that has been relocated).
+
+SETUP
+=====
+
+1) Obtain the appropriate -mm tree patch and apply it on to the vanilla
+ kernel tree.
+
+2) Two kernels need to be built in order to get this feature working.
+
+ For the first kernel, choose the default values for the following options.
+
+ a) Physical address where the kernel is loaded
+ b) kexec system call
+ c) kernel crash dumps
+
+ All the options are under "Processor type and features"
+
+ For the second kernel, change (a) to 16MB. If you want to choose another
+ value here, ensure "location from where the crash dumping kernel will boot
+ (MB)" under (c) reflects the same value.
+
+ Also ensure you have CONFIG_HIGHMEM on.
+
+3) Boot into the first kernel. You are now ready to try out kexec based crash
+ dumps.
+
+4) Load the second kernel to be booted using
+
+ kexec -p <second-kernel> --args-linux --append="root=<root-dev> dump
+ init 1 memmap=exactmap memmap=640k@0 memmap=32M@16M"
+
+ Note that <second-kernel> has to be a vmlinux image. bzImage will not
+ work, as of now.
+
+5) System reboots into the second kernel when a panic occurs.
+ You could write a module to call panic, for testing purposes.
+
+6) Write out the dump file using
+
+ cp /proc/vmcore <dump-file>
+
+You can also access the dump as a device for a linear/raw view. To do this,
+you will need the kd-oldmem-<version>.patch built into the kernel. To create
+the device, type
+
+ mknod /dev/oldmem c 1 12
+
+Use "dd" with suitable options for count, bs and skip to access specific
+portions of the dump.
+
+ANALYSIS
+========
+
+You can run gdb on the dump file copied out of /proc/vmcore. Use vmlinux built
+with -g and run
+
+ gdb vmlinux <dump-file>
+
+Stack trace for the task on processor 0, register display, memory display
+work fine.
+
+TODO
+====
+
+1) Provide a kernel-pages only view for the dump. This could possibly turn up
+ as /proc/vmcore-kern.
+2) Provide register contents of all processors (similar to what multi-threaded
+ core dumps does).
+3) Modify "crash" to make it recognize this dump.
+4) Make the i386 kernel boot from any location so we can run the second kernel
+ from the reserved location instead of the current approach.
+
+CONTACT
+=======
+
+Hariprasad Nellitheertha - hari at in dot ibm dot com
next prev parent reply other threads:[~2005-01-19 7:57 UTC|newest]
Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-19 7:31 [PATCH 0/29] overview Eric W. Biederman
2005-01-19 7:31 ` [PATCH 1/29] x86-rename-apic_mode_exint Eric W. Biederman
2005-01-19 7:31 ` [PATCH 2/29] x86-local-apic-fix Eric W. Biederman
2005-01-19 7:31 ` [PATCH 3/29] x86_64-e820-64bit Eric W. Biederman
2005-01-19 7:31 ` [PATCH 4/29] x86-i8259-shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 5/29] x86_64-i8259-shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 6/29] x86-apic-virtwire-on-shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 7/29] x86_64-apic-virtwire-on-shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 8/29] vmlinux-fix-physical-addrs Eric W. Biederman
2005-01-19 7:31 ` [PATCH 9/29] x86-vmlinux-fix-physical-addrs Eric W. Biederman
2005-01-19 7:31 ` [PATCH 10/29] x86_64-vmlinux-fix-physical-addrs Eric W. Biederman
2005-01-19 7:31 ` [PATCH 11/29] x86_64-entry64 Eric W. Biederman
2005-01-19 7:31 ` [PATCH 12/29] x86-config-kernel-start Eric W. Biederman
2005-01-19 7:31 ` [PATCH 13/29] x86_64-config-kernel-start Eric W. Biederman
2005-01-19 7:31 ` [PATCH 14/29] kexec-kexec-generic Eric W. Biederman
2005-01-19 7:31 ` [PATCH 15/29] x86-machine_shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 16/29] x86-kexec Eric W. Biederman
2005-01-19 7:31 ` [PATCH 17/29] x86-crashkernel Eric W. Biederman
2005-01-19 7:31 ` [PATCH 18/29] x86_64-machine_shutdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 19/29] x86_64-kexec Eric W. Biederman
2005-01-19 7:31 ` [PATCH 20/29] x86_64-crashkernel Eric W. Biederman
2005-01-19 7:31 ` [PATCH 21/29] kexec-ppc-support Eric W. Biederman
2005-01-19 7:31 ` [PATCH 22/29] x86-crash_shutdown-nmi-shootdown Eric W. Biederman
2005-01-19 7:31 ` [PATCH 23/29] x86-crash_shutdown-snapshot-registers Eric W. Biederman
2005-01-19 7:31 ` [PATCH 24/29] x86-crash_shutdown-apic-shutdown Eric W. Biederman
2005-01-19 7:31 ` Eric W. Biederman [this message]
2005-01-19 7:31 ` [PATCH 26/29] crashdump-memory-preserving-reboot-using-kexec Eric W. Biederman
2005-01-19 7:31 ` [PATCH 27/29] crashdump-routines-for-copying-dump-pages Eric W. Biederman
2005-01-19 7:31 ` [PATCH 28/29] crashdump-elf-format-dump-file-access Eric W. Biederman
2005-01-19 7:31 ` [PATCH 29/29] crashdump-linear-raw-format-dump-file-access Eric W. Biederman
2005-01-19 12:25 ` [PATCH 19/29] x86_64-kexec Andi Kleen
2005-01-20 15:50 ` Adrian Bunk
2005-01-20 18:06 ` [Fastboot] " Eric W. Biederman
2005-01-19 12:10 ` [PATCH 16/29] x86-kexec Hariprasad Nellitheertha
2005-01-19 18:17 ` [Fastboot] " Eric W. Biederman
2005-01-25 3:54 ` [PATCH 6/29] x86-apic-virtwire-on-shutdown Len Brown
2005-01-25 6:39 ` Eric W. Biederman
2005-01-25 7:36 ` Len Brown
2005-01-25 9:11 ` Eric W. Biederman
2005-01-25 3:32 ` [PATCH 4/29] x86-i8259-shutdown Len Brown
2005-01-25 3:59 ` Dave Jones
2005-01-25 6:30 ` Eric W. Biederman
2005-01-25 8:35 ` Eric W. Biederman
2005-01-25 9:43 ` Barry K. Nathan
2005-01-25 10:14 ` Eric W. Biederman
2005-01-25 10:49 ` Barry K. Nathan
2005-01-25 11:40 ` Eric W. Biederman
2005-01-25 20:57 ` Barry K. Nathan
2005-01-25 12:12 ` Eric W. Biederman
2005-01-25 22:02 ` Barry K. Nathan
2005-01-25 22:12 ` Eric W. Biederman
2005-01-26 13:27 ` Sytse Wielinga
2005-01-26 14:06 ` Eric W. Biederman
2005-01-26 14:43 ` Sytse Wielinga
2005-01-26 15:12 ` Eric W. Biederman
2005-01-26 22:58 ` Barry K. Nathan
2005-01-21 7:55 ` [PATCH] Reserving backup region for kexec based crashdumps Vivek Goyal
2005-01-21 7:54 ` [Fastboot] " Eric W. Biederman
2005-01-21 10:57 ` Vivek Goyal
2005-01-21 11:13 ` Eric W. Biederman
2005-01-23 10:14 ` Vivek Goyal
2005-01-26 17:21 ` Eric W. Biederman
2005-01-26 19:15 ` Andrew Morton
2005-01-27 13:45 ` Vivek Goyal
2005-01-27 20:45 ` Eric W. Biederman
2005-01-28 13:06 ` Vivek Goyal
2005-01-28 20:29 ` Eric W. Biederman
2005-02-01 15:17 ` Vivek Goyal
2005-02-01 15:26 ` Eric W. Biederman
2005-02-02 7:10 ` Itsuro Oda
2005-02-02 7:49 ` Koichi Suzuki
2005-02-02 15:24 ` Eric W. Biederman
2005-02-03 7:28 ` Itsuro Oda
2005-02-03 9:00 ` Eric W. Biederman
2005-02-03 23:18 ` Itsuro Oda
2005-02-04 0:41 ` Eric W. Biederman
2005-02-04 1:07 ` Itsuro Oda
2005-02-16 8:49 ` [PATCH] /proc/cpumem Itsuro Oda
2005-02-16 13:58 ` Eric W. Biederman
2005-02-17 0:43 ` Itsuro Oda
2005-02-17 9:55 ` [Fastboot] " Eric W. Biederman
2005-02-18 6:17 ` Itsuro Oda
2005-02-18 7:22 ` Eric W. Biederman
2005-02-17 0:17 ` YAMAMOTO Takashi
2005-02-17 5:58 ` [Fastboot] " Vivek Goyal
2005-02-17 6:18 ` Itsuro Oda
2005-02-17 18:18 ` Dave Jones
2005-02-17 19:46 ` [Fastboot] " Eric W. Biederman
2005-02-02 14:26 ` [Fastboot] [PATCH] Reserving backup region for kexec based crashdumps Eric W. Biederman
2005-02-02 10:07 ` Vivek Goyal
2005-02-02 15:42 ` Eric W. Biederman
2005-02-03 14:47 ` Vivek Goyal
2005-02-01 8:04 ` Koichi Suzuki
2005-02-01 9:06 ` Eric W. Biederman
2005-02-02 7:42 ` Itsuro Oda
2005-02-02 14:45 ` Eric W. Biederman
2005-02-04 0:23 ` Itsuro Oda
2005-02-04 1:55 ` Eric W. Biederman
2005-02-02 9:08 ` Koichi Suzuki
2005-02-02 14:31 ` Eric W. Biederman
2005-02-03 7:02 ` Hirokazu Takahashi
2005-02-03 9:01 ` Vivek Goyal
2005-02-03 9:37 ` Hirokazu Takahashi
2005-02-03 10:07 ` Eric W. Biederman
2005-02-03 9:13 ` Eric W. Biederman
2005-02-03 10:10 ` Hirokazu Takahashi
2005-02-03 10:39 ` Eric W. Biederman
2005-02-04 10:05 ` Hirokazu Takahashi
2005-02-04 11:17 ` Eric W. Biederman
2005-02-04 12:02 ` Eric W. Biederman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=crashdump-documentation-11061198972662@ebiederm.dsl.xmission.com \
--to=ebiederm@xmission.com \
--cc=akpm@osdl.org \
--cc=fastboot@lists.osdl.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®