It may be possible that EFI firmware wants to use the FPU. Thus, in such a case, the kernel EFI runtime services need to make sure that they save and restore the FPU context. Additionally, several FPU internal functions require alternatives to be in place when running. Some of the FPU context save/restore instances that this series implements may occur early during boot; before the alternatives have run. Several FPU internal functions are updated to use the alternatives-safe variant of static_cpu_has. The performance penalty is negligible as the impacted functions are not performance-critical. In order to prepare to implement the FPU context save/restore, this series also reworks many of the efi_call macros. The code will also be more readable and continue to be reusable between x86_64 and i386. BR, Ricardo Matt Fleming (2): x86/efi: Delete most of the efi_call* macros x86, fpu: Extend the use of static_cpu_has_safe Ricardo Neri (3): x86/efi: Implement a __efi_call_virt macro x86/efi: Save and restore FPU context around efi_calls (x86_64) x86/efi: Save and restore FPU context around efi_calls (i386) arch/x86/boot/compressed/eboot.c | 142 ++++++++++++++++----------------- arch/x86/include/asm/efi.h | 98 ++++++++--------------- arch/x86/include/asm/fpu-internal.h | 10 +-- arch/x86/platform/efi/efi.c | 52 ++++++------ arch/x86/platform/efi/efi_stub_64.S | 81 +------------------ drivers/firmware/efi/efi-stub-helper.c | 92 ++++++++++----------- 6 files changed, 181 insertions(+), 294 deletions(-) -- 1.8.1.2 -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html