virsh create fails with "Unable to find any firmware to satisfy 'efi'" for aarch64 guest on macOS

Andrea Bolognani abologna at redhat.com
Tue Nov 30 10:40:07 UTC 2021


On Tue, Nov 30, 2021 at 09:54:38AM +0100, Michal Prívozník wrote:
> On 11/30/21 06:49, Nathan Vander Wilt wrote:
> > Ah, but it looks like the arm64 -> VIR_ARCH_AARCH64 patch
> > is still in limbo? AFAICT that's the main issue I'm hitting now.

Unfortunately that's the case.

> Looking into virArchFromHost() I can see uname() called which is then
> passed to virArchFromString(). In here, uname machine (which is
> equivalent to 'uname -m' from shell) is compared against virArchData array:
>
> https://gitlab.com/libvirt/libvirt/-/blob/master/src/util/virarch.c#L42
>
> So what you are saying is that 'uname -m' reports arm64 and not aarch64?
> If that's the case then we should revisit the patch you mention.

Correct: on Apple Silicon Macs the architecture name is reported as
"arm64", but our code expects it to be "aarch64" because that's what
we get on Linux.

Michal, have you actually looked at the patch mentioned earlier? If
not, you can perhaps do a clean room implementation of the fix based
on the information provided above and get us out of this stalemate?

It's quite a simple change, but having seen the original patch I feel
like I couldn't possibly submit it myself and still be in the clear.

-- 
Andrea Bolognani / Red Hat / Virtualization





More information about the libvirt-users mailing list