NAK: [Precise] [PATCH 00/12] Prevent samsung-laptop bricking when using UEFI

Tim Gardner tim.gardner at canonical.com
Tue Feb 5 15:02:16 UTC 2013


On 02/01/2013 03:45 PM, Brad Figg wrote:
> 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)
>     83e68189745ad931c2afd45d8ee3303929233e7f (backport)
>     e0094244e41c4d0c7ad69920681972fc45d8ce34 (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 (4):
>   x86, efi: Calling __pa() with an ioremap()ed address is invalid
>   x86: Don't use magic strings for EFI loader signature
>   efi: Make 'efi_enabled' a function to query EFI facilities
>   samsung-laptop: Disable on EFI hardware
> 
> 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             |   13 +-
>  arch/x86/kernel/e820.c                 |    3 +-
>  arch/x86/kernel/reboot.c               |    2 +-
>  arch/x86/kernel/setup.c                |   56 +++-
>  arch/x86/platform/efi/efi.c            |  451 ++++++++++++++++++++++----------
>  arch/x86/platform/efi/efi_64.c         |   17 --
>  drivers/acpi/osl.c                     |    2 +-
>  drivers/firmware/dmi_scan.c            |    2 +-
>  drivers/firmware/efivars.c             |    4 +-
>  drivers/firmware/iscsi_ibft_find.c     |    2 +-
>  drivers/gpu/drm/radeon/radeon_device.c |    3 +-
>  drivers/platform/x86/ibm_rtl.c         |    2 +-
>  drivers/platform/x86/samsung-laptop.c  |   10 +-
>  drivers/scsi/isci/init.c               |    2 +-
>  include/linux/efi.h                    |   72 ++++-
>  init/main.c                            |    5 +-
>  17 files changed, 468 insertions(+), 186 deletions(-)
> 

I know this is splitting hairs a bit, but I think the magnitude of this
patch set is a bit disingenuous, especially when compared to the
simplicity of the SAUCE patch that simply disables the Samsung laptop
driver. Frankly, I'm fine with the SAUCE patch in Precise for now.

If we're intent on improving UEFI support in Precise (likely a worthy
goal), then how about a new bug that addresses the actual issue ? We'll
need to do some thorough testing on the UEFI kit that we have at hand.
When all that appears to work, then we can readdress the Samsung laptop bug.

rtg
-- 
Tim Gardner tim.gardner at canonical.com




More information about the kernel-team mailing list