Hi Andrea, Thanks for your comments.
> On Tue, Nov 18, 2025 at 11:58:13AM +0900, Kazuhiro Abe wrote: > > Although QEMU allows ACPI with UEFI firmware via the '-bios' option on > > aarch64, libvirt rejected such configurations through its validation. > > > > Therefore, the conditional statement was changed to allow the > > following > > settings: > > > > <os> > > <type arch='aarch64' machine='virt-4.0'>hvm</type> > > <loader > type="rom">/usr/share/qemu-efi-aarch64/QEMU_EFI.fd</loader> > > </os> > > <features> > > <acpi/> > > </features> > > > > Specifying <os firmware='bios'> still results in error, as before. > > > > Signed-off-by: Kazuhiro Abe <[email protected]> > > --- > > src/qemu/qemu_validate.c | 2 +- > > ...auto-bios-acpi-aarch64.aarch64-latest.err} | 0 > > .../firmware-auto-bios-acpi-aarch64.xml | 17 ++++++++++ > > ...ual-noefi-acpi-aarch64.aarch64-latest.args | 31 > > +++++++++++++++++++ ...nual-noefi-acpi-aarch64.aarch64-latest.xml > | 29 +++++++++++++++++ > > tests/qemuxmlconftest.c | 3 +- > > 6 files changed, 80 insertions(+), 2 deletions(-) rename > > tests/qemuxmlconfdata/{firmware-manual-noefi-acpi-aarch64.aarch64-late > > st.err => firmware-auto-bios-acpi-aarch64.aarch64-latest.err} (100%) > > create mode 100644 > > tests/qemuxmlconfdata/firmware-auto-bios-acpi-aarch64.xml > > create mode 100644 > > tests/qemuxmlconfdata/firmware-manual-noefi-acpi-aarch64.aarch64-lates > > t.args create mode 100644 > > tests/qemuxmlconfdata/firmware-manual-noefi-acpi-aarch64.aarch64-lates > > t.xml > > > > diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c index > > 3b0f2b50a5..263aaa25a2 100644 > > --- a/src/qemu/qemu_validate.c > > +++ b/src/qemu/qemu_validate.c > > @@ -1341,7 +1341,7 @@ qemuValidateDomainDef(const virDomainDef *def, > > /* On aarch64, ACPI requires UEFI */ > > if (def->features[VIR_DOMAIN_FEATURE_ACPI] == > VIR_TRISTATE_SWITCH_ON && > > def->os.arch == VIR_ARCH_AARCH64 && > > - (def->os.firmware != VIR_DOMAIN_OS_DEF_FIRMWARE_EFI && > > + (def->os.firmware == VIR_DOMAIN_OS_DEF_FIRMWARE_BIOS && > > !virDomainDefHasOldStyleUEFI(def))) { > > virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", > > _("ACPI requires UEFI on this architecture")); > > This makes the specific scenario you're interested in work but doesn't > address the > underlying cause, that is, libvirt failing to recognize the firmware being > loaded as > a UEFI implementation. > > As mentioned in the other thread, I will soon post a patch that takes care of > that, > thus making this change unnecessary. Understood. I'll wait for your patch. Best Regards, Kazuhiro Abe > > NACK > > -- > Andrea Bolognani / Red Hat / Virtualization
