From: Jerry Hoemann <jerry.hoemann@hp.com>
To: rob@landley.net, tglx@linutronix.de, mingo@redhat.com,
hpa@zytor.com, x86@kernel.org, matt.fleming@intel.com,
yinghai@kernel.org, akpm@linux-foundation.org, bp@suse.de,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-efi@vger.kernel.org
Cc: penberg@kernel.org, mingo.kernel.org@gmail.com,
vgoyal@redhat.com, jerry.hoemann@hp.com
Subject: [RFC v2 0/2] Early use of boot service memory
Date: Thu, 21 Nov 2013 14:01:24 -0700 [thread overview]
Message-ID: <1385067686-73500-1-git-send-email-jerry.hoemann@hp.com> (raw)
Some platform have firmware that violates the UEFI spec and access boot
service code or data segments after the system has called ExitBootServices().
The call to efi_reserve_boot_services in setup_arch is a workaround to
avoid using boot service memory until after the kernel has done
SetVirtualAddressMap. However, this reservation fragments memory
which can cause large allocations early in boot (e.g. crash kernel)
to fail.
This patch set creates a quirk list that governs whether
efi_reserve_boot_services is called.
A new kernel parameter is added that overrides the quirk list
and allows engineers developing new platforms to test whether
they need to have the quirk applied or not.
With this information, setup_arch avoids calling efi_reserve_boot_services
when it doesn't need to, thus avoiding fragmenting memory.
ChangeLog
V1 => v2)
In version 1 the control of the workaround was only by command line argument.
In version 2, the quirk list is the primary control of the whether
the workaround is applied. This allows for seamless integration with
tools and doesn't require any special knowledge from the user.
The command line argument is retained for platform developers to
be able to test whether their platforms require the workaround.
Jerry Hoemann (2):
efi: Early use of boot service memory
x86, efi: Early use of boot service memory
Documentation/kernel-parameters.txt | 5 +++
arch/x86/kernel/setup.c | 5 ++-
arch/x86/platform/efi/efi.c | 77 ++++++++++++++++++++++++++++++++++++-
include/linux/efi.h | 2 +
4 files changed, 86 insertions(+), 3 deletions(-)
--
1.7.11.3
next reply other threads:[~2013-11-21 21:01 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-21 21:01 Jerry Hoemann [this message]
2013-11-21 21:01 ` [RFC v2 1/2] efi: " Jerry Hoemann
2013-11-21 21:01 ` [RFC v2 2/2] x86, " Jerry Hoemann
2013-11-21 22:19 ` Borislav Petkov
2013-11-21 23:07 ` [RFC v2 0/2] " Matthew Garrett
2013-11-21 23:18 ` H. Peter Anvin
2013-11-21 23:37 ` Matthew Garrett
2013-11-22 1:12 ` H. Peter Anvin
2013-11-22 1:25 ` jerry.hoemann
2013-11-22 1:29 ` Yinghai Lu
2013-11-22 1:31 ` H. Peter Anvin
2013-11-22 2:34 ` Vivek Goyal
2013-11-22 2:42 ` H. Peter Anvin
2013-11-22 2:29 ` Vivek Goyal
2013-11-22 3:32 ` HATAYAMA Daisuke
2013-11-22 2:32 ` Vivek Goyal
2013-11-21 23:31 ` jerry.hoemann
2013-11-21 23:38 ` Matthew Garrett
2013-11-22 1:05 ` jerry.hoemann
2013-11-22 1:16 ` Matthew Garrett
2013-12-16 18:43 ` jerry.hoemann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1385067686-73500-1-git-send-email-jerry.hoemann@hp.com \
--to=jerry.hoemann@hp.com \
--cc=akpm@linux-foundation.org \
--cc=bp@suse.de \
--cc=hpa@zytor.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matt.fleming@intel.com \
--cc=mingo.kernel.org@gmail.com \
--cc=mingo@redhat.com \
--cc=penberg@kernel.org \
--cc=rob@landley.net \
--cc=tglx@linutronix.de \
--cc=vgoyal@redhat.com \
--cc=x86@kernel.org \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®