]> xenbits.xensource.com Git - people/julieng/linux-arm.git/commitdiff
kexec/uefi: copy secure_boot flag in boot params across kexec reboot
authorDave Young <dyoung@redhat.com>
Fri, 18 Sep 2015 15:27:32 +0000 (15:27 +0000)
committerJulien Grall <julien.grall@citrix.com>
Fri, 18 Sep 2015 15:29:31 +0000 (16:29 +0100)
Kexec reboot in case secure boot being enabled does not keep the secure boot
mode in new kernel, so later one can load unsigned kernel via legacy kexec_load.
In this state, the system is missing the protections provided by secure boot.

Adding a patch to fix this by retain the secure_boot flag in original kernel.

secure_boot flag in boot_params is set in EFI stub, but kexec bypasses the stub.
Fixing this issue by copying secure_boot flag across kexec reboot.

Signed-off-by: Dave Young <dyoung@redhat.com>
arch/x86/kernel/kexec-bzimage64.c

index ca83f7ac388bec2e8c494e51ac5fdbeeda9525c9..6ad2f6035f600f2fc2148c3ba3cfb387d6742615 100644 (file)
@@ -180,6 +180,7 @@ setup_efi_state(struct boot_params *params, unsigned long params_load_addr,
        if (efi_enabled(EFI_OLD_MEMMAP))
                return 0;
 
+       params->secure_boot = boot_params.secure_boot;
        ei->efi_loader_signature = current_ei->efi_loader_signature;
        ei->efi_systab = current_ei->efi_systab;
        ei->efi_systab_hi = current_ei->efi_systab_hi;