[Support] SpaceinvaderOne - Macinabox


Recommended Posts

Hey all, 

 

I had a perfectly fine, functioning Big Sur install running directly on a passed through NVME with RX 580 passed through. I was mucking around with trying to upgrade my cache drive (didn't actually finish because it wasn't working for me), restored everything back to their cache locations. My three other VMs are working just fine (windows, arch, hassio) but Big Sur is now kicking back a "operation failed: unable to find any master var store for loader: /mnt/user/system/custom_ovmf/Macinabox_CODE-pure-efi.fd" error.

 

I've confirmed both the CORE and VARS efis are in the proper location. I also tried downloading them from the SIO github and replacing them to make sure they weren't corrupt. Still no dice. For what it's worth, I've searched for the nvram efi associated with the UUID of the VM and I can't find it anywhere on the machine. Is that the source of my problem? Should I create a new VM to create a new UUID and NVRAM and then just port over my existing working xml? Any ideas?

 

EDIT SOLVED

 

I answered my own question....it was the missing machine nvram. Once I had some time to tinker, I recreated the VM, brought over all my custom XML and poof it's working. I'm starting to get a hang of this.

Edited by vigs
Link to comment

Installed this today. Works perfectly using VNC, but I get no display output when I attempt to pass through my RX480. The GPU is confirmed good with my other Ubuntu VM. Any ideas? 

*EDIT* Further Info.

I get the following errors when starting my VM...
 

Sep  3 15:13:47 Gandalf kernel: DMAR: VT-d detected Invalidation Completion Error: SID 0
Sep  3 15:13:47 Gandalf kernel: DMAR: QI HEAD: IOTLB Invalidation qw0 = 0x200f2, qw1 = 0xdc0000e
Sep  3 15:13:47 Gandalf kernel: DMAR: QI PRIOR: Invalidation Wait qw0 = 0x200000025, qw1 = 0x1001114dc
Sep  3 15:13:47 Gandalf kernel: DMAR: Invalidation Completion Error (ICE) cleared


But I also get them on my Ubuntu VM and it subsequently boots up fine.

I have also tried to dump the vBios, which fails and gives this error...
 

Sep  3 15:18:52 Gandalf kernel: vfio-pci 0000:04:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff


