Re: [PATCH] x86: Set the NX-compatibility flag in the PE header

From: Ard Biesheuvel
Date: Wed Apr 13 2022 - 13:48:40 EST


On Tue, 29 Mar 2022 at 20:47, Peter Jones <pjones@xxxxxxxxxx> wrote:
>
> Following Baskov Evgeniy's "Handle UEFI NX-restricted page tables"
> patches, it's safe to set this compatibility flag to let loaders know
> they don't need to make special accommodations for kernel to load if
> pre-boot NX is enabled.
>
> Signed-off-by: Peter Jones <pjones@xxxxxxxxxx>

Thanks, I've queued this up.

> ---
> arch/x86/boot/header.S | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/arch/x86/boot/header.S b/arch/x86/boot/header.S
> index 6dbd7e9f74c..0352e4589ef 100644
> --- a/arch/x86/boot/header.S
> +++ b/arch/x86/boot/header.S
> @@ -163,7 +163,11 @@ extra_header_fields:
> .long 0x200 # SizeOfHeaders
> .long 0 # CheckSum
> .word IMAGE_SUBSYSTEM_EFI_APPLICATION # Subsystem (EFI application)
> +#ifdef CONFIG_DXE_MEM_ATTRIBUTES
> + .word IMAGE_DLL_CHARACTERISTICS_NX_COMPAT # DllCharacteristics
> +#else
> .word 0 # DllCharacteristics
> +#endif
> #ifdef CONFIG_X86_32
> .long 0 # SizeOfStackReserve
> .long 0 # SizeOfStackCommit
> --
> 2.35.1
>