As a part of UV1 platform removal, don't try to recognize the platform
through DMI to set the EFI_UV1_MEMMAP bit.
Signed-off-by: Steve Wahl <[email protected]>
---
arch/x86/platform/efi/quirks.c | 23 -----------------------
1 file changed, 23 deletions(-)
--- linux.orig/arch/x86/platform/efi/quirks.c 2020-06-17 14:29:45.510015978 -0500
+++ linux/arch/x86/platform/efi/quirks.c 2020-06-17 14:36:34.473414139 -0500
@@ -558,16 +558,6 @@ out:
return ret;
}
-static const struct dmi_system_id sgi_uv1_dmi[] __initconst = {
- { NULL, "SGI UV1",
- { DMI_MATCH(DMI_PRODUCT_NAME, "Stoutland Platform"),
- DMI_MATCH(DMI_PRODUCT_VERSION, "1.0"),
- DMI_MATCH(DMI_BIOS_VENDOR, "SGI.COM"),
- }
- },
- { } /* NULL entry stops DMI scanning */
-};
-
void __init efi_apply_memmap_quirks(void)
{
/*
@@ -579,17 +569,6 @@ void __init efi_apply_memmap_quirks(void
pr_info("Setup done, disabling due to 32/64-bit mismatch\n");
efi_memmap_unmap();
}
-
- /* UV2+ BIOS has a fix for this issue. UV1 still needs the quirk. */
- if (dmi_check_system(sgi_uv1_dmi)) {
- if (IS_ENABLED(CONFIG_X86_UV)) {
- set_bit(EFI_UV1_MEMMAP, &efi.flags);
- } else {
- pr_warn("EFI runtime disabled, needs CONFIG_X86_UV=y on UV1\n");
- clear_bit(EFI_RUNTIME_SERVICES, &efi.flags);
- efi_memmap_unmap();
- }
- }
}
/*
@@ -723,8 +702,6 @@ void efi_recover_from_page_fault(unsigne
/*
* Make sure that an efi runtime service caused the page fault.
- * "efi_mm" cannot be used to check if the page fault had occurred
- * in the firmware context because the UV1 memmap doesn't use efi_pgd.
*/
if (efi_rts_work.efi_rts_id == EFI_NONE)
return;
On Wed, 1 Jul 2020 at 16:18, <[email protected]> wrote:
>
> As a part of UV1 platform removal, don't try to recognize the platform
> through DMI to set the EFI_UV1_MEMMAP bit.
>
> Signed-off-by: Steve Wahl <[email protected]>
Reviewed-by: Ard Biesheuvel <[email protected]>
> ---
> arch/x86/platform/efi/quirks.c | 23 -----------------------
> 1 file changed, 23 deletions(-)
>
> --- linux.orig/arch/x86/platform/efi/quirks.c 2020-06-17 14:29:45.510015978 -0500
> +++ linux/arch/x86/platform/efi/quirks.c 2020-06-17 14:36:34.473414139 -0500
> @@ -558,16 +558,6 @@ out:
> return ret;
> }
>
> -static const struct dmi_system_id sgi_uv1_dmi[] __initconst = {
> - { NULL, "SGI UV1",
> - { DMI_MATCH(DMI_PRODUCT_NAME, "Stoutland Platform"),
> - DMI_MATCH(DMI_PRODUCT_VERSION, "1.0"),
> - DMI_MATCH(DMI_BIOS_VENDOR, "SGI.COM"),
> - }
> - },
> - { } /* NULL entry stops DMI scanning */
> -};
> -
> void __init efi_apply_memmap_quirks(void)
> {
> /*
> @@ -579,17 +569,6 @@ void __init efi_apply_memmap_quirks(void
> pr_info("Setup done, disabling due to 32/64-bit mismatch\n");
> efi_memmap_unmap();
> }
> -
> - /* UV2+ BIOS has a fix for this issue. UV1 still needs the quirk. */
> - if (dmi_check_system(sgi_uv1_dmi)) {
> - if (IS_ENABLED(CONFIG_X86_UV)) {
> - set_bit(EFI_UV1_MEMMAP, &efi.flags);
> - } else {
> - pr_warn("EFI runtime disabled, needs CONFIG_X86_UV=y on UV1\n");
> - clear_bit(EFI_RUNTIME_SERVICES, &efi.flags);
> - efi_memmap_unmap();
> - }
> - }
> }
>
> /*
> @@ -723,8 +702,6 @@ void efi_recover_from_page_fault(unsigne
>
> /*
> * Make sure that an efi runtime service caused the page fault.
> - * "efi_mm" cannot be used to check if the page fault had occurred
> - * in the firmware context because the UV1 memmap doesn't use efi_pgd.
> */
> if (efi_rts_work.efi_rts_id == EFI_NONE)
> return;
>