HomeFreeBSD

bhyve: merge adjacent E820 entries

Description

bhyve: merge adjacent E820 entries

EDKII can allocate adjacent E820 entries only if they are at a page
boundary. For some unknown and probably strange reasons, Intel puts
it's OpRegion at an offset of 0x18 bytes. If the VBT lays directly
behind the OpRegion, we're going to try allocating two adjacent E820
sharing the same page. This causes EDKII to do not properly allocate
those entries. A Linux guest then isn't able to map the VBT and those
fails to find it.

Reviewed by: markj
MFC after: 1 week
Sponsored by: Beckhoff Automation GmbH & Co. KG
Differential Revision: https://reviews.freebsd.org/D45336

Details

Provenance
corvinkAuthored on Dec 19 2023, 2:01 PM
Reviewer
markj
Differential Revision
D45336: bhyve: merge adjacent E820 entries
Parents
rGd93fbcf0222b: bhyve: TPM 2.0 emulation with swtpm
Branches
Unknown
Tags
Unknown