From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753422AbbIYWC0 (ORCPT ); Fri, 25 Sep 2015 18:02:26 -0400 Received: from mail-wi0-f177.google.com ([209.85.212.177]:38804 "EHLO mail-wi0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751156AbbIYWCX (ORCPT ); Fri, 25 Sep 2015 18:02:23 -0400 From: Matt Fleming To: Ingo Molnar , Thomas Gleixner , "H. Peter Anvin" Cc: Matt Fleming , linux-kernel@vger.kernel.org, linux-efi@vger.kernel.org, Ard Biesheuvel , Borislav Petkov , Catalin Marinas , Dave Young , James Bottomley , "Lee, Chun-Yi" , Leif Lindholm , Mark Rutland , Mark Salter , Matthew Garrett , Peter Jones , , Will Deacon Subject: [GIT PULL 0/2] EFI urgent fixes Date: Fri, 25 Sep 2015 23:02:17 +0100 Message-Id: <1443218539-7610-1-git-send-email-matt@codeblueprint.co.uk> X-Mailer: git-send-email 2.1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Matt Fleming Folks, The patches in this pull request fix kernel crashes when booting Linux on UEFI v2.5 machines with the Properties Table feature enabled. Essentially, when this feature is enabled the firmware allocates separate entries in the EFI memory map for the code and data sections of PE/COFF images, whereas previously only one memory map entry would have existed. Because we've now got two entries that reference each other we *must* map them into the kernel virtual address space with the same offsets and in the same order as they appear in the EFI memory map. Failure to do so causes the firmware to access unmapped/invalid addresses. These patches were intentionally kept as small as possible so that they can be backported by distributions, aggressively. The following changes since commit 1f93e4a96c9109378204c147b3eec0d0e8100fde: Linux 4.3-rc2 (2015-09-20 14:32:34 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi.git tags/efi-urgent for you to fetch changes up to 1fa25e09ca2ce07f03bca93ad71800c312fd4951: arm64/efi: Don't pad between EFI_MEMORY_RUNTIME regions (2015-09-25 22:35:15 +0100) ---------------------------------------------------------------- * arm64 bug fix for UEFI 2.5 firmware that has the Properties Table feature enabled. The fix avoids a kernel crash by removing the padding between runtime regions that we currently do in the kernel so we don't break the EFI's cross-region references - Ard Biesheuvel * Map EFI memory regions in-order on x86 so that we maintain the relative offset between regions and fix a crash when booting on UEFI 2.5 machines with the Properties Table feature enabled. ---------------------------------------------------------------- Ard Biesheuvel (1): arm64/efi: Don't pad between EFI_MEMORY_RUNTIME regions Matt Fleming (1): x86/efi: Map EFI memmap entries in-order at runtime arch/arm64/kernel/efi.c | 3 +- arch/x86/platform/efi/efi.c | 67 ++++++++++++++++++++++++- drivers/firmware/efi/libstub/arm-stub.c | 88 +++++++++++++++++++++++++++------ 3 files changed, 141 insertions(+), 17 deletions(-)