From Fedora Project Wiki

No edit summary
No edit summary
Line 41: Line 41:


== How To Test ==
== How To Test ==
Enable the following config lines in /etc/kdump.conf
Enable some of the following config lines in /etc/kdump.conf
 
* Dump to local file system
* Dump to local file system
ext3 LABEL=/boot
ext3 LABEL=/boot
ext3 /dev/sda1
ext3 /dev/sda1
ext4 UUID=03138356-5e61-4ab3-b58e-27507ac41937
ext4 UUID=03138356-5e61-4ab3-b58e-27507ac41937


* Dump to remote machines
* Dump to remote machines
net my.server.com:/path
net my.server.com:/path
net user@remote.server.com
net user@remote.server.com


Line 56: Line 60:
* Other configs
* Other configs
core_collector makedumpfile -c --message-level 1
core_collector makedumpfile -c --message-level 1
core_collector cp
core_collector cp
kdump_post /var/crash/scripts/kdump-post.sh
kdump_post /var/crash/scripts/kdump-post.sh
extra_bins /bin/cp
extra_bins /bin/cp
disk_timeout 30
disk_timeout 30
extra_modules gfs2
extra_modules gfs2
options modulename options
options modulename options
default shell
 
default shell/reboot/shutdown


Trigger a crash and see if the vmcore is dumped to the right place.
Trigger a crash and see if the vmcore is dumped to the right place.
Line 90: Line 101:


== Documentation ==
== Documentation ==
* Not applicable, because we don't need to make documentations for this transparent replacement.
* Not applicable, because we don't have any documentations for this replacement.


== Release Notes ==
== Release Notes ==
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
*
* /sbin/mkdumprd has been replaced by new code, which uses dracut to generate the initrd for kdump kernel.


== Comments and Discussion ==
== Comments and Discussion ==

Revision as of 11:19, 11 July 2011


New mkdumprd for kdump

Summary

This is a replacement for mkdumprd of kexec-tools, to switch to dracut to generate the initrd for kdump kernel.

Owner

  • Email: <amwang at redhat dot com>

Current status

  • Targeted release: Fedora 16
  • Last updated: 2011-07-11
  • Percentage of completion: 10%

Working:

  • Dump to local filesystem

TODO:

  • Read /etc/kdump.conf to generate initrd
  • Dump to remote host via ssh
  • Dump to remote host via nfs
  • Dump to raw block device
  • Implement full functionality of /etc/kdump.conf
  • Dump to multiple targets


Detailed Description

Currently in kexec-tools we use our own /sbin/mkdumprd to generate an initrd for kdump kernel. However, due to the natural complexity of making a new initrd, we have lots of burdens to maintain the mkdumprd code, we decide to switch to using dracut to generate kdump initrd. And hopefully, we can provide a distro-independent mkdumprd to upstream, as dracut itself is cross-distribution.

Benefit to Fedora

The main source of kexec-tools bugs is in mkdumprd, with this change, hopefully we will reduce the number of bugs of kexec-tools.

Scope

All functionality of /sbin/mkdumprd has to be implemented and tested in this new mkdumprd.

How To Test

Enable some of the following config lines in /etc/kdump.conf

  • Dump to local file system

ext3 LABEL=/boot

ext3 /dev/sda1

ext4 UUID=03138356-5e61-4ab3-b58e-27507ac41937

  • Dump to remote machines

net my.server.com:/path

net user@remote.server.com

  • Dump to raw block device

raw /dev/sda5

  • Other configs

core_collector makedumpfile -c --message-level 1

core_collector cp

kdump_post /var/crash/scripts/kdump-post.sh

extra_bins /bin/cp

disk_timeout 30

extra_modules gfs2

options modulename options

default shell/reboot/shutdown

Trigger a crash and see if the vmcore is dumped to the right place.


User Experience

Users should not notice the replacement, because we plan to provide full backward compatibility.

Dependencies

Dracut

Contingency Plan

Fallback to old /sbin/mkdumprd.

Documentation

  • Not applicable, because we don't have any documentations for this replacement.

Release Notes

  • /sbin/mkdumprd has been replaced by new code, which uses dracut to generate the initrd for kdump kernel.

Comments and Discussion

  • Not applicable, because the main discussion is in a Red Hat internal mailing list.