** Changed in: kexec-tools (Ubuntu Yakkety)
Status: Confirmed => In Progress
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to kexec-tools in Ubuntu.
https://bugs.launchpad.net/bugs/1694859
Title:
arm64 kernel crashdump support
Status in kexec-tools package in Ubuntu:
Fix Released
Status in linux package in Ubuntu:
Fix Committed
Status in makedumpfile package in Ubuntu:
Confirmed
Status in kexec-tools source package in Xenial:
Confirmed
Status in linux source package in Xenial:
Won't Fix
Status in makedumpfile source package in Xenial:
Confirmed
Status in kexec-tools source package in Yakkety:
In Progress
Status in linux source package in Yakkety:
Won't Fix
Status in makedumpfile source package in Yakkety:
Confirmed
Status in kexec-tools source package in Zesty:
In Progress
Status in linux source package in Zesty:
Fix Committed
Status in makedumpfile source package in Zesty:
Confirmed
Bug description:
Note: Updates are being staged at ppa:dannf/arm64-kdump.
[Impact]
It is not possible to collect a kernel crash dump from a crashed arm64 server
for later debugging.
[Test Case]
sudo apt install kdump-tools
(reboot, so crashkernel= is added to the kernel commandline)
echo c | sudo tee /proc/sysrq-trigger
Crash dump should occur, with artifacts collected in /var/crash.
If you want to verify that the dump is usable, install the
corresponding linux-image-<ver>-dbgsym package and run:
sudo crash /usr/lib/debug/boot/vmlinux-<ver>
/var/crash/<crash>/dump.<crash>
crash should successfully load, placing you at a "crash>" prompt. At
that prompt, you can issue the 'bt' command to see a backtrace.
[Regression Risk]
= Kernel =
3 patches here touch code outside of arch/arm64/:
memblock: add memblock_clear_nomap()
This adds a new function with no callers, so regression risk is negligible.
(A later patch adds a call to it under arch/arm64/).
memblock: add memblock_cap_memory_range()
This refactors some of the code in memblock_mem_limit_remove_map() into a new
function. The only existing caller of memblock_mem_limit_remove_map() is under
arch/arm64/, so the regression risk outside of arm64 is negligible.
efi/libstub/arm*: Set default address and size cells values for an empty dtb
Because this code is for EFI platforms that support device-tree, it is
de-facto ARM-specific (as noted in the patch title).
For arm64, we have mitigated the risk by explicit regression testing on
several platforms:
- Qualcomm QDF2400
- Cavium ThunderX CRB1S
- HP m400 (X-Gene)
- HiSilicon D05 (Hi07)
= kexec-tools =
For zesty, 10 patches are required to add kdump support.
0001-kexec-extend-the-semantics-of-kexec_iomem_for_each_l.patch:
This modifies a function used on armhf & x86. The description explains the
change, and why it does not impact those archs:
-----
The current users of kexec_iomem_for_each_line(), arm, sh and x86, will not
be affected by this change because
* arm
The callback function only returns -1 or 0, and the return value of
kexec_iomem_for_each_line() will never be used.
* sh, x86
The callback function may return (-1 for sh,) 0 or 1, but always returns
1 once we have reached the maximum number of entries allowed.
Even so the current kexec_iomem_for_each_line() counts them up.
This change actually fixes this bug.
-----
0002-kexec-generalize-and-rename-get_kernel_stext_sym.patch:
This generalizes a function that was duplicated by arm & x86 and makes it
common so arm64 can use it.
The remaining 8 of these only touch code in kexec/arch/arm64, so
regression risk for other architectures is negligible.
Finally, I have tested this update on both i386 and amd64 VMs. i386
crashes do not currently work in zesty (filed LP: #1699874), and my
test results show no change there. amd64 worked before, and continue
to work with these changes.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/kexec-tools/+bug/1694859/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp