From: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
To: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: Matt Fleming
<matt.fleming-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
Catalin Marinas <Catalin.Marinas-5wv7dgnIgG8@public.gmane.org>,
Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
Ingo Molnar <mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
"hpa-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org"
<hpa-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>,
Alessandro Zummo
<a.zummo-BfzFCNDTiLLj+vYz1yj4TQ@public.gmane.org>,
Leif Lindholm
<leif.lindholm-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Ard Biesheuvel
<ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
"msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org"
<msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Randy Dunlap <rdunlap-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
"linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"rtc-linux-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org"
<rtc-linux-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Subject: Re: [PATCH 3/5] efi arm64: do not enter virtual mode in case booting with efi=noruntime or noefi
Date: Tue, 12 Aug 2014 11:46:27 +0100 [thread overview]
Message-ID: <20140812104627.GI29013@arm.com> (raw)
In-Reply-To: <1407823822-23829-3-git-send-email-dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
On Tue, Aug 12, 2014 at 07:10:20AM +0100, Dave Young wrote:
> In case efi runtime disabled via noefi kernel cmdline arm64_enter_virtual_mode
> should error out.
>
> At the same time move early_memunmap(memmap.map, mapsize) to the beginning of
> the function or it will leak early mem.
>
> Signed-off-by: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> arch/arm64/kernel/efi.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm64/kernel/efi.c b/arch/arm64/kernel/efi.c
> index e72f310..324cdd1 100644
> --- a/arch/arm64/kernel/efi.c
> +++ b/arch/arm64/kernel/efi.c
> @@ -386,7 +386,10 @@ static int __init arm64_enter_virtual_mode(void)
> int count = 0;
> unsigned long flags;
>
> - if (!efi_enabled(EFI_BOOT)) {
> + mapsize = memmap.map_end - memmap.map;
> + early_memunmap(memmap.map, mapsize);
> +
> + if (!efi_enabled(EFI_BOOT) || efi_runtime_disabled()) {
Hmm, is this right? We only set EFI_BOOT if we find EFI parameters in the
DT (see efi_init -> uefi_init), so you run the risk of unmapping something
we never mapped here.
Furthermore, there seems to be a leak in uefi_init anyway, as we return
-EINVAL if the signature of the EFI table doesn't match without unmapping it
first.
Will
WARNING: multiple messages have this Message-ID (diff)
From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/5] efi arm64: do not enter virtual mode in case booting with efi=noruntime or noefi
Date: Tue, 12 Aug 2014 11:46:27 +0100 [thread overview]
Message-ID: <20140812104627.GI29013@arm.com> (raw)
In-Reply-To: <1407823822-23829-3-git-send-email-dyoung@redhat.com>
On Tue, Aug 12, 2014 at 07:10:20AM +0100, Dave Young wrote:
> In case efi runtime disabled via noefi kernel cmdline arm64_enter_virtual_mode
> should error out.
>
> At the same time move early_memunmap(memmap.map, mapsize) to the beginning of
> the function or it will leak early mem.
>
> Signed-off-by: Dave Young <dyoung@redhat.com>
> ---
> arch/arm64/kernel/efi.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm64/kernel/efi.c b/arch/arm64/kernel/efi.c
> index e72f310..324cdd1 100644
> --- a/arch/arm64/kernel/efi.c
> +++ b/arch/arm64/kernel/efi.c
> @@ -386,7 +386,10 @@ static int __init arm64_enter_virtual_mode(void)
> int count = 0;
> unsigned long flags;
>
> - if (!efi_enabled(EFI_BOOT)) {
> + mapsize = memmap.map_end - memmap.map;
> + early_memunmap(memmap.map, mapsize);
> +
> + if (!efi_enabled(EFI_BOOT) || efi_runtime_disabled()) {
Hmm, is this right? We only set EFI_BOOT if we find EFI parameters in the
DT (see efi_init -> uefi_init), so you run the risk of unmapping something
we never mapped here.
Furthermore, there seems to be a leak in uefi_init anyway, as we return
-EINVAL if the signature of the EFI table doesn't match without unmapping it
first.
Will
WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will.deacon@arm.com>
To: Dave Young <dyoung@redhat.com>
Cc: Matt Fleming <matt.fleming@intel.com>,
Catalin Marinas <Catalin.Marinas@arm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "hpa@zytor.com" <hpa@zytor.com>,
Alessandro Zummo <a.zummo@towertech.it>,
Leif Lindholm <leif.lindholm@linaro.org>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
"msalter@redhat.com" <msalter@redhat.com>,
Randy Dunlap <rdunlap@infradead.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-efi@vger.kernel.org" <linux-efi@vger.kernel.org>,
"rtc-linux@googlegroups.com" <rtc-linux@googlegroups.com>
Subject: Re: [PATCH 3/5] efi arm64: do not enter virtual mode in case booting with efi=noruntime or noefi
Date: Tue, 12 Aug 2014 11:46:27 +0100 [thread overview]
Message-ID: <20140812104627.GI29013@arm.com> (raw)
In-Reply-To: <1407823822-23829-3-git-send-email-dyoung@redhat.com>
On Tue, Aug 12, 2014 at 07:10:20AM +0100, Dave Young wrote:
> In case efi runtime disabled via noefi kernel cmdline arm64_enter_virtual_mode
> should error out.
>
> At the same time move early_memunmap(memmap.map, mapsize) to the beginning of
> the function or it will leak early mem.
>
> Signed-off-by: Dave Young <dyoung@redhat.com>
> ---
> arch/arm64/kernel/efi.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm64/kernel/efi.c b/arch/arm64/kernel/efi.c
> index e72f310..324cdd1 100644
> --- a/arch/arm64/kernel/efi.c
> +++ b/arch/arm64/kernel/efi.c
> @@ -386,7 +386,10 @@ static int __init arm64_enter_virtual_mode(void)
> int count = 0;
> unsigned long flags;
>
> - if (!efi_enabled(EFI_BOOT)) {
> + mapsize = memmap.map_end - memmap.map;
> + early_memunmap(memmap.map, mapsize);
> +
> + if (!efi_enabled(EFI_BOOT) || efi_runtime_disabled()) {
Hmm, is this right? We only set EFI_BOOT if we find EFI parameters in the
DT (see efi_init -> uefi_init), so you run the risk of unmapping something
we never mapped here.
Furthermore, there seems to be a leak in uefi_init anyway, as we return
-EINVAL if the signature of the EFI table doesn't match without unmapping it
first.
Will
next prev parent reply other threads:[~2014-08-12 10:46 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-12 6:10 [PATCH 1/5] efi: move noefi early param code out of x86 arch code Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` [PATCH 2/5] efi: add kernel param efi=noruntime Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-13 8:13 ` Dave Young
2014-08-13 8:13 ` Dave Young
2014-08-13 8:13 ` Dave Young
2014-08-13 14:22 ` Matt Fleming
2014-08-13 14:22 ` Matt Fleming
2014-08-12 6:10 ` [PATCH 3/5] efi arm64: do not enter virtual mode in case booting with efi=noruntime or noefi Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` Dave Young
[not found] ` <1407823822-23829-3-git-send-email-dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-08-12 10:46 ` Will Deacon [this message]
2014-08-12 10:46 ` Will Deacon
2014-08-12 10:46 ` Will Deacon
2014-08-13 1:29 ` Dave Young
2014-08-13 1:29 ` Dave Young
2014-08-13 1:29 ` Dave Young
2014-08-12 6:10 ` [PATCH 4/5] efi x86: clear EFI_RUNTIME_SERVICES bit in case failures other than SetVirtualAddressMap Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` Dave Young
[not found] ` <1407823822-23829-4-git-send-email-dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-08-13 14:27 ` Matt Fleming
2014-08-13 14:27 ` Matt Fleming
2014-08-13 14:27 ` Matt Fleming
2014-08-12 6:10 ` [PATCH 5/5] efi_rtc: probe function error out in case no efi runtime enabled Dave Young
2014-08-12 6:10 ` Dave Young
2014-08-12 6:10 ` Dave Young
[not found] ` <1407823822-23829-1-git-send-email-dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-08-12 6:52 ` [PATCH 1/5] efi: move noefi early param code out of x86 arch code Randy Dunlap
2014-08-12 6:52 ` Randy Dunlap
2014-08-12 6:52 ` Randy Dunlap
2014-08-12 7:14 ` Dave Young
2014-08-12 7:14 ` Dave Young
2014-08-12 7:14 ` Dave Young
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=20140812104627.GI29013@arm.com \
--to=will.deacon-5wv7dgnigg8@public.gmane.org \
--cc=Catalin.Marinas-5wv7dgnIgG8@public.gmane.org \
--cc=a.zummo-BfzFCNDTiLLj+vYz1yj4TQ@public.gmane.org \
--cc=ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=hpa-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org \
--cc=leif.lindholm-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=matt.fleming-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=rdunlap-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=rtc-linux-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.