[Bug 1659618] Re: Enable ARM64 support in kexec-tools

Manoj Iyer 1659618 at bugs.launchpad.net
Tue Feb 7 16:41:39 UTC 2017


[AMD64 regression testing]
[Testing with stock Yakkety kernel & kexec-tools]

ubuntu at test:~$ sudo file /boot/vmlinuz-4.8.0-30-generic 
/boot/vmlinuz-4.8.0-30-generic: Linux kernel x86 boot executable bzImage, version 4.8.0-30-generic (buildd at lcy01-08) #32-Ubuntu SMP Fri Dec 2 03:, RO-rootFS, swap_dev 0x7, Normal VGA
ubuntu at test:~$ 

ubuntu at test:~$ dpkg -l | grep kexec-tools
ii  kexec-tools                                1:2.0.10-2ubuntu1                             amd64        tools to support fast kexec reboots
ubuntu at test:~$ 

ubuntu at test:~$ sudo kexec -l /boot/vmlinuz-4.8.0-30-generic --initrd=/boot/initrd.img-4.8.0-30-generic --append="root=LABEL=cloudimg-rootfs console=ttyS0"
ubuntu at test:~$ sudo kexec -e 

test login: [  212.930357] kexec_core: Starting new kernel
[    0.000000] Linux version 4.8.0-30-generic (buildd at lcy01-08) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) #32-Ubuntu SMP Fri Dec 2 03:43:27 UTC 2016 (Ubuntu 4.8.0-30.32-generic 4.8.6)
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.8.0-30-generic root=LABEL=cloudimg-rootfs console=ttyS0
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] x86/fpu: Legacy x87 FPU detected.
[    0.000000] x86/fpu: Using 'eager' FPU context switches.
[    0.000000] e820: BIOS-provided physical RAM map:

[Testing with patched kexec-tools]

== Build & Install patched kexec-tools ==
ubuntu at test:~/kexec$ dpkg -l | grep kexec-tools
ii  kexec-tools                                1:2.0.10-2ubuntu1.1                           amd64        tools to support fast kexec reboots
ubuntu at test:~/kexec$ 

ubuntu at test:~/kexec$ sudo file /boot/vmlinuz-4.8.0-30-generic 
/boot/vmlinuz-4.8.0-30-generic: Linux kernel x86 boot executable bzImage, version 4.8.0-30-generic (buildd at lcy01-08) #32-Ubuntu SMP Fri Dec 2 03:, RO-rootFS, swap_dev 0x7, Normal VGA
ubuntu at test:~/kexec$

ubuntu at test:~/kexec$ sudo kexec -l /boot/vmlinuz-4.8.0-30-generic --initrd=/boot/initrd.img-4.8.0-30-generic --append="root=LABEL=cloudimg-rootfs console=ttyS0"
ubuntu at test:~/kexec$ sudo kexec -e 

== Kernel live boots successfully ==
Ubuntu 16.10 test ttyS0

test login: [  377.524693] kexec_core: Starting new kernel
[    0.000000] Linux version 4.8.0-30-generic (buildd at lcy01-08) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) #32-Ubuntu SMP Fri Dec 2 03:43:27 UTC 2016 (Ubuntu 4.8.0-30.32-generic 4.8.6)
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.8.0-30-generic root=LABEL=cloudimg-rootfs console=ttyS0
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] x86/fpu: Legacy x87 FPU detected.
[    0.000000] x86/fpu: Using 'eager' FPU context switches.
[    0.000000] e820: BIOS-provided physical RAM map:

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
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:
  Confirmed
Status in kexec-tools source package in Yakkety:
  Confirmed
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 at 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



More information about the Ubuntu-sponsors mailing list