ARM64 builds needs build dependency on libz-dev inorder to support
compressed kernels. The attached patch adds that support. Note. amd64
and i386 do not have this dependency, I tested the current zesty version
of the kexec-tools on amd64 and i386 and it works. The patch only apply
to ARM64 build.

== Before Patch ==
ubuntu@test:~$ sudo kexec -l /boot/vmlinuz-4.9.0-15-generic 
--initrd=/boot/initrd.img-4.9.0-15-generic --append="root=LABEL=cloudimg-rootfs 
Cannot determine the file type of /boot/vmlinuz-4.9.0-15-generic

== After Patch ==
ubuntu@test:~$ sudo kexec -l /boot/vmlinuz-4.9.0-15-generic 
--initrd=/boot/initrd.img-4.9.0-15-generic --append="root=LABEL=cloudimg-rootfs 
ubuntu@test:~$ sudo kexec -e

Ubuntu Zesty Zapus (development branch) test ttyAMA0

test login: [ 7616.705779] kexec_core: Starting new kernel
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.9.0-15-generic (buildd@bos01-arm64-009) (gcc 
version 6.3.0 20161229 (Ubuntu/Linaro 6.3.0-2ubuntu1) ) #16-Ubuntu SMP Fri Jan 
20 15:29:58 UTC 2017 (Ubuntu 4.9.0-15.16-generic 4.9.5)
[ 0.000000] Boot CPU: AArch64 Processor [510f8000]
[ 0.000000] efi: Getting EFI parameters from FDT:
[ 0.000000] efi: EFI v2.50 by EDK II
[ 0.000000] efi: SMBIOS=0x5bdb0000 SMBIOS 3.0=0x58660000 PROP=0x5f714518 
ACPI=0x58690000 ACPI 2.0=0x58690014
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000005

** Patch added: "[Zesty] Enable compressed kernel support for ARM64"

You received this bug notification because you are a member of Kernel
Packages, which is subscribed to kexec-tools in Ubuntu.

  Fails to load compressed kernels on arm64

Status in kexec-tools package in Ubuntu:
  In Progress

Bug description:
  kexec-tools will not load a compressed kernel on arm64. Ubuntu ships 
compressed kernel images on arm64 starting with 16.10 (and hwe kernels for 
16.04). A workaround is to manually decompress the kernel before loading it, 
but this is not supported by the use-kexec-for-reboot-by-default feature of the 
kexec-tools package.

  [Test Case]
  ubuntu@ubuntu:~$ sudo file /boot/vmlinuz-4.9.0-15-generic
  /boot/vmlinuz-4.9.0-15-generic: gzip compressed data, max compression, from 
  ubuntu@ubuntu:~$ sudo kexec -d -l /boot/vmlinuz-4.9.0-15-generic -t Image
  arch_process_options:141: command_line: (null)
  arch_process_options:143: initrd: (null)
  arch_process_options:144: dtb: (null)
  kernel: 0xffff8ff61010 kernel_size: 0x6ee18b
  get_memory_ranges_iomem_cb: 0000000040000000 - 00000000ffffbfff : System RAM
  get_memory_ranges_iomem_cb: 0000000100000000 - 000000013858ffff : System RAM
  get_memory_ranges_iomem_cb: 0000000138750000 - 000000013bc1ffff : System RAM
  get_memory_ranges_iomem_cb: 000000013c000000 - 000000013fffffff : System RAM
  image_arm64_probe: Bad arm64 image header.
  elf_arm64_probe: Not an ELF executable.
  image_arm64_probe: Bad arm64 image header.
  Cannot determine the file type of /boot/vmlinuz-4.9.0-15-generic

  [Regression Risk]
  kexec-tools did not support arm64 until zesty so, assuming the fix is 
localized to arm64 code, regression risk is negligible.

To manage notifications about this bug go to:

Mailing list:
Post to     :
Unsubscribe :
More help   :

Reply via email to