aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorMatt Fleming <matt.fleming@intel.com>2014-08-05 06:52:11 -0400
committerMatt Fleming <matt.fleming@intel.com>2014-10-03 13:40:57 -0400
commit5a17dae422d7de4b776a9753cd4673a343a25b4b (patch)
treeb93452a42035324703987e88a3fca53d308bac2b /Documentation
parent161485e8273001e56b2f20755ad9b6217b601fb3 (diff)
efi: Add efi= parameter parsing to the EFI boot stub
We need a way to customize the behaviour of the EFI boot stub, in particular, we need a way to disable the "chunking" workaround, used when reading files from the EFI System Partition. One of my machines doesn't cope well when reading files in 1MB chunks to a buffer above the 4GB mark - it appears that the "chunking" bug workaround triggers another firmware bug. This was only discovered with commit 4bf7111f5016 ("x86/efi: Support initrd loaded above 4G"), and that commit is perfectly valid. The symptom I observed was a corrupt initrd rather than any kind of crash. efi= is now used to specify EFI parameters in two very different execution environments, the EFI boot stub and during kernel boot. There is also a slight performance optimization by enabling efi=nochunk, but that's offset by the fact that you're more likely to run into firmware issues, at least on x86. This is the rationale behind leaving the workaround enabled by default. Also provide some documentation for EFI_READ_CHUNK_SIZE and why we're using the current value of 1MB. Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Roy Franz <roy.franz@linaro.org> Cc: Maarten Lankhorst <m.b.lankhorst@gmail.com> Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Borislav Petkov <bp@suse.de> Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/kernel-parameters.txt5
1 files changed, 4 insertions, 1 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 5ae8608ca9f5..67d79597d9d6 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -992,10 +992,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
992 Format: {"off" | "on" | "skip[mbr]"} 992 Format: {"off" | "on" | "skip[mbr]"}
993 993
994 efi= [EFI] 994 efi= [EFI]
995 Format: { "old_map" } 995 Format: { "old_map", "nochunk" }
996 old_map [X86-64]: switch to the old ioremap-based EFI 996 old_map [X86-64]: switch to the old ioremap-based EFI
997 runtime services mapping. 32-bit still uses this one by 997 runtime services mapping. 32-bit still uses this one by
998 default. 998 default.
999 nochunk: disable reading files in "chunks" in the EFI
1000 boot stub, as chunking can cause problems with some
1001 firmware implementations.
999 1002
1000 efi_no_storage_paranoia [EFI; X86] 1003 efi_no_storage_paranoia [EFI; X86]
1001 Using this parameter you can use more than 50% of 1004 Using this parameter you can use more than 50% of