From: Matt Fleming <matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
To: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
matt.fleming-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
mark.rutland-5wv7dgnIgG8@public.gmane.org,
catalin.marinas-5wv7dgnIgG8@public.gmane.org,
will.deacon-5wv7dgnIgG8@public.gmane.org,
leif.lindholm-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
ryabinin.a.a-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Subject: Re: [PATCH v4 3/3] arm64/efi: isolate EFI stub from the kernel proper
Date: Sat, 10 Oct 2015 23:40:09 +0100 [thread overview]
Message-ID: <20151010224009.GJ2723@codeblueprint.co.uk> (raw)
In-Reply-To: <1444330924-17830-4-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
On Thu, 08 Oct, at 08:02:04PM, Ard Biesheuvel wrote:
> Since arm64 does not use a builtin decompressor, the EFI stub is built
> into the kernel proper. So far, this has been working fine, but actually,
> since the stub is in fact a PE/COFF relocatable binary that is executed
> at an unknown offset in the 1:1 mapping provided by the UEFI firmware, we
> should not be seamlessly sharing code with the kernel proper, which is a
> position dependent executable linked at a high virtual offset.
>
> So instead, separate the contents of libstub and its dependencies, by
> putting them into their own namespace by prefixing all of its symbols
> with __efistub. This way, we have tight control over what parts of the
> kernel proper are referenced by the stub.
>
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> ---
> arch/arm64/kernel/Makefile | 12 ++++-
> arch/arm64/kernel/efi-entry.S | 10 ++--
> arch/arm64/kernel/head.S | 14 ++---
> arch/arm64/kernel/image.h | 27 ++++++++++
> drivers/firmware/efi/libstub/Makefile | 39 +++++++++++---
> drivers/firmware/efi/libstub/string.c | 57 ++++++++++++++++++++
> 6 files changed, 139 insertions(+), 20 deletions(-)
Reviewed-by: Matt Fleming <matt.fleming-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
--
Matt Fleming, Intel Open Source Technology Center
WARNING: multiple messages have this Message-ID (diff)
From: matt@codeblueprint.co.uk (Matt Fleming)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 3/3] arm64/efi: isolate EFI stub from the kernel proper
Date: Sat, 10 Oct 2015 23:40:09 +0100 [thread overview]
Message-ID: <20151010224009.GJ2723@codeblueprint.co.uk> (raw)
In-Reply-To: <1444330924-17830-4-git-send-email-ard.biesheuvel@linaro.org>
On Thu, 08 Oct, at 08:02:04PM, Ard Biesheuvel wrote:
> Since arm64 does not use a builtin decompressor, the EFI stub is built
> into the kernel proper. So far, this has been working fine, but actually,
> since the stub is in fact a PE/COFF relocatable binary that is executed
> at an unknown offset in the 1:1 mapping provided by the UEFI firmware, we
> should not be seamlessly sharing code with the kernel proper, which is a
> position dependent executable linked at a high virtual offset.
>
> So instead, separate the contents of libstub and its dependencies, by
> putting them into their own namespace by prefixing all of its symbols
> with __efistub. This way, we have tight control over what parts of the
> kernel proper are referenced by the stub.
>
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
> arch/arm64/kernel/Makefile | 12 ++++-
> arch/arm64/kernel/efi-entry.S | 10 ++--
> arch/arm64/kernel/head.S | 14 ++---
> arch/arm64/kernel/image.h | 27 ++++++++++
> drivers/firmware/efi/libstub/Makefile | 39 +++++++++++---
> drivers/firmware/efi/libstub/string.c | 57 ++++++++++++++++++++
> 6 files changed, 139 insertions(+), 20 deletions(-)
Reviewed-by: Matt Fleming <matt.fleming@intel.com>
--
Matt Fleming, Intel Open Source Technology Center
next prev parent reply other threads:[~2015-10-10 22:40 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-08 19:02 [PATCH v4 0/3] arm64: EFI stub isolation Ard Biesheuvel
2015-10-08 19:02 ` Ard Biesheuvel
[not found] ` <1444330924-17830-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-10-08 19:02 ` [PATCH v4 1/3] arm64/efi: remove /chosen/linux,uefi-stub-kern-ver DT property Ard Biesheuvel
2015-10-08 19:02 ` [PATCH v4 1/3] arm64/efi: remove /chosen/linux, uefi-stub-kern-ver " Ard Biesheuvel
[not found] ` <1444330924-17830-2-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-10-10 22:31 ` [PATCH v4 1/3] arm64/efi: remove /chosen/linux,uefi-stub-kern-ver " Matt Fleming
2015-10-10 22:31 ` Matt Fleming
2015-10-08 19:02 ` [PATCH v4 2/3] arm64: use ENDPIPROC() to annotate position independent assembler routines Ard Biesheuvel
2015-10-08 19:02 ` Ard Biesheuvel
2015-10-08 19:02 ` [PATCH v4 3/3] arm64/efi: isolate EFI stub from the kernel proper Ard Biesheuvel
2015-10-08 19:02 ` Ard Biesheuvel
[not found] ` <1444330924-17830-4-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-10-09 8:12 ` Andrey Ryabinin
2015-10-09 8:12 ` Andrey Ryabinin
[not found] ` <CAPAsAGz7Tp6Z87tPq_NNh_mcwPF_DOaXzu0po5f6AQxPAcsALQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-09 9:10 ` Will Deacon
2015-10-09 9:10 ` Will Deacon
2015-10-09 9:40 ` Andrey Ryabinin
2015-10-09 9:40 ` Andrey Ryabinin
[not found] ` <CAPAsAGzgqOZVdTfpBGADAhZjOJTCqdB1Paq-14vk-_1hu4DCyw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-09 9:43 ` Will Deacon
2015-10-09 9:43 ` Will Deacon
[not found] ` <20151009094324.GE26278-5wv7dgnIgG8@public.gmane.org>
2015-10-09 9:48 ` Andrey Ryabinin
2015-10-09 9:48 ` Andrey Ryabinin
2015-10-10 22:40 ` Matt Fleming [this message]
2015-10-10 22:40 ` Matt Fleming
2015-10-26 22:26 ` Jeremy Linton
2015-10-26 22:26 ` Jeremy Linton
[not found] ` <562EA894.8070505-5wv7dgnIgG8@public.gmane.org>
2015-10-26 22:33 ` Jeremy Linton
2015-10-26 22:33 ` Jeremy Linton
[not found] ` <562EAA22.3010905-5wv7dgnIgG8@public.gmane.org>
2015-10-27 2:20 ` Ard Biesheuvel
2015-10-27 2:20 ` Ard Biesheuvel
[not found] ` <CAKv+Gu-G1YS9Ha=-rtnPKJTOxBTrdSq6=Tqwq_GPW742JUE+2Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-27 14:44 ` Jeremy Linton
2015-10-27 14:44 ` Jeremy Linton
[not found] ` <562F8DCE.4010308-5wv7dgnIgG8@public.gmane.org>
2015-10-30 12:17 ` Ard Biesheuvel
2015-10-30 12:17 ` Ard Biesheuvel
[not found] ` <CAKv+Gu-m7dJbiF=8i=+cN=bx+y8AKu_MgHrS29jNK0fTvuwQ5Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-30 14:35 ` Mark Rutland
2015-10-30 14:35 ` Mark Rutland
2015-10-30 16:01 ` Catalin Marinas
2015-10-30 16:01 ` Catalin Marinas
2015-11-02 12:49 ` Matt Fleming
2015-11-02 12:49 ` Matt Fleming
2015-11-24 9:34 ` Robert Richter
2015-11-24 9:34 ` Robert Richter
[not found] ` <20151124093438.GA31343-vWBEXY7mpu582hYKe6nXyg@public.gmane.org>
2015-11-24 9:38 ` Ard Biesheuvel
2015-11-24 9:38 ` Ard Biesheuvel
2015-10-10 22:40 ` [PATCH v4 0/3] arm64: EFI stub isolation Matt Fleming
2015-10-10 22:40 ` Matt Fleming
[not found] ` <20151010224051.GK2723-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2015-10-12 15:30 ` Catalin Marinas
2015-10-12 15:30 ` Catalin Marinas
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=20151010224009.GJ2723@codeblueprint.co.uk \
--to=matt-mf/unelci9gs6ibeejttw/xrex20p6io@public.gmane.org \
--cc=ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=catalin.marinas-5wv7dgnIgG8@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=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=matt.fleming-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=ryabinin.a.a-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=will.deacon-5wv7dgnIgG8@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.