utmapp / UTM

Virtual machines for iOS and macOS
https://getutm.app
Apache License 2.0
26.67k stars 1.34k forks source link

Kernel panic when starting VM with QEMU option highmem=on #3946

Closed danhermann closed 2 years ago

danhermann commented 2 years ago

Describe the issue While testing 3.2 beta, I set highmem=on for an aarch64 Ubuntu VM in order to work around a known issue. Starting the VM with that option resulted in a kernel panic. I downgraded back to 3.1.5 and attempted to start the VM and that resulted in another kernel panic.

Configuration

Crash log Unfortunately, there are no crash logs. I do have the following problem report if it is of any use:

macOS problem report panic(cpu 5 caller 0xfffffe002cd11814): vm_fault() KERN_FAILURE from guest fault on state 0xfffffe61180c0000 @sleh.c:3117 Debugger message: panic Memory ID: 0x6 OS release type: User OS version: 21E258 Kernel version: Darwin Kernel Version 21.4.0: Fri Mar 18 00:46:32 PDT 2022; root:xnu-8020.101.4~15/RELEASE_ARM64_T6000 Fileset Kernelcache UUID: 0631AF68D2B8D6FEA30E36D7895D4DB4 Kernel UUID: C342869F-FFB9-3CCE-A5A3-EA711C1E87F6 iBoot version: iBoot-7459.101.3 secure boot?: YES Paniclog version: 13 KernelCache slide: 0x00000000252e4000 KernelCache base: 0xfffffe002c2e8000 Kernel slide: 0x0000000025a94000 Kernel text base: 0xfffffe002ca98000 Kernel text exec slide: 0x0000000025b7c000 Kernel text exec base: 0xfffffe002cb80000 mach_absolute_time: 0x685772c83e Epoch Time: sec usec Boot : 0x6268009d 0x00066407 Sleep : 0x00000000 0x00000000 Wake : 0x00000000 0x00000000 Calendar: 0x62684986 0x00064db1 Zone info: Foreign : 0xfffffe00362dc000 - 0xfffffe00362ec000 Native : 0xfffffe1000708000 - 0xfffffe3000708000 Readonly: 0xfffffe14cd3d4000 - 0xfffffe1666d6c000 Metadata: 0xfffffe83537b8000 - 0xfffffe835f6e4000 Bitmaps : 0xfffffe835f6e4000 - 0xfffffe83770d0000 CORE 0 PVH locks held: None CORE 1 PVH locks held: None CORE 2 PVH locks held: None CORE 3 PVH locks held: None CORE 4 PVH locks held: None CORE 5 PVH locks held: None CORE 6 PVH locks held: None CORE 7 PVH locks held: None CORE 8 PVH locks held: None CORE 9 PVH locks held: None CORE 0: PC=0xfffffe002cc0f418, LR=0xfffffe002cc0f418, FP=0xfffffe6101a73f00 CORE 1: PC=0xfffffe002cc0f418, LR=0xfffffe002cc0f418, FP=0xfffffe60c03f3f00 CORE 2: PC=0x00000001a317c718, LR=0x0000000103632970, FP=0x000000016ff42790 CORE 3: PC=0xfffffe002d0ffad4, LR=0xfffffe002d0ffad0, FP=0xfffffe6118ca3ca0 CORE 4: PC=0x0000000104a86ad4, LR=0x0000000104a86ab4, FP=0x000000016d1d2580 CORE 5 is the one that panicked. Check the full backtrace for details. CORE 6: PC=0xfffffe002cc0f41c, LR=0xfffffe002cc0f418, FP=0xfffffe61180abf00 CORE 7: PC=0xfffffe002cc0f41c, LR=0xfffffe002cc0f418, FP=0xfffffe6037dc3f00 CORE 8: PC=0xfffffe002cc0f418, LR=0xfffffe002cc0f418, FP=0xfffffe6032db3f00 CORE 9: PC=0xfffffe002cc0f41c, LR=0xfffffe002cc0f418, FP=0xfffffe6118cd3f00 Compressor Info: 0% of compressed pages limit (OK) and 0% of segments limit (OK) with 0 swapfiles and OK swap space Panicked task 0xfffffe2001c1edf8: 17341 pages, 22 threads: pid 46328: QEMULauncher Panicked thread: 0xfffffe1ff42d8968, backtrace: 0xfffffe60c0593310, tid: 295434 lr: 0xfffffe002cbd9560 fp: 0xfffffe60c0593380 lr: 0xfffffe002cbd9228 fp: 0xfffffe60c05933f0 lr: 0xfffffe002cd1decc fp: 0xfffffe60c0593410 lr: 0xfffffe002cd1005c fp: 0xfffffe60c0593480 lr: 0xfffffe002cd0da98 fp: 0xfffffe60c0593540 lr: 0xfffffe002cb877f8 fp: 0xfffffe60c0593550 lr: 0xfffffe002cbd8eac fp: 0xfffffe60c05938f0 lr: 0xfffffe002cbd8eac fp: 0xfffffe60c0593960 lr: 0xfffffe002d402acc fp: 0xfffffe60c0593980 lr: 0xfffffe002cd11814 fp: 0xfffffe60c05939e0 lr: 0xfffffe002cd113b0 fp: 0xfffffe60c0593a50 lr: 0xfffffe002cb92828 fp: 0xfffffe60c0593a60 lr: 0xfffffe002cd261c0 fp: 0xfffffe60c0593e50 lr: 0xfffffe002cd0dea8 fp: 0xfffffe60c0593f10 lr: 0xfffffe002cb877f8 fp: 0xfffffe60c0593f20 last started kext at 7257972613: com.apple.filesystems.smbfs 4.0 (addr 0xfffffe002ca7f670, size 64493) loaded kexts: com.apple.filesystems.smbfs 4.0 com.apple.filesystems.autofs 3.0 com.apple.driver.AppleTopCaseHIDEventDriver 5440.11 com.apple.driver.AppleBiometricServices 1 com.apple.driver.CoreKDL 1 com.apple.driver.usb.realtek8153patcher 5.0.0 com.apple.driver.DiskImages.ReadWriteDiskImage 493.0.0 com.apple.driver.DiskImages.UDIFDiskImage 493.0.0 com.apple.driver.DiskImages.RAMBackingStore 493.0.0 com.apple.driver.DiskImages.FileBackingStore 493.0.0 com.apple.driver.SEPHibernation 1 com.apple.driver.BCMWLANFirmware4387.Hashstore 1 com.apple.driver.AppleUSBDeviceNCM 5.0.0 com.apple.driver.AppleThunderboltIP 4.0.3 com.apple.driver.AppleFileSystemDriver 3.0.1 com.apple.nke.l2tp 1.9 com.apple.filesystems.tmpfs 1 com.apple.filesystems.lifs 1 com.apple.filesystems.apfs 1934.101.3 com.apple.IOTextEncryptionFamily 1.0.0 com.apple.filesystems.hfs.kext 583.100.10 com.apple.security.BootPolicy 1 com.apple.BootCache 40 com.apple.AppleFSCompression.AppleFSCompressionTypeZlib 1.0.0 com.apple.AppleFSCompression.AppleFSCompressionTypeDataless 1.0.0d1 com.apple.driver.AppleCS42L84Audio 540.34 com.apple.driver.AppleSN012776Amp 540.34 com.apple.driver.ApplePMP 1 com.apple.driver.AppleSmartIO2 1 com.apple.AppleEmbeddedSimpleSPINORFlasher 1 com.apple.driver.AppleT6000SOCTuner 1 com.apple.driver.AppleT6000CLPCv3 1 com.apple.driver.AppleSmartBatteryManager 161.0.0 com.apple.driver.AppleALSColorSensor 1.0.0d1 com.apple.driver.AppleAOPVoiceTrigger 140.1 com.apple.driver.AppleSPMIPMU 1.0.1 com.apple.driver.ApplePMPFirmware 1 com.apple.driver.AppleDPDisplayTCON 1 com.apple.driver.AppleAVD 560 com.apple.AGXG13X 190.17.3 com.apple.driver.AppleS5L8960XNCO 1 com.apple.driver.AppleSDXC 3.2.1 com.apple.driver.AppleEventLogHandler 1 com.apple.driver.AppleT6001PMGR 1 com.apple.driver.AppleAVE2 540.44.5 com.apple.driver.AppleMCDP29XXUpdateSupport 1 com.apple.driver.AppleSamsungSerial 1.0.0d1 com.apple.driver.AppleSerialShim 1 com.apple.driver.usb.AppleSynopsysUSB40XHCI 1 com.apple.driver.AppleProResHW 175.4.0 com.apple.driver.AppleJPEGDriver 4.8.1 com.apple.driver.AppleMobileDispT600X-DCP 140.0 com.apple.driver.AppleM68Buttons 1.0.0d1 com.apple.driver.AppleS8000AES 1 com.apple.driver.AppleS8000DWI 1.0.0d1 com.apple.driver.AppleInterruptControllerV2 1.0.0d1 com.apple.driver.AppleT8110DART 1 com.apple.driver.AppleBluetoothModule 1 com.apple.driver.AppleBCMWLANBusInterfacePCIe 1 com.apple.driver.AppleS5L8920XPWM 1.0.0d1 com.apple.driver.AudioDMAController-T600x 140.4 com.apple.driver.AppleT6000DART 1 com.apple.driver.AppleSPIMC 1 com.apple.driver.AppleS5L8940XI2C 1.0.0d2 com.apple.driver.AppleT6000 1 com.apple.iokit.IOUserEthernet 1.0.1 com.apple.driver.usb.AppleUSBUserHCI 1 com.apple.iokit.IOKitRegistryCompatibility 1 com.apple.iokit.EndpointSecurity 1 com.apple.driver.AppleDiskImages2 126.100.13 com.apple.AppleSystemPolicy 2.0.0 com.apple.nke.applicationfirewall 402 com.apple.kec.InvalidateHmac 1 com.apple.kec.AppleEncryptedArchive 1 com.apple.driver.driverkit.serial 6.0.0 com.apple.kext.triggers 1.0 com.apple.iokit.IOAVBFamily 1040.6 com.apple.plugin.IOgPTPPlugin 1040.3 com.apple.iokit.IOEthernetAVBController 1.1.0 com.apple.driver.AppleHIDKeyboard 228.1 com.apple.driver.AppleActuatorDriver 5440.11 com.apple.driver.AppleMultitouchDriver 5440.11 com.apple.driver.AppleHSBluetoothDriver 5440.11 com.apple.driver.IOBluetoothHIDDriver 9.0.0 com.apple.driver.AppleMesaSEPDriver 100.99 com.apple.iokit.IOBiometricFamily 1 com.apple.driver.usb.cdc.ecm 5.0.0 com.apple.driver.usb.cdc.acm 5.0.0 com.apple.driver.usb.serial 6.0.0 com.apple.driver.usb.IOUSBHostHIDDevice 1.2 com.apple.driver.usb.cdc 5.0.0 com.apple.driver.AppleUSBAudio 415.11 com.apple.iokit.IOAudioFamily 340.2 com.apple.vecLib.kext 1.2.0 com.apple.driver.DiskImages.KernelBacked 493.0.0 com.apple.driver.AppleXsanScheme 3 com.apple.driver.AppleTrustedAccessory 1 com.apple.iokit.AppleSEPGenericTransfer 1 com.apple.driver.AppleSEPHDCPManager 1.0.1 com.apple.driver.usb.networking 5.0.0 com.apple.driver.AppleThunderboltDPInAdapter 8.5.1 com.apple.driver.AppleThunderboltDPAdapterFamily 8.5.1 com.apple.driver.AppleThunderboltUSBDownAdapter 1.0.4 com.apple.driver.AppleThunderboltPCIDownAdapter 4.1.1 com.apple.nke.ppp 1.9 com.apple.driver.AppleBSDKextStarter 3 com.apple.filesystems.hfs.encodings.kext 1 com.apple.driver.AppleConvergedIPCOLYBTControl 1 com.apple.driver.AppleConvergedPCI 1 com.apple.driver.AppleBluetoothDebug 1 com.apple.driver.AppleHIDTransportSPI 5440.6 com.apple.driver.AppleHIDTransport 5440.6 com.apple.driver.AppleInputDeviceSupport 5440.6 com.apple.driver.AppleBTM 1.0.1 com.apple.driver.AppleCSEmbeddedAudio 540.34 com.apple.driver.AppleDCPDPTXProxy 1.0.0 com.apple.driver.DCPDPFamilyProxy 1 com.apple.driver.AppleDiagnosticDataAccessReadOnly 1.0.0 com.apple.driver.ApplePassthroughPPM 3.0 com.apple.driver.AppleAOPAudio 140.3 com.apple.driver.AppleEmbeddedAudio 540.34 com.apple.iokit.AppleARMIISAudio 140.2 com.apple.driver.AppleSPU 1 com.apple.AGXFirmwareKextG13XRTBuddy 190.17.3 com.apple.AGXFirmwareKextRTBuddy64 190.17.3 com.apple.iokit.IONVMeFamily 2.1.0 com.apple.driver.AppleNANDConfigAccess 1.0.0 com.apple.driver.AppleDialogPMU 1.0.1 com.apple.driver.AppleStockholmControl 1.0.0 com.apple.iokit.IOGPUFamily 35.29 com.apple.driver.ApplePMGR 1 com.apple.driver.AppleHPM 3.4.4 com.apple.driver.AppleT6000TypeCPhy 1 com.apple.driver.AppleT8103TypeCPhy 1 com.apple.driver.DCPAVFamilyProxy 1 com.apple.driver.AppleSART 1 com.apple.driver.AppleUSBXDCIARM 1.0 com.apple.driver.AppleUSBXDCI 1.0 com.apple.iokit.IOUSBDeviceFamily 2.0.0 com.apple.driver.usb.AppleSynopsysUSBXHCI 1 com.apple.driver.usb.AppleUSBXHCI 1.2 com.apple.driver.AppleEmbeddedUSBHost 1 com.apple.driver.usb.AppleUSBHub 1.2 com.apple.driver.usb.AppleUSBHostCompositeDevice 1.2 com.apple.driver.AppleSPMI 1.0.1 com.apple.iokit.IOMobileGraphicsFamily-DCP 343.0.0 com.apple.driver.AppleDCP 1 com.apple.driver.AppleFirmwareKit 1 com.apple.iokit.IOMobileGraphicsFamily 343.0.0 com.apple.driver.usb.AppleUSBHostPacketFilter 1.0 com.apple.driver.AppleARMWatchdogTimer 1 com.apple.driver.AppleDisplayCrossbar 1.0.0 com.apple.iokit.IODisplayPortFamily 1.0.0 com.apple.driver.AppleTypeCPhy 1 com.apple.driver.AppleThunderboltNHI 7.2.81 com.apple.driver.AppleT6000PCIeC 1 com.apple.iokit.IOThunderboltFamily 9.3.3 com.apple.driver.ApplePIODMA 1 com.apple.driver.AppleT600xPCIe 1 com.apple.driver.AppleMultiFunctionManager 1 com.apple.driver.AppleBluetoothDebugService 1 com.apple.driver.AppleBCMWLANCore 1.0.0 com.apple.iokit.IO80211Family 1200.12.2b1 com.apple.driver.IOImageLoader 1.0.0 com.apple.driver.AppleOLYHAL 1 com.apple.driver.corecapture 1.0.4 com.apple.driver.AppleEmbeddedPCIE 1 com.apple.driver.AppleMCA2-T600x 640.5 com.apple.driver.AppleEmbeddedAudioLibs 140.1 com.apple.driver.AppleFirmwareUpdateKext 1 com.apple.driver.AppleH13CameraInterface 6.44.0 com.apple.driver.AppleH10PearlCameraInterface 17.0.6 com.apple.driver.AppleGPIOICController 1.0.2 com.apple.driver.AppleFireStormErrorHandler 1 com.apple.driver.AppleMobileApNonce 1 com.apple.iokit.IOTimeSyncFamily 1040.3 com.apple.driver.DiskImages 493.0.0 com.apple.iokit.IOGraphicsFamily 594 com.apple.iokit.IOBluetoothSerialManager 9.0.0 com.apple.iokit.IOBluetoothHostControllerUSBTransport 9.0.0 com.apple.iokit.IOBluetoothHostControllerUARTTransport 9.0.0 com.apple.iokit.IOBluetoothHostControllerTransport 9.0.0 com.apple.driver.IOBluetoothHostControllerPCIeTransport 9.0.0 com.apple.iokit.IOBluetoothFamily 9.0.0 com.apple.driver.FairPlayIOKit 68.16.0 com.apple.iokit.CSRBluetoothHostControllerUSBTransport 9.0.0 com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport 9.0.0 com.apple.driver.AppleSSE 1.0 com.apple.driver.AppleSEPKeyStore 2 com.apple.driver.AppleUSBTDM 533.100.11 com.apple.iokit.IOUSBMassStorageDriver 210.101.2 com.apple.iokit.IOPCIFamily 2.9 com.apple.iokit.IOSCSIBlockCommandsDevice 456.100.7 com.apple.iokit.IOSCSIArchitectureModelFamily 456.100.7 com.apple.driver.AppleIPAppender 1.0 com.apple.driver.AppleFDEKeyStore 28.30 com.apple.driver.AppleEffaceableStorage 1.0 com.apple.driver.AppleCredentialManager 1.0 com.apple.driver.KernelRelayHost 1 com.apple.iokit.IOUSBHostFamily 1.2 com.apple.driver.AppleUSBHostMergeProperties 1.2 com.apple.driver.usb.AppleUSBCommon 1.0 com.apple.driver.AppleSMC 3.1.9 com.apple.driver.RTBuddy 1.0.0 com.apple.driver.AppleEmbeddedTempSensor 1.0.0 com.apple.driver.AppleARMPMU 1.0 com.apple.iokit.IOAccessoryManager 1.0.0 com.apple.driver.AppleOnboardSerial 1.0 com.apple.iokit.IOSkywalkFamily 1.0 com.apple.driver.mDNSOffloadUserClient 1.0.1b8 com.apple.iokit.IONetworkingFamily 3.4 com.apple.iokit.IOSerialFamily 11 com.apple.driver.AppleSEPManager 1.0.1 com.apple.driver.AppleA7IOP 1.0.2 com.apple.driver.IOSlaveProcessor 1 com.apple.driver.AppleBiometricSensor 2 com.apple.iokit.IOHIDFamily 2.0.0 com.apple.iokit.CoreAnalyticsFamily 1 com.apple.driver.AppleANELoadBalancer 5.64.2 com.apple.driver.AppleH11ANEInterface 5.64.2 com.apple.AUC 1.0 com.apple.iokit.IOAVFamily 1.0.0 com.apple.iokit.IOHDCPFamily 1.0.0 com.apple.iokit.IOCECFamily 1 com.apple.iokit.IOAudio2Family 1.0 com.apple.driver.AppleIISController 140.1 com.apple.driver.AppleAudioClockLibs 140.1 com.apple.driver.AppleM2ScalerCSCDriver 265.0.0 com.apple.iokit.IOSurface 302.14 com.apple.driver.IODARTFamily 1 com.apple.security.quarantine 4 com.apple.security.sandbox 300.0 com.apple.kext.AppleMatch 1.0.0d1 com.apple.driver.AppleMobileFileIntegrity 1.0.5 com.apple.security.AppleImage4 4.2.0 com.apple.kext.CoreTrust 1 com.apple.iokit.IOCryptoAcceleratorFamily 1.0.1 com.apple.driver.AppleARMPlatform 1.0.2 com.apple.iokit.IOStorageFamily 2.1 com.apple.iokit.IOSlowAdaptiveClockingFamily 1.0.0 com.apple.iokit.IOReportFamily 47 com.apple.kec.pthread 1 com.apple.kec.Libm 1 com.apple.kec.corecrypto 12.0 ** Stackshot Succeeded ** Bytes Traced 458217 (Uncompressed 1194320) **

