Commit Graph

82 Commits

Author SHA1 Message Date
Thomas Lamprecht
d6146dd6df bump version to 4.2025.02-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-03 18:17:22 +02:00
Philipp Giersfeld
47f3b1ec77 Add OVMF targets for AMD SEV-ES and SEV-SNP
AMD SEV-SNP boots with a single volatile firmware image OVMF.fd via the
-bios option.

This requires building the `OvmfPkg/OvmfPkgX64.dsc` target.
Also, SEV-ES and SEV-SNP do not support SMM [1,2].

Therefore, introduce a new target build-ovmf-cvm that builds OVMF
firmware suitable for AMD SEV.

[1] https://www.qemu.org/docs/master/system/i386/amd-memory-encryption.
[2] https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/specifications/56421.pdf

Signed-off-by: Philipp Giersfeld <philipp.giersfeld@canarybit.eu>
Tested-by: Markus Frank <m.frank@proxmox.com>
2025-04-03 18:17:17 +02:00
Thomas Lamprecht
b00cde11d8 bump version to 4.2025.02-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-27 16:50:29 +01:00
Fiona Ebner
96a3e56b11 add patch to revert addition of EFI memory attributes protocol for x86_64
Because of a long-standing bug in shim [0], booting will fail for
distibutions that do not include the fix yet, like Rocky Linux 9.5
and other CentOS-based distibutions. This is cased by the addition
of the EFI_MEMORY_ATTRIBUTE_PROTOCOL in edk2 commit efaa102d00
("UefiCpuPkg: Produce EFI memory attributes protocol") for x86_64.

Even with the fix in shim, issues in commonly shipped versions of GRUB
remain [1].

This is relatively recent, i.e. in the edk2-stable202502 tag, and
since current non-minor distributions are still affected, revert the
problematic commit for now.

Once issues are less common in distributions, an option to support
disabling it (via fw_cfg on the QEMU command line) can still be added
[1]. Then, it can also be nicely documented as a known issue while
giving users guidance.

There already is a similar patch for ARM [2] inherited from the Debian
upstream version.

The problematic commit is EFI_MEMORY_ATTRIBUTE_PROTOCOL was added for x86_64 recently in the
edk2-stable202502 tag. Since current non-minor distributions are still
affected, a revert is done for now.

[0]: c7b3051528
[1]: https://github.com/tianocore/edk2/pull/10667
[2]: ./debian/patches/ArmVirtPkg-disable-the-EFI_MEMORY_ATTRIBUTE-protocol.patch

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
 [TL: re-export the patch using git format-patch to fix DOS line
  endings that EDK2 uses and that might have been lost on mail
  transport]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-27 16:50:29 +01:00
Thomas Lamprecht
cacc8b8767 bump version to 4.2025.02-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-05 17:23:21 +01:00
Thomas Lamprecht
7a5d253fd0 lintian: update overrides for source package
Do not add the two unpack-message-for-orig for the ARM liblto for now,
while they should no be relevant they looked a bit to strange for me
to just plainly ignore.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-05 17:21:42 +01:00
Thomas Lamprecht
b481882723 d/copyright: update
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-05 17:21:42 +01:00
Thomas Lamprecht
f9e300ba84 update edk2 to edk2-stable202502 tag and refresh patches
Drop patches applied upstream and refresh the others.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-05 17:21:42 +01:00
Philipp Giersfeld
45b5f70df9 Update edk2 to edkstable202411
Signed-off-by: Philipp Giersfeld <philipp.giersfeld@canarybit.eu>
Tested-by: Markus Frank <m.frank@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-03-05 17:21:42 +01:00
Fabian Grünbichler
17443032f7 bump version to 4.2023.08-4
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-02-15 09:55:40 +01:00
Fabian Grünbichler
334229c409 fix CVE-2023-48733: disable EFI shell in SB mode
since the shell allows circumvention of Secure Boot restrictions, for example
via raw memory access or execution of scripts on the ESP.

see Links in the patch for details.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-02-15 09:54:41 +01:00
Fabian Grünbichler
0b5cf8de8d bump version to 4.2023.08-3
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-01-17 09:01:13 +01:00
Fabian Grünbichler
fee1be4819 cherry-pick patches for PXE CVEs
CVE-2023-45229-CVE-2023-45237, taken from upstream announcement/issue at
https://bugzilla.tianocore.org/show_bug.cgi?id=4518

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2024-01-17 08:59:17 +01:00
Fabian Grünbichler
9a1de33fc8 d/control: add missing build-dep
only used for bootstrapping

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-12-12 12:22:07 +01:00
Thomas Lamprecht
e1cd8d9a82 bump version to 4.2023.08-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-24 13:57:36 +01:00
Thomas Lamprecht
dc578af253 d/rules: re-enable PVSCSI support again
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-24 13:55:52 +01:00
Thomas Lamprecht
77e79eb1a5 bump version to 4.2023.08-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 15:13:29 +01:00
Thomas Lamprecht
871a8ed305 d/control: wrap-and-sort -tkn
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
42afe8deda move OVMF to explicit package keep pve-edk2-firmware for transition
Allowing us to make those niche use-cases opt-in, saving a few MB of
space.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
8ed64deca2 build RISC-V images and ship as separate package
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
d729809179 update submodule, patches and buildsys to 2023.08
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
669d81accf split out AARCH64 files into separate package
do not bother with dependencies for the split as this is for a
non-supported use-case anyway and we can point users to this fact in
the known issues section of the upgrade notes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
8d856e1377 handle dropping support for building 2MB-sized firmware images
Keep a static build of the last version we supported them (2023.02)
for backward compat in a new separate binary package.

