diff --git a/patches/boot/boot.scc b/patches/boot/boot.scc index c7ec6d59d1c109846e8877ad5bdf0f71cfa498fa..7f73fc112807878c659854ca64c93daede77bbd8 100644 --- a/patches/boot/boot.scc +++ b/patches/boot/boot.scc @@ -3,3 +3,4 @@ patch mount_root-clarify-error-messages-for-when-no-rootfs.patch patch check-console-device-file-on-fs-when-booting.patch patch nfs-Allow-default-io-size-to-be-configured.patch patch powerpc-boot-remove-Os-from-BOOTFLAGS.patch +patch efi-Add-patch-to-fix-32bit-EFI-service-mapping-rhbz-.patch diff --git a/patches/boot/efi-Add-patch-to-fix-32bit-EFI-service-mapping-rhbz-.patch b/patches/boot/efi-Add-patch-to-fix-32bit-EFI-service-mapping-rhbz-.patch new file mode 100644 index 0000000000000000000000000000000000000000..973ad2da4cc3ccf83e859da46060bd2258504375 --- /dev/null +++ b/patches/boot/efi-Add-patch-to-fix-32bit-EFI-service-mapping-rhbz-.patch @@ -0,0 +1,45 @@ +From 218bd8d2022b9852c60d32f0d770931e3cf343e2 Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Thu, 25 Oct 2012 01:26:54 -0700 +Subject: [PATCH] efi: Add patch to fix 32bit EFI service mapping (rhbz + 726701) + +From fedora kernel: + + commit 6f3e186bc7721c5b24ad90d4a751cccfccd445e6 + Author: Josh Boyer <jwboyer@redhat.com> + Date: Fri Aug 5 08:47:23 2011 -0400 + + Add patch to fix 32bit EFI service mapping (rhbz 726701) + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +Signed-off-by: Darren Hart <dvhart@linux.intel.com> +--- + arch/x86/platform/efi/efi.c | 11 +++++++---- + 1 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c +index 92660eda..08d0e82 100644 +--- a/arch/x86/platform/efi/efi.c ++++ b/arch/x86/platform/efi/efi.c +@@ -819,10 +819,13 @@ void __init efi_enter_virtual_mode(void) + + for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) { + md = p; +- if (!(md->attribute & EFI_MEMORY_RUNTIME) && +- md->type != EFI_BOOT_SERVICES_CODE && +- md->type != EFI_BOOT_SERVICES_DATA) +- continue; ++ if (!(md->attribute & EFI_MEMORY_RUNTIME)) { ++#ifdef CONFIG_X86_64 ++ if (md->type != EFI_BOOT_SERVICES_CODE && ++ md->type != EFI_BOOT_SERVICES_DATA) ++#endif ++ continue; ++ } + + size = md->num_pages << EFI_PAGE_SHIFT; + end = md->phys_addr + size; +-- +1.7.5.4 +