From Fedora Project Wiki
Description
Setup
- Install Fedora on your machine
- After system installed, check if kexec-tools kernel-debuginfo and crash is installed via
rpm -q kexec-tools kernel-debuginfo kernel-devel crash
If not, you can install via yumyum install kexec-tools kernel-debuginfo kernel-devel crash
- Reserve crashkernel for kdump by grubby
grubby --args="crashkernl=128M" --update-kernel=$(grubby --default-kernel)
Reboot system and check /proc/cmdlinecat /proc/cmdline | grep "crashkernel"
- Edit /etc/kdump.conf, add this line:
ext4 /dev/mapper/vg_dhcp6558-lv_root
core_collector makedumpfile -E -d 31
- Apply changes and start kdump via
service kdump restart
- Edit /etc/kdump.conf, add this line:
core_collector makedumpfile -E -d 31
- Apply changes and start kdump via
service kdump restart
- Build crasher kernel module:
make
- Load crasher module:
insmod crasher.ko
How to test
- Trigger crash via:
echo c > /proc/sysrq-trigger
- Analyse vmcore:
readelf -a /var/crash/xxx/vmcore objdump -x /var/crash/xxx/vmcore eu-readelf -a /var/crash/xxx/vmcore
- Use crash to analyse vmcore:
crash -i crash-simple.cmd /usr/lib/debug/lib/modules/xxx/vmlinux /var/crash/xxx/vmcore crash -i crash.cmd /usr/lib/debug/lib/modules/xxx/vmlinux /var/crash/xxx/vmcore
- Use gdb to analyse vmcore:
gdb -x gdb.cmd /usr/lib/debug/lib/modules/xxx/vmlinux /var/crash/xxx/vmcore
Expected Results
- Dump process could be monitered if console is connected
- System reboot successfully after dump vmcore finshed
- vmcore was found under path /var/crash/xxx/vmcore
- readelf should return 0, and no "warning" "warnings" found on output
- objdump should return 0
- eu-readelf should return 0
- No warning or error should be should found on crash output
- No warning or error should be should found on gdb output