The attached patch has the complete set of patches needed for kexec support on ARM64. * kexec: Increase the upper limit for RAM segments [LP: #1663400] * Enable compressed kernel support for ARM64 [LP: #1661363] * Enable ARM64 support [LP: #1659618]
This patch applies cleanly on Xenial kexec-tools. https://pastebin.ubuntu.com/23968089/ Testing for lp 1663400 is posted to the SRU request description. Testing results for arm64 support yielded the same results as previously. Ubuntu 16.04.1 LTS ubuntu ttyAMA2 ubuntu login: [ 857.281231] mmc0: Reset 0x1 never completed. [ 860.859581] kexec_core: Starting new kernel [ 0.000000] arch_timer: Failed to initialize memory-mapped timer, skipping [ 1.169613] coresight-tmc ARMHFFF0:00: Byte-cntr-irq not specified [ 1.178015] Failed to find cpu0 device node [ 1.452042] mmc0: Reset 0x1 never completed. [ 1.555603] mmc0: Reset 0x1 never completed. [ 1.659871] mmc0: Reset 0x1 never completed. [ 1.665249] hub 2-0:1.0: config failed, hub doesn't have any ports! (err -19) [ 1.673240] hub 4-0:1.0: config failed, hub doesn't have any ports! (err -19) [ 1.680657] hub 6-0:1.0: config failed, hub doesn't have any ports! (err -19) [ 1.687974] hub 8-0:1.0: config failed, hub doesn't have any ports! (err -19) ** Patch added: "[XENIAL V2] kexec arm64 support patch" https://bugs.launchpad.net/ubuntu/+source/kexec-tools/+bug/1659618/+attachment/4816668/+files/V2-kexec-xenial-arm64-support.patch -- 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/1659618 Title: Enable ARM64 support in kexec-tools Status in kexec-tools package in Ubuntu: Fix Released Status in kexec-tools source package in Xenial: In Progress Status in kexec-tools source package in Yakkety: In Progress Status in kexec-tools package in Debian: Fix Released Bug description: [IMPACT] * kexec-tools in Xenial (16.04) currently does not support ARM64 architecture. * Backport support for ARM64 arch from upstream https://github.com/horms/kexec-tools * Majority of the patches are contained in kexec/arch/arm64/ except for one patch that impacts purgatory and common device tree routines. [TEST CASE] * I built kexec-tools for ARM64 and tested it on HW using the following testcase: $ sudo kexec -l /boot/vmlinuz-<version>-generic --initrd=/boot/initrd.img-<version>-generic --command-line="root=UUID=<uuid> ro vt.handoff=7" $ sudo kexec -e * I was able to kexec the new kernel successfully. * [ 6702.357899] kexec_core: Starting new kernel [ 0.000000] Booting Linux on physical CPU 0x200 [ 0.000000] Linux version <version>-generic (buildd@bos01-arm64-008) (gcc version 5.4.0 20160609 (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4) ) [ 0.000000] Boot CPU: AArch64 Processor [510f8000] [REGRESSION POTENTIAL] * Since patches are confined to arm[64] there is a low overall risk of regression. [OTHER INFO] * You can find a Xenial kexec-tools package built for AMD64, i386 and ARM64 in my PPA https://launchpad.net/~manjo/+archive/ubuntu/kexec-tools * This package is built using the Xenial source package for kexec-tools with ARM64 enablement patches applied. * Please pull the changes from my PPA package and integrate into Ubuntu Xenial kexec-tools after review. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/kexec-tools/+bug/1659618/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp