[Precise] [PATCH 00/10] Prevent samsung-laptop bricking when using UEFI

Brad Figg brad.figg at canonical.com
Fri Feb 1 20:20:53 UTC 2013


BugLink: http://bugs.launchpad.net/bugs/1111689

SRU Justification:

Impact:
With the existing code there is still the chance that the samsung-laptop driver can run if the given system is booting a 32-bit kernel with 64-bit EFI firmware (or vice versa). This
can lead to a system that is "bricked" and can not be recovered.

Fix:
First, we will need to revert the existing commit we have for the samsung-laptop/EFI
issue:
    af3e234992e2a9a82ccd2b7692d61d5a47c5bece (Precise tree)

Then we need to cherry-pick/backport the following 9 commits from Linus' tree
    e8c7106280a305e1ff2a3a8a4dfce141469fb039 (cherry-pick)
    f7d7d01be53cb47e0ae212c4e968aa28b82d2138 (cherry-pick)
    83e7ee6657dfcd6b0ee2406d11024b558064252a (cherry-pick)
    e3cb3f5a35997906f9b79bf860029c02a54cfae6 (cherry-pick)
    a6a46f415dca828a04a435ca1f67de0bc5b9ae30 (cherry-pick)
    140bf275d3e89e9b36851d5cf498dbbbecdf7ca8 (cherry-pick)
    1adbfa3511ee1c1118e16a9a0246870f12fef4e6 (backport)
    4a27b01761e602f568cb04fbafbed365dacb4c97 (cherry-pick)
    5189c2a7c7769ee9d037d76c1a7b8550ccf3481c (backport)


The following patches do exactly that, they revert the previous Ubuntu Sauce
patch to the samsung-laptop driver, backport the "Make 'efi_enabled' a function"
commit and cherry-pick a new commit to the samsung-laptop driver.

Brad Figg (1):
  Revert "UBUNTU: SAUCE: samsung-laptop: disable in UEFI mode"

Josh Triplett (1):
  efi: Defer freeing boot services memory until after ACPI init

Matt Fleming (2):
  x86, efi: Calling __pa() with an ioremap()ed address is invalid
  x86: Don't use magic strings for EFI loader signature

Olof Johansson (6):
  x86, efi: Refactor efi_init() a bit
  x86, efi: Convert printk to pr_*()
  x86, efi: Cleanup config table walking
  x86, efi: Add basic error handling
  x86, efi: Allow basic init with mixed 32/64-bit efi/kernel
  x86: efi: Turn off efi_enabled after setup on mixed fw/kernel

 arch/x86/include/asm/e820.h           |    8 +
 arch/x86/include/asm/efi.h            |   12 +-
 arch/x86/kernel/e820.c                |    3 +-
 arch/x86/kernel/setup.c               |   48 +++-
 arch/x86/platform/efi/efi.c           |  432 +++++++++++++++++++++++----------
 arch/x86/platform/efi/efi_64.c        |   17 --
 drivers/platform/x86/samsung-laptop.c |    4 -
 include/linux/efi.h                   |   50 ++++
 init/main.c                           |    3 +
 9 files changed, 413 insertions(+), 164 deletions(-)

-- 
1.7.9.5





More information about the kernel-team mailing list