Re: [PATCH] x86/setup: Document that Windows reserves the first MiB
From: Mike Rapoport
Date: Wed Jun 09 2021 - 04:54:58 EST
On Tue, Jun 08, 2021 at 10:30:46PM +0200, Borislav Petkov wrote:
> It does so unconditionally too, on Intel and AMD machines, to work
> around BIOS bugs, as confirmed by Microsoft folks (see Link for full
> details).
>
> Reflow the paragraph, while at it.
>
> Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Acked-by: Mike Rapoport <rppt@xxxxxxxxxxxxx>
Thanks for taking care of this!
> Link: https://lkml.kernel.org/r/MWHPR21MB159330952629D36EEDE706B3D7379@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> ---
> arch/x86/kernel/setup.c | 21 +++++++++++----------
> 1 file changed, 11 insertions(+), 10 deletions(-)
>
> diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
> index 7638ac6c3d80..85acd22f8022 100644
> --- a/arch/x86/kernel/setup.c
> +++ b/arch/x86/kernel/setup.c
> @@ -1060,17 +1060,18 @@ void __init setup_arch(char **cmdline_p)
> #endif
>
> /*
> - * Find free memory for the real mode trampoline and place it
> - * there.
> - * If there is not enough free memory under 1M, on EFI-enabled
> - * systems there will be additional attempt to reclaim the memory
> - * for the real mode trampoline at efi_free_boot_services().
> + * Find free memory for the real mode trampoline and place it there. If
> + * there is not enough free memory under 1M, on EFI-enabled systems
> + * there will be additional attempt to reclaim the memory for the real
> + * mode trampoline at efi_free_boot_services().
> *
> - * Unconditionally reserve the entire first 1M of RAM because
> - * BIOSes are know to corrupt low memory and several
> - * hundred kilobytes are not worth complex detection what memory gets
> - * clobbered. Moreover, on machines with SandyBridge graphics or in
> - * setups that use crashkernel the entire 1M is reserved anyway.
> + * Unconditionally reserve the entire first 1M of RAM because BIOSes
> + * are known to corrupt low memory and several hundred kilobytes are not
> + * worth complex detection what memory gets clobbered. Windows does the
> + * same thing for very similar reasons.
> + *
> + * Moreover, on machines with SandyBridge graphics or in setups that use
> + * crashkernel the entire 1M is reserved anyway.
> */
> reserve_real_mode();
>
> --
> 2.29.2
>
> --
> Regards/Gruss,
> Boris.
>
> https://people.kernel.org/tglx/notes-about-netiquette
--
Sincerely yours,
Mike.