Debug log debug.log

Upload VM config.plist.txt

clyso commented 2 years ago

same here. kernel panic and mac reboot after starting a aarch64 Ubuntu VM ( with highmem=on ) on 3.2 beta. creating a new VM in 3.15 ( without highmem=on ) works like expect.

t3chn0m4g3 commented 2 years ago

Same here.

peterneutron commented 2 years ago

You should not activate highmem on an Apple Silicon machine. The obvious answer would be to just not use a pre-release version with known issues in a productive environment.

More technical details:

https://patchwork.kernel.org/project/qemu-devel/patch/20201126215017.41156-9-agraf@csgraf.de/#23800615

osy commented 2 years ago

@agraf So if HVF doesn't support highmem and QEMU refuses to start with highmem=off, what’s the proper solution?

agraf commented 2 years ago

QEMU should always work fine with highmem=off, what is broken in HVF is highmem=on. MacOS 12.4 also fixes highmem=on for M1 Max. I haven't verified, but I believe M1 (no Max) doesn't support highmem=on in hardware.

t3chn0m4g3 commented 2 years ago

@agraf Thanks for the explanation. @osy I was just following the suggestion for highmem=on, because I got the empty Error message and the VM would not start (on M1 Pro).

osy commented 2 years ago

The empty error is actually QEMU printing "qemu-aarch64-softmmu: Addressing limited to 32 bits, but memory exceeds it by 1073741824 bytes" which I traced to "highmem=off"

