[3.8.y.z,extended,stable] Patch "x86, efi: Implement efi_no_storage_paranoia parameter" has been added to staging queue

Message ID 1374099588-3987-1-git-send-email-kamal@canonical.com
State New
Headers show

Commit Message

Kamal Mostafa July 17, 2013, 10:19 p.m.
This is a note to let you know that I have just added a patch titled

    x86,efi: Implement efi_no_storage_paranoia parameter

to the linux-3.8.y-queue branch of the 3.8.y.z extended stable tree 
which can be found at:


This patch is scheduled to be released in version

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.8.y.z tree, see



From 4ad1c9f1872c27080ed1bca87c20d3543f1d5924 Mon Sep 17 00:00:00 2001
From: Richard Weinberger <richard@nod.at>
Date: Wed, 17 Apr 2013 01:00:53 +0200
Subject: x86,efi: Implement efi_no_storage_paranoia parameter

commit 8c58bf3eec3b8fc8162fe557e9361891c20758f2 upstream.

Using this parameter one can disable the storage_size/2 check if
he is really sure that the UEFI does sane gc and fulfills the spec.

This parameter is useful if a devices uses more than 50% of the
storage by default.
The Intel DQSW67 desktop board is such a sucker for exmaple.

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
[ kamal: backport to 3.8 as prereq for "Modify UEFI anti-bricking code"
  (replaced param functionality gets implemented by that commit) ]
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
 Documentation/kernel-parameters.txt | 6 ++++++
 arch/x86/platform/efi/efi.c         | 9 +++++++++
 2 files changed, 15 insertions(+)



diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 986614d..0b92543 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -785,6 +785,12 @@  bytes respectively. Such letter suffixes can also be entirely omitted.
 	edd=		[EDD]
 			Format: {"off" | "on" | "skip[mbr]"}

+	efi_no_storage_paranoia [EFI; X86]
+			Using this parameter you can use more than 50% of
+			your efi variable storage. Use this parameter only if
+			you are really sure that your UEFI does sane gc and
+			fulfills the spec otherwise your board may brick.
 	eisa_irq_edge=	[PARISC,HW]
 			See header of drivers/parisc/eisa.c.

diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c
index 27ff3b0..55452cd 100644
--- a/arch/x86/platform/efi/efi.c
+++ b/arch/x86/platform/efi/efi.c
@@ -98,6 +98,15 @@  static int __init setup_add_efi_memmap(char *arg)
 early_param("add_efi_memmap", setup_add_efi_memmap);

+static bool efi_no_storage_paranoia;
+static int __init setup_storage_paranoia(char *arg)
+	efi_no_storage_paranoia = true;
+	return 0;
+early_param("efi_no_storage_paranoia", setup_storage_paranoia);

 static efi_status_t virt_efi_get_time(efi_time_t *tm, efi_time_cap_t *tc)