public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Gerd Hoffmann" <kraxel@redhat.com>
To: devel@edk2.groups.io, afish@apple.com
Cc: leitao@debian.org, ardb@kernel.org, linux-efi@vger.kernel.org,
	 kexec@lists.infradead.org, bhe@redhat.com, vgoyal@redhat.com,
	ebiederm@xmission.com,  rppt@kernel.org, usamaarif642@gmail.com,
	gourry@gourry.net, rmikey@meta.com
Subject: Re: [edk2-devel] EFI table being corrupted during Kexec
Date: Wed, 11 Sep 2024 10:44:34 +0200	[thread overview]
Message-ID: <5ey4rmwtcnoukoh57o7ysgolyyzjcwnc3x6ao2zzu3l32xee43@o62hzctqe36q> (raw)
In-Reply-To: <BABE4F07-DF49-48C5-BAB7-B5986C035C8E@apple.com>

On Tue, Sep 10, 2024 at 08:44:40AM GMT, Andrew Fish via groups.io wrote:
> 
> 
> > On Sep 10, 2024, at 6:58 AM, Breno Leitao <leitao@debian.org> wrote:
> > 
> > 
> > We've seen a problem in upstream kernel kexec, where a EFI TPM log event table
> > is being overwritten.  This problem happen on real machine, as well as in a
> > recent EDK2 qemu VM.
> > 
> > Digging deep, the table is being overwritten during kexec, more precisely when
> > relocating kernel (relocate_kernel() function).
> > 
> > I've also found that the table is being properly reserved using
> > memblock_reserve() early in the boot, and that range gets overwritten later in
> > by relocate_kernel(). In other words, kexec is overwriting a memory that was
> > previously reserved (as memblock_reserve()).
> > 
> > Usama found that kexec only honours memory reservations from /sys/firmware/memmap
> > which comes from e820_table_firmware table.
> 
> The E820 table is not part of the UEFI standard and it is produced by
> a library in the OvmfPkg for “special cases” so I guess that lib could
> have a bug?

This "special case" is direct kernel boot ('qemu -kernel vmlinux') and
loading the linux kernel as EFI binary failed.  That should only happen
with linux kernels so old that they do not have the efi stub.

Also note "problem happen on real machine" above, so it clearly is not
something OVMF-specific.

take care,
  Gerd



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120549): https://edk2.groups.io/g/devel/message/120549
Mute This Topic: https://groups.io/mt/108376671/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2024-09-11  8:44 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-10 13:58 [edk2-devel] EFI table being corrupted during Kexec Breno Leitao
2024-09-10 15:44 ` Andrew Fish via groups.io
2024-09-11  8:44   ` Gerd Hoffmann [this message]
     [not found] ` <87ed5rd1qf.fsf@email.froward.int.ebiederm.org>
2024-09-10 15:13   ` Breno Leitao
2024-09-10 15:46   ` Usama Arif
2024-09-10 16:09     ` Breno Leitao
2024-09-10 16:14       ` Gregory Price
2024-09-11 10:58   ` Usama Arif

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-list 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=5ey4rmwtcnoukoh57o7ysgolyyzjcwnc3x6ao2zzu3l32xee43@o62hzctqe36q \
    --to=devel@edk2.groups.io \
    /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