agraf commented 2 years ago

Ok, now I understand. QEMU gained support to enforce that RAM stays within the first 4GB in QEMU 7.0, which is not what we wanted - we just wanted to stay below 64GB because that is the limit at which point M1 hardware maxes out. M1 Max also has the kernel panic bug in < macOS 12.4.

I'm not sure what we should do about this. Once 12.4 is out, I would expect highmem=on to "just work" everywhere with sensible limits. So once we can, we should force users to 12.4 once it's out and always use highmem=on. In the meantime, you could apply a local hack to UTM to get the <7.0 behavior back:

diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 5bdd98e4a1..5f1eb7b092 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1707,7 +1707,7 @@ static void virt_set_memmap(VirtMachineState *vms, int pa_bits)
      * irrespective of the underlying capabilities of the HW.
      */
     if (!vms->highmem) {
-        pa_bits = 32;
+        pa_bits = 36;
     }

     /*
t3chn0m4g3 commented 2 years ago

@agraf Thanks! Forcing to 12.4 makes perfect sense in that regard.

osy commented 2 years ago

~Thanks for the explanation. However I don’t think it’s just M1 Max that experiences this issue. I get it on my M1 Mac mini.~ Disregard this, I was thinking of the original issue with highmem=off not the kernel panic.

825i commented 2 years ago

I am getting this issue myself. Any idea how to fix it at all? I have an M1 Mac with 16GB of RAM. Man I wish it was easier to use VMs on this thing...

Command: ["qemu-system-aarch64", "-machine", "virt,accel=hvf,highmem=off", "-cpu", "cortex-a72", "-smp", "2", "-m", "4G", "-device", "virtio-net-device,netdev=net0", "-netdev", "user,id=net0,hostfwd=tcp::50022-:22", "-drive", "if=virtio,format=qcow2,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/linked-box.img", "-drive", "if=pflash,format=raw,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/edk2-aarch64-code.fd,readonly=on", "-drive", "if=pflash,format=raw,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/edk2-arm-vars.fd", "-chardev", "socket,id=mon0,path=/Users/adminuser/.vagrant.d/tmp/vagrant-qemu/6CR3QwtQWCI/qemu_socket,server=on,wait=off", "-mon", "chardev=mon0,mode=readline", "-chardev", "socket,id=ser0,path=/Users/adminuser/.vagrant.d/tmp/vagrant-qemu/6CR3QwtQWCI/qemu_socket_serial,server=on,wait=off", "-serial", "chardev:ser0", "-pidfile", "/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/qemu.pid", "-parallel", "null", "-monitor", "none", "-display", "none", "-vga", "none", "-daemonize", {:notify=>[:stdout, :stderr, :stdin]}]

Stderr: qemu-system-aarch64: Addressing limited to 32 bits, but memory exceeds it by 1073741824 bytes

Stdout: 
agraf commented 2 years ago

Try to give it 3GB instead of 4GB. Or use macos >= 12.4 and drop highmem=off and give it as much memory as you like.

ppggff commented 2 years ago

I am getting this issue myself. Any idea how to fix it at all? I have an M1 Mac with 16GB of RAM. Man I wish it was easier to use VMs on this thing...

Command: ["qemu-system-aarch64", "-machine", "virt,accel=hvf,highmem=off", "-cpu", "cortex-a72", "-smp", "2", "-m", "4G", "-device", "virtio-net-device,netdev=net0", "-netdev", "user,id=net0,hostfwd=tcp::50022-:22", "-drive", "if=virtio,format=qcow2,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/linked-box.img", "-drive", "if=pflash,format=raw,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/edk2-aarch64-code.fd,readonly=on", "-drive", "if=pflash,format=raw,file=/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/edk2-arm-vars.fd", "-chardev", "socket,id=mon0,path=/Users/adminuser/.vagrant.d/tmp/vagrant-qemu/6CR3QwtQWCI/qemu_socket,server=on,wait=off", "-mon", "chardev=mon0,mode=readline", "-chardev", "socket,id=ser0,path=/Users/adminuser/.vagrant.d/tmp/vagrant-qemu/6CR3QwtQWCI/qemu_socket_serial,server=on,wait=off", "-serial", "chardev:ser0", "-pidfile", "/Users/adminuser/Documents/nc/vagrant/.vagrant/machines/default/qemu/6CR3QwtQWCI/qemu.pid", "-parallel", "null", "-monitor", "none", "-display", "none", "-vga", "none", "-daemonize", {:notify=>[:stdout, :stderr, :stdin]}]

Stderr: qemu-system-aarch64: Addressing limited to 32 bits, but memory exceeds it by 1073741824 bytes

Stdout: 

@825i Please try if following config work?

config.vm.provider "qemu" do |qe|
    qe.memory = "4G"
    qe.machine = "virt,accel=hvf,highmem=on"
    qe.cpu = "host"
end