XML...

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>BigSur</name>
  <uuid>*****</uuid>
  <description>MacOS Big Sur</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="Apple_vintage_trans.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>16777216</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='12'/>
    <vcpupin vcpu='1' cpuset='28'/>
    <vcpupin vcpu='2' cpuset='13'/>
    <vcpupin vcpu='3' cpuset='29'/>
    <vcpupin vcpu='4' cpuset='14'/>
    <vcpupin vcpu='5' cpuset='30'/>
    <vcpupin vcpu='6' cpuset='15'/>
    <vcpupin vcpu='7' cpuset='31'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-6.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/system/custom_ovmf/Macinabox_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/*****_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='4' threads='2'/>
    <cache mode='passthrough'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/mnt/user/vDisks/Macinabox BigSur/macos_disk.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0xa'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0xc'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0x8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='6' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='6' port='0xb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
    </controller>
    <controller type='pci' index='7' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:e0:a3:b7'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <audio id='1' type='none'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x84' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-usb'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd,bus=usb-bus.0'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='************************'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,+rdrand,check'/>
  </qemu:commandline>
</domain>

 

Edited by NeoDude
Link to comment

I searched this thread but I don't think I found anything related. I am running Unraid - latest and BigSur in vm. After a fresh start everything seems to work fine. I do not connect back for extended periods of time like a week.

 

When I connect after a week using VNC from unraid, or the separate VNC Viewer, my keyboard will not allow me to type my password. I can move my mouse, hit the Cancel X which refreshes the screen, but no keyboard entry.

 

I am running the VNC clients from a macbook pro if that makes a difference.

 

If I force a restart of the VM, the keyboard will work again. 

Link to comment

I installed Big Sur, it worked just fine on the first launch after installing, but I shut down the VM to pin a few more cores and increase the memory allocation and now when I boot back into the VM, the boot options window is shifted off to the right and I can only see one option on the display (using both TianoCore and VNC Viewer). I selected Macintosh HD as my boot device because I know it's still the second option in the row, but when I do that, it brings me to an apple logo with no loading bar and hangs indefinitely. Tried reducing it back to 2 cores and 4gb of memory, as it was originally, but I get the same result. Any idea what could be happening?

 

Edit: I suspect that it's an issue with QXL, when I change the drivers to Cirrus I can actually see all of the boot options, but it still hangs on the Apple logo.

 

Edit 2: Resolved my own issue! I did not realize that modifying the VM using the template editor would break things. I replaced the modified XML with the original XML and that fixed it.

 

Screenshot 2022-09-13 202713.png

Edited by ellesper
Link to comment

Hi everyone,

 

I am now fighting 2 days with this script and didn't managed to get any of the macos versions running. Everytime after the first reboot I get back to the first screen with reinstall or format the disk. My disk is not showing up only the macosbase disk.


What I am missing here? Followed also the latest spaceinvaderone video about this but same issue.

Link to comment

Hi,

 

Has anyone else had issues getting Monterey Installer to run on an AMD Ryzen?

 

Have successfully installed BigSur and older versions without issue but as soon as try installing Monterey can’t even get installer to run. Gets caught in boot loop. Driving me crazy I can’t work it out.

 

Any help would be greatly appreciated 🤔

Edited by Rutj87
Typo
Link to comment
On 9/19/2022 at 8:11 AM, PsYcRo said:

Hi everyone,

 

I am now fighting 2 days with this script and didn't managed to get any of the macos versions running. Everytime after the first reboot I get back to the first screen with reinstall or format the disk. My disk is not showing up only the macosbase disk.


What I am missing here? Followed also the latest spaceinvaderone video about this but same issue.

 

It has to restart a few times to complete the installation. Select the "Install macOS" option 2 or 3 times and then you should get the option to boot into the OS.

Link to comment

Hey all, first of all thank you so much for the incredible community here - I've learned so much. I have a problem I've been spending hours and hours with and figured it might finally be time for a forum post to see if anyone else is seeing this issue with Macinabox and Monterey. 

 

My Unraid server is running a Xeon E3-1230 v2, and I have a very stable Catalina VM with an Nvidia GT 710 passed through. 

I decided I'd try a Monterey VM -- not upgrading, but doing an entirely new VM. Installation was totally fine. The VM works completely normally until I try to pass through the GT 710. When I do that and fix the XML, I end up with these errors in the log while one thread of my CPU pegs at 100% utilization:

 

2022-09-26T03:00:01.928280Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.fma [bit 12]
2022-09-26T03:00:01.928334Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi1 [bit 3]
2022-09-26T03:00:01.928340Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.avx2 [bit 5]
2022-09-26T03:00:01.928346Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi2 [bit 8]
2022-09-26T03:00:01.928353Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.fma4 [bit 16]
2022-09-26T03:00:01.929543Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.fma [bit 12]
2022-09-26T03:00:01.929555Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi1 [bit 3]
2022-09-26T03:00:01.929559Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.avx2 [bit 5]
2022-09-26T03:00:01.929562Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi2 [bit 8]
2022-09-26T03:00:01.929565Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.fma4 [bit 16]
2022-09-26T03:00:01.930381Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.fma [bit 12]
2022-09-26T03:00:01.930397Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi1 [bit 3]
2022-09-26T03:00:01.930404Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.avx2 [bit 5]
2022-09-26T03:00:01.930410Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi2 [bit 8]
2022-09-26T03:00:01.930416Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.fma4 [bit 16]
2022-09-26T03:00:01.931230Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.fma [bit 12]
2022-09-26T03:00:01.931242Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi1 [bit 3]
2022-09-26T03:00:01.931245Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.avx2 [bit 5]
2022-09-26T03:00:01.931248Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.07H:EBX.bmi2 [bit 8]
2022-09-26T03:00:01.931252Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.80000001H:ECX.fma4 [bit 16]

 

So, then I tried using both VNC and passthrough graphics, and that boots well (the errors above still show, but it ignores them this time). I could view VNC graphics and macOS was detecting the card in System Profiler but not directing any output there. 

With the VM booted in this mode, I ran the post-install root patch from OCLP and upon reboot, presto! Display output from the 710, with macOS essentially outputting to "two" displays - VNC and the GPU. But once again, when I shut it back down and removed the VNC graphics from the XML, the boot would hang and peg that lonely CPU core again.

 

I'm reading that Monterey dropped support for Kepler cards like mine, but this feels like something else is going on -- namely the QEMU complaints that my CPU doesn't support FMA, AVX2, BMI, etc. I didn't think that would be an issue, but is it the case that maybe my CPU is just a bit too old to be messing with Monterey? I notice distinctly fewer QEMU CPU args are passed to my stable Catalina VM, so I tried removing some of the Monterey `-cpu` args. The errors go away, and it looks like a normal boot from the log, but single CPU core once again pegs and there is no display output. BUT it seems like if it were an issue with CPU functionality then I'd also be having trouble with VNC. It seems like plenty of people are running Monterey on Sandy Bridge / Ivy Bridge CPUs like mine, but maybe they're messing deeper with OC patches than I am.

 

I'm attaching my current XML - the working version with both VNC and GPU pass - as well as the version that hangs when I remove the VNC graphics.

 

Any new directions I should be exploring here or should I live with Catalina until a hardware upgrade? 

 

Thanks in advance for any help you can be. 

NOTWORKING-pass-only.xml WORKING-vnc+pass.xml

Link to comment
42 minutes ago, wintervaler said:

decided I'd try a Monterey

Monterey has no nvidia drivers, that's why it doesn't work. Either you break the volume seal and inject nvidia drivers or you need to switch to a compatible gpu, check dortania guides for this.

As far as the errors they are not errors but warnings, you are trying to pass cpu features that your physical cpu doesn't have: they simply are ignored, logging the warnings.

Link to comment
1 hour ago, ghost82 said:

Monterey has no nvidia drivers, that's why it doesn't work. Either you break the volume seal and inject nvidia drivers or you need to switch to a compatible gpu, check dortania guides for this.

As far as the errors they are not errors but warnings, you are trying to pass cpu features that your physical cpu doesn't have: they simply are ignored, logging the warnings.

 

Thanks very much for taking a look. I understand that Monterey doesn't support the card, hence my use of OCLP to patch it. System report picks up the GPU just fine, I get display output, and acceleration is enabled. But only when I also have VNC graphics setup. Doesn't boot otherwise, just hangs with the CPU core pegged and no activity.

 

So unless I'm misunderstanding, I think I took the steps to solve the problem you're suggesting and in fact something else is going on? But I might be off base there.

Link to comment
11 hours ago, wintervaler said:

Sure, thanks. Attached.

As far as libvirt, everything seems good: I think the issue is with oclp causing issues with a dual gpu setup (vnc and dgpu), or patching something else. Is your SIP value correct in the opencore config.plist (you need to disable authenticated root)?

You can try the following, one or the other:

1. Try boot arg:

amfi_get_out_of_my_way=1

This in the config.plist of opencore

2. Reinstall mac os monterey with nvidia only (remove the vnc section before booting the installer): you should be able to boot with graphic output on your monitor but without acceleration, then don't use oclp but the geforce kepler patcher, so to be sure to add only the kepler drivers and to not patch anything other:

https://github.com/chris1111/Geforce-Kepler-patcher

You will need to change the SIP value to be able to patch root volume, the app will tell you what to do.

Edited by ghost82
Link to comment
17 hours ago, ghost82 said:

As far as libvirt, everything seems good: I think the issue is with oclp causing issues with a dual gpu setup (vnc and dgpu), or patching something else. Is your SIP value correct in the opencore config.plist (you need to disable authenticated root)?

You can try the following, one or the other:

1. Try boot arg:

amfi_get_out_of_my_way=1

This in the config.plist of opencore

2. Reinstall mac os monterey with nvidia only (remove the vnc section before booting the installer): you should be able to boot with graphic output on your monitor but without acceleration, then don't use oclp but the geforce kepler patcher, so to be sure to add only the kepler drivers and to not patch anything other:

https://github.com/chris1111/Geforce-Kepler-patcher

You will need to change the SIP value to be able to patch root volume, the app will tell you what to do.

 

Thank you very much for the suggestions. Unfortunately, still no dice. 

 

I went the reinstall route - I had messed up something in OCLP anyway and figured I'd start from scratch. But when I try to pass the GPU without VNC even before the first boot/install, I still get no display output and a pegged CPU core. 

 

Do you think there is something in my OC config.plist I should be changing before booting for the first time? It occurs to me that my working VM with this card -- Catalina -- was created when Macinabox was still using Clover, not OpenCore. Should that give any clues as to what might be missing for the initial boot? 

 

Should I try the boot arg you reference above in the pre-install stage or was that only if I had the OS up and running with VNC already?

Link to comment

I got the installation working with Monterey

 

Setup up the hide picker in the plist file, so the VM is booting and functionning without any issue with VNC.

 

As I wanted to get maps working, I read that I need to have a Graphic Card passed through.

 

I passed my 1050ti , with its ROM. the setup is working like a charm on Windos, but for the MAC VM I get a black Screen.

 

Even Worse, when I remove the card, I cannot roll back. I need to put a saved xml ( before adding the card) to get the VM working again.

 

any Clue ?

Link to comment
1 hour ago, ghost82 said:

1050ti is not supported in monterey (max supported os is high sierra with nvidia webdrivers). When you revert back make sure the virtual gpu is on bus 0, slot 2, function 0 and the xml is "mac os compatible".

Does this ;ean that with high sierra it works out of the box ? or do I need to manually install drivers ?

Link to comment
1 minute ago, chocorem said:

that is the issue, as soon as I pass the GPU though, I get a black screen .... os is not loading. i tired it with the ROM Bios or without

worked fine here when i was playing with macos HS and a GT1030 and 1050, but i dropped macos here ;)

 

and you also run the helper script when you changed something in the VM setup ?

(was always needed while i was using macos VM)

Link to comment
40 minutes ago, alturismo said:

worked fine here when i was playing with macos HS and a GT1030 and 1050, but i dropped macos here ;)

 

and you also run the helper script when you changed something in the VM setup ?

(was always needed while i was using macos VM)

yes of course ... ran the script,

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.