set reasonable default cmdlines for arm64
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
kexec-tools (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
dann frazier | ||
Artful |
Invalid
|
Undecided
|
Unassigned | ||
makedumpfile (Debian) |
Fix Released
|
Unknown
|
|||
makedumpfile (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
dann frazier | ||
Artful |
Fix Released
|
Undecided
|
dann frazier |
Bug Description
[Impact]
Crash dump support doesn't work by default on any known arm64 platform. Users have to figure out working incantations for the crashkernel= parameter and the parameters passed to the crash-dump kernel themselves and manual edit 2 different config files.
*NOTE* one of these config files moved from kexec-tools to kdump-tools between xenial & artful - that's why kexec-tools is only updated for xenial.
*NOTE* the debdiffs here are large because a few files have been renamed to "*.in" so they can be used as templates for generating per-architecture files at build time.
[Test Case]
Using either a Centriq 2400 or a Cavium ThunderX CRB (these platforms are known to support crashdump), and with a kernel >= 4.13 (xenial-ga did not support crashdump on arm64):
sudo apt install kdump-tools
(reboot, so crashkernel= is added to the kernel commandline)
echo c | sudo tee /proc/sysrq-trigger
Without having to edit any config files, 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-
sudo crash /usr/lib/
crash should successfully load, placing you at a "crash>" prompt. At that prompt, you can issue the 'bt' command to see a backtrace.
Note: you need crash from zesty (7.1.8-1ubuntu1) or later.
[Regression Risk]
The biggest regression risk I see here is that we're introducing build-time mechanisms for generating config files per-architecture, and bugs in that implementation could lead to incorrect settings for non-arm64 architectures. To validate that, I've staged these update in a PPA (ppa:dannf/
[1]
$ for arch in amd64 arm64 armhf i386 ppc64el s390x; do
diff -u0 -rpN ${arch}-cur ${arch}-new | grep -v ^Binary
done
Changed in makedumpfile (Debian): | |
status: | Unknown → Fix Released |
Changed in kexec-tools (Ubuntu Artful): | |
status: | New → Invalid |
Changed in makedumpfile (Ubuntu Artful): | |
status: | New → In Progress |
Changed in makedumpfile (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in makedumpfile (Ubuntu): | |
status: | New → Fix Released |
Changed in kexec-tools (Ubuntu): | |
status: | New → Fix Released |
Changed in kexec-tools (Ubuntu Xenial): | |
status: | New → In Progress |
assignee: | nobody → dann frazier (dannf) |
Changed in makedumpfile (Ubuntu Xenial): | |
assignee: | nobody → dann frazier (dannf) |
Changed in makedumpfile (Ubuntu Artful): | |
assignee: | nobody → dann frazier (dannf) |
description: | updated |
description: | updated |
Hello dann, or anyone else affected,
Accepted makedumpfile into artful-proposed. The package will build now and be available at https:/ /launchpad. net/ubuntu/ +source/ makedumpfile/ 1:1.6.1- 2ubuntu0. 2 in a few hours, and then in the -proposed repository.
Please help us by testing this new package. See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification- needed- artful to verification- done-artful. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification- failed- artful. In either case, without details of your testing we will not be able to proceed.
Further information regarding the verification process can be found at https:/ /wiki.ubuntu. com/QATeam/ PerformingSRUVe rification . Thank you in advance!