[patch 0/4 v3] kexec-tools: efi runtime support

dyoung at redhat.com dyoung at redhat.com
Thu Nov 21 01:40:43 EST 2013


This is the v3 patchset for adding efi runtime support on kexec kernel
kernel patches was sent a while ago, not yet updated in archive. 

in kexec-tools, this patchset will do below:
1. retrieve efi_info from sysfs boot_params, and fill the
x86 setup header. If kernel does not export sysfs boot_params,
still try to find them in debugfs.

2. collect data efi runtime needed:
/sys/firmware/efi/systab: smbios

/sys/firmware/efi/runtime-map/*, the phys-virt mappings in 1st kernel

3. assemble setup_data based on data get in 2) then pass it to 2nd kernel

Tested on OVMF, dell laptop, lenovo laptop and HP workstation

TODO: add functions for easily adding setup_data, arrange them as link list
because we probably will add e820 memory ranges as setup_data as well.
I do not prefer to bloat this patchset anymore, so I'd likt to address this
issue after the efi runtime issue finished unless people request.

V2 changelog:
Address comments from
  coding style, fixed a mem leak
  use type uint64_t instead of __uint64_t
  do not cause regression for loading old kernel
  use xloadflags to check the bzImage support for efi.
  in case old kernel, do not pass efi_info and setup_data
  for new kernel, do not pass acpi_rsdp
  suggest to export a value in bzImage probe for efi support
  so it can be used to check if we should pass acpi_rsdp.

V3 changelog:
01/04: new patch of a building fix
try sysfs firstly for boot params
add checking of efi memory range description version, bail out if it's not 1
error handling improvement and some cleanups


More information about the kexec mailing list