From: Greg KH <gregkh@linuxfoundation.org>
To: Ard Biesheuvel <ardb@kernel.org>
Cc: "# 3.4.x" <stable@vger.kernel.org>,
linux-efi <linux-efi@vger.kernel.org>,
jan.setjeeilers@oracle.com, Peter Jones <pjones@redhat.com>,
Steve McIntyre <steve@einval.com>,
Julian Andres Klode <julian.klode@canonical.com>,
Luca Boccassi <bluca@debian.org>,
James Bottomley <jejb@linux.ibm.com>
Subject: Re: x86 efistub stable backports for v6.6
Date: Thu, 15 Feb 2024 12:12:03 +0100 [thread overview]
Message-ID: <2024021545-coconut-stylishly-26ed@gregkh> (raw)
In-Reply-To: <CAMj1kXHVMDq670JhAwsYeGjYVVfgCxFC7YUChUF1GSerCUB1ow@mail.gmail.com>
On Thu, Feb 15, 2024 at 10:41:57AM +0100, Ard Biesheuvel wrote:
> On Thu, 15 Feb 2024 at 10:27, Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> > On Thu, Feb 15, 2024 at 10:17:20AM +0100, Ard Biesheuvel wrote:
> > > (cc stakeholders from various distros - apologies if I missed anyone)
> > >
> > > Please consider the patches below for backporting to the linux-6.6.y
> > > stable tree.
> > >
> > > These are prerequisites for building a signed x86 efistub kernel image
> > > that complies with the tightened UEFI boot requirements imposed by
> > > MicroSoft, and this is the condition under which it is willing to sign
> > > future Linux secure boot shim builds with its 3rd party CA
> > > certificate. (Such builds must enforce a strict separation between
> > > executable and writable code, among other things)
> > >
> > > The patches apply cleanly onto 6.6.17 (-rc2), resulting in a defconfig
> > > build that boots as expected under OVMF/KVM.
> > >
> > > 5f51c5d0e905 x86/efi: Drop EFI stub .bss from .data section
> > > 7e50262229fa x86/efi: Disregard setup header of loaded image
> > > bfab35f552ab x86/efi: Drop alignment flags from PE section headers
> > > 768171d7ebbc x86/boot: Remove the 'bugger off' message
> > > 8eace5b35556 x86/boot: Omit compression buffer from PE/COFF image
> > > memory footprint
> > > 7448e8e5d15a x86/boot: Drop redundant code setting the root device
> > > b618d31f112b x86/boot: Drop references to startup_64
> > > 2e765c02dcbf x86/boot: Grab kernel_info offset from zoffset header directly
> > > eac956345f99 x86/boot: Set EFI handover offset directly in header asm
> > > 093ab258e3fb x86/boot: Define setup size in linker script
> > > aeb92067f6ae x86/boot: Derive file size from _edata symbol
> > > efa089e63b56 x86/boot: Construct PE/COFF .text section from assembler
> > > fa5750521e0a x86/boot: Drop PE/COFF .reloc section
> > > 34951f3c28bd x86/boot: Split off PE/COFF .data section
> > > 3e3eabe26dc8 x86/boot: Increase section and file alignment to 4k/512
> > >
> > > 1ad55cecf22f x86/efistub: Use 1:1 file:memory mapping for PE/COFF
> > > .compat section
> >
> > Is the list here the order in which they should be applied in?
> >
>
> Yes. These are all from v6.7 except the last one, but that has been
> queued for v6.7 already.
>
> > And is this not an issue for 6.1.y as well?
> >
>
> It is, but there are many more changes that would need to go into v6.1:
>
> Documentation/x86/boot.rst | 2 +-
> arch/x86/Kconfig | 17 +
> arch/x86/boot/Makefile | 2 +-
> arch/x86/boot/compressed/Makefile | 13 +-
> arch/x86/boot/compressed/efi_mixed.S | 328 ++++++++++++++
> arch/x86/boot/compressed/efi_thunk_64.S | 195 --------
> arch/x86/boot/compressed/head_32.S | 38 +-
> arch/x86/boot/compressed/head_64.S | 593 +++++--------------------
> arch/x86/boot/compressed/mem_encrypt.S | 152 ++++++-
> arch/x86/boot/compressed/misc.c | 61 ++-
> arch/x86/boot/compressed/misc.h | 2 -
> arch/x86/boot/compressed/pgtable.h | 10 +-
> arch/x86/boot/compressed/pgtable_64.c | 87 ++--
> arch/x86/boot/compressed/sev.c | 112 +++--
> arch/x86/boot/compressed/vmlinux.lds.S | 6 +-
> arch/x86/boot/header.S | 215 ++++-----
> arch/x86/boot/setup.ld | 14 +-
> arch/x86/boot/tools/build.c | 271 +----------
> arch/x86/include/asm/boot.h | 8 +
> arch/x86/include/asm/efi.h | 14 +-
> arch/x86/include/asm/sev.h | 7 +
> drivers/firmware/efi/libstub/Makefile | 8 +-
> drivers/firmware/efi/libstub/alignedmem.c | 5 +-
> drivers/firmware/efi/libstub/arm64-stub.c | 6 +-
> drivers/firmware/efi/libstub/efi-stub-helper.c | 2 +
> drivers/firmware/efi/libstub/efistub.h | 28 +-
> drivers/firmware/efi/libstub/mem.c | 3 +-
> drivers/firmware/efi/libstub/randomalloc.c | 13 +-
> drivers/firmware/efi/libstub/x86-5lvl.c | 95 ++++
> drivers/firmware/efi/libstub/x86-stub.c | 327 +++++++-------
> drivers/firmware/efi/libstub/x86-stub.h | 17 +
> include/linux/efi.h | 1 +
> 32 files changed, 1204 insertions(+), 1448 deletions(-)
>
> (Note: the commit hashes below are bogus, they are from my tree [0])
>
> If you're happy to take these too, I can give you the proper list, but
> perhaps we should deal with v6.6 first?
Yeah, let's deal with 6.6 first :)
What distros are going to need/want this for 6.1.y? Will normal users
care as this is only for a new requirement by Microsoft, not for older
releases, right?
thanks,
greg k-h
next prev parent reply other threads:[~2024-02-15 11:12 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-15 9:17 x86 efistub stable backports for v6.6 Ard Biesheuvel
2024-02-15 9:27 ` Greg KH
2024-02-15 9:41 ` Ard Biesheuvel
2024-02-15 11:12 ` Greg KH [this message]
2024-02-15 11:29 ` Ard Biesheuvel
2024-02-20 1:03 ` xnox
2024-02-20 8:36 ` Ard Biesheuvel
2024-02-20 9:41 ` Dimitri John Ledkov
2024-02-20 15:19 ` Greg KH
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=2024021545-coconut-stylishly-26ed@gregkh \
--to=gregkh@linuxfoundation.org \
--cc=ardb@kernel.org \
--cc=bluca@debian.org \
--cc=jan.setjeeilers@oracle.com \
--cc=jejb@linux.ibm.com \
--cc=julian.klode@canonical.com \
--cc=linux-efi@vger.kernel.org \
--cc=pjones@redhat.com \
--cc=stable@vger.kernel.org \
--cc=steve@einval.com \
/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