We can make that optional with the next major release and handle
affected VMs in pve8to9.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-11-19 14:29:16 +01:00
Thomas Lamprecht
d24cc78500 bump version to 3.20230228-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-06 16:24:32 +02:00
Thomas Lamprecht
763adf39b2 fix line endings of phys-bits patch
edk2 source is using \r\n ...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-06 16:24:32 +02:00
Fiona Ebner
c252b4e501 add patch to work around older guest kernel bug
by limiting the phys-bits to 46 instead of 47. On Ubuntu 18.04 with
kernel 4.15, using 47 leads to a strange issue where initialization of
VirtIO devices would fail.

Reported in the community forum:
https://forum.proxmox.com/threads/127410/

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-06 16:05:21 +02:00
Thomas Lamprecht
f9d3c7f9b1 bump version to 3.20230228-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 11:58:52 +02:00
Thomas Lamprecht
defb560586 buildsys: avoid pre-build library archives in source tar ball
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 11:58:52 +02:00
Thomas Lamprecht
7728bf381b fix #4696: Revert "ArmVirtPkg: make EFI_LOADER_DATA non-executable"
> Continue to allow bootloaders to execute memory allocated as
> EFI_LOADER_DATA until GRUB fixes are more generally available.
> (Closes: #1025656)

-- a0be41b75c

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 10:56:07 +02:00
Thomas Lamprecht
2cfb5323bd fix empty AAVMF_VARS.fd file
Adapted from:
5e68feec5b

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 10:45:26 +02:00
Thomas Lamprecht
ee520d695f d/source: override some false-positive lintian warning/errors
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 10:39:47 +02:00
Thomas Lamprecht
e0967b8334 refresh patches
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-05-24 10:07:31 +02:00
Thomas Lamprecht
a36eb3b5a6 bump version to 3.20230228-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-04-04 16:11:29 +02:00
Fiona Ebner
8b68f76f47 fix #4625: restore SMBIOS type 0 table defaults
Commit 4cb94f20b0 ("OvmfPkg/SmbiosPlatformDxe: use PcdFirmware*") in
the edk2 submodule made the switch from hard coded values for the
SMBIOS type 0 table to using those defined in the PCD (Platform
Configuration Database). But this changed the value for the vendor
from "EFI Development Kit II / OVMF" to "EDK II" and made version and
release date "unknown". This can cause problems for hardware keys[0],
and the missing date can make Windows unhappy[1].

The PCD information can be specified during build. For the vendor,
just revert to the hardcoded value from before. This should be enough
to resolve the issue in [0]. For version and date, use sensible values
gathered from the build variables. The date format is mm/dd/yyyy while
the version is free-form according to [2], section 7.1.

[0]: https://bugzilla.proxmox.com/show_bug.cgi?id=4625
[1]: https://edk2.groups.io/g/devel/message/100922
[2]: https://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.2.0.pdf

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-04-04 16:10:09 +02:00
Thomas Lamprecht
90e8dcd1af bump version to 3.20230228-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-24 09:21:54 +01:00
Thomas Lamprecht
e065e1fd03 bump version to 3.20221111-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-23 11:25:11 +01:00
Fiona Ebner
7e34b89874 d/rules: re-enable PVSCSI support
It is not maintained anymore and got disabled by default in upstream
commit 57783adfb5 ("OvmfPkg: Change default to disable MptScsi and
PvScsi"). Re-enable it to preserve backwards compatibility in Proxmox
VE.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-03-23 11:21:05 +01:00
Thomas Lamprecht
1bcede21b8 bump version to 3.20221111-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-08 08:42:48 +01:00
Thomas Lamprecht
1cc8f0e1f5 d/rules: sync with packaging upstream
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-08 08:42:48 +01:00
Thomas Lamprecht
d7274593bf debian: sync tests with packaging upstream
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-07 10:01:59 +01:00
Thomas Lamprecht
5b38a120b6 debian: add patch to enforce the basic x86-64 march
this is mostly done to secure against a future change of the default
march that may come from the x86-64-v* microarchitecture level [0]
concept that is currently being developed and by some more bleeding
edge  distros even already adopted.

[0]: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-07 09:38:47 +01:00
Thomas Lamprecht
dd9d3a52da debian: sync edk2-vars-generator script with packaging upstream
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-03-07 09:38:09 +01:00
Thomas Lamprecht
a10850a10e bump version to 3.20220228-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:51:51 +02:00
Thomas Lamprecht
8cefa645e8 d/rules: backport "Remove no-longer-used variable definition"
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
0ca2f76cb1 d/rules: adapt to upstream TPM2 compile flag rename
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
3bcaf1a25c d/readme: add aarch64 descriptions
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
a2b8eeec2a d/rules: enable IPv6 for PXE
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
13d9aa9db3 backport "Build up $(COMMON_FLAGS) line-by-line "
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
47a343bc63 debian: backport packaging improvements
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-07-19 13:46:18 +02:00
Thomas Lamprecht
7e8a639bcf drop superfluous resolution patch
commit 862ea6e836 ("OvmfPkg: change qemu default resolution to
1280x800") made our patch that changed it to 1024x768 obsolete.

Note that QEMU is planning to change their default from 1024x768 to
1280x800 in QEMU 7.0, so that's where that new value is coming from.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-01 15:20:17 +01:00