** Hackintosh ** Tips to make a bare metal MacOS


Recommended Posts

I have my kernel boot parameter set like this

 

append  pcie_acs_override=downstream,multifunction pcie_aspm=off kvm.ignore_msrs=1 vfio-pci.ids=1002:67df,1002:aaf0,1b21:1242,1b21:1343,8086:10bc initrd=/bzroot

The vfio devices that start with 1002 is my GPU. I have a main NVIDIA GPU i use for transcoding so i do not need to dump the bios for it to work. And ACS override is enable with some extra parameters. 

Link to comment
42 minutes ago, david279 said:

I have my kernel boot parameter set like this

 


append  pcie_acs_override=downstream,multifunction pcie_aspm=off kvm.ignore_msrs=1 vfio-pci.ids=1002:67df,1002:aaf0,1b21:1242,1b21:1343,8086:10bc initrd=/bzroot

The vfio devices that start with 1002 is my GPU. I have a main NVIDIA GPU i use for transcoding so i do not need to dump the bios for it to work. And ACS override is enable with some extra parameters. 

I added the missing parameters except for the VFIO ID's as they are in a separate config file now and manged separately. I can see the devices are assigned to VFIO directly.

 

I'm still getting a blank screen on OSX but it does seem to have improved the reset bug. I was able to start and stop VM's 2-3 times before I got the reset error.

 

Did you install OSX first via VNC and then add the graphics card? What EFI are you using? did you customize at all?

Link to comment

I always start my Mac OS VMs using VNC then i add a second Mac OS VM using the GPU. That way i can go back and forth and test things. I use a efi thats somewhat based on some of the info gathered here but i do all the updating myself. Reading the differences files and making the changes as updates are released. I'm on Big Sur right now using my RX 570, motherboard audio and i have a wifi card passedthrough.

 

 

Link to comment
48 minutes ago, david279 said:

I always start my Mac OS VMs using VNC then i add a second Mac OS VM using the GPU. That way i can go back and forth and test things. I use a efi thats somewhat based on some of the info gathered here but i do all the updating myself. Reading the differences files and making the changes as updates are released. I'm on Big Sur right now using my RX 570, motherboard audio and i have a wifi card passedthrough.

 

 

OK, so you installed first via VNC and then swapped over to GPU pass through. When you did the swap over did you remove completely the <graphics> and <video> sections or did you keep them and add the GPU (and then only remove once GPU is detected?). I'll try as fresh install based on your answer.

Link to comment
18 hours ago, david279 said:

I keep different VM templates for the same VMs. So i have a Big Sir VM that uses VNC and GPU but they share the same vdisk. 

 

image.thumb.png.23adcf973285d17c2e7ec61ae7fe1f80.png

I followed your lead on this on this and created separate VNC and GPU profiles. Unfortunately, it doesn't matter what I do, I can't get past the blank screen.

 

What I notice is that the cpu for one core spikes to 100% and just hangs there, whereas when I load the Linux VM, it momentarily spikes one core to 100% before balancing out the load. Whatever is failing, it seems very early in the initialization. I don't think it's system/Unraid related as there are no error messages (or at least it is no different to when Linux boots):

 

dmesg:

[81053.321896] vfio-pci 0000:08:00.0: vfio_ecap_init: hiding ecap 0x19@0x270
[81053.321908] vfio-pci 0000:08:00.0: vfio_ecap_init: hiding ecap 0x1b@0x2d0
[81053.321917] vfio-pci 0000:08:00.0: vfio_ecap_init: hiding ecap 0x1e@0x370
[81055.462618] vfio-pci 0000:08:00.0: No more image in the PCI ROM
[81055.462633] vfio-pci 0000:08:00.0: No more image in the PCI ROM

VFIO logs:

 


-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pcie.0,addr=0x7.0x2 \
-device virtio-serial-pci,id=virtio-serial0,bus=pci.3,addr=0x0 \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/OSX Catalina/vdisk1.img","node-name":"libvirt-3-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-3-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-3-storage"}' \
-device ide-hd,bus=ide.2,drive=libvirt-3-format,id=sata0-0-2,write-cache=on \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/OSX Catalina/BaseSystem.img","aio":"threads","node-name":"libvirt-2-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-2-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-2-storage"}' \
-device ide-hd,bus=ide.3,drive=libvirt-2-format,id=sata0-0-3,write-cache=on \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/OSX Catalina/OpenCore.qcow2","node-name":"libvirt-1-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"qcow2","file":"libvirt-1-storage","backing":null}' \
-device ide-hd,bus=ide.4,drive=libvirt-1-format,id=sata0-0-4,bootindex=1,write-cache=on \
-netdev tap,fd=33,id=hostnet0 \
-device e1000-82545em,netdev=hostnet0,id=net0,mac=52:54:00:d1:b3:f7,bus=pci.2,addr=0x1 \
-chardev pty,id=charserial0 \
-device isa-serial,chardev=charserial0,id=serial0 \
-chardev socket,id=charchannel0,fd=34,server,nowait \
-device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \
-device usb-kbd,id=input2,bus=usb.0,port=3 \
-device vfio-pci,host=0000:08:00.0,id=hostdev0,bus=pci.5,multifunction=on,addr=0x0 \
-device vfio-pci,host=0000:08:00.1,id=hostdev1,bus=pci.5,addr=0x0.0x1 \
-device usb-host,hostbus=1,hostaddr=4,id=hostdev2,bus=usb.0,port=1 \
-device '************************' \
-smbios type=2 \
-cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
2020-09-15 07:47:36.103+0000: Domain id=13 is tainted: high-privileges
2020-09-15 07:47:36.103+0000: Domain id=13 is tainted: custom-argv
2020-09-15 07:47:36.103+0000: Domain id=13 is tainted: host-cpu
char device redirected to /dev/pts/1 (label charserial0)
2020-09-15T07:47:36.158860Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.160059Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.160903Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.161579Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.162237Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.162895Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.163566Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T07:47:36.164567Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]

 

My full XML is:

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>OSX Catalina (GPU)</name>
  <uuid>380041f8-9e2e-542b-937f-7d5a0537823e</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='0'/>
    <vcpupin vcpu='1' cpuset='6'/>
    <vcpupin vcpu='2' cpuset='1'/>
    <vcpupin vcpu='3' cpuset='7'/>
    <vcpupin vcpu='4' cpuset='2'/>
    <vcpupin vcpu='5' cpuset='8'/>
    <vcpupin vcpu='6' cpuset='4'/>
    <vcpupin vcpu='7' cpuset='10'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/380041f8-9e2e-542b-937f-7d5a0537823e_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <cache mode='passthrough'/>
    <feature policy='require' name='topoext'/>
  </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='raw' cache='writeback'/>
      <source file='/mnt/user/domains/OSX Catalina/vdisk1.img'/>
      <target dev='hdc' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback' io='threads'/>
      <source file='/mnt/user/domains/OSX Catalina/BaseSystem.img'/>
      <target dev='hdd' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/mnt/user/domains/OSX Catalina/OpenCore.qcow2'/>
      <target dev='hde' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='4'/>
    </disk>
    <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>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <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='0x8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0xa'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0xb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
    </controller>
    <controller type='pci' index='6' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='6' port='0xc'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:d1:b3:f7'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' 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='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <input type='keyboard' bus='usb'>
      <address type='usb' bus='0' port='3'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x08' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x1'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x046d'/>
        <product id='0xc534'/>
      </source>
      <address type='usb' bus='0' port='1'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <qemu:commandline>
    <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,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check'/>
  </qemu:commandline>
</domain>

 

I started looking into OpenCore and it seems that the important kexts are Whatevergreen, Lilu and AppleALC, all of which are included and enabled in Leoyzen's repository version. I'm not sure what to try or where to go from here.

 

 

 

Link to comment
1 hour ago, paulmorabi said:

<cpu mode='host-passthrough' check='none'> <cache mode='passthrough'/> <feature policy='require' name='topoext'/> </cpu>

Not sure how qemu behaves with host-passthrough in libvirt and Penryn in qemu as a custom arg.

The hang suggests something related to the cpu.

If I remember well you have amd, so you need custom patches to boot with host-passthrough.

Try to delete the cpu section in libvirt xml, leave only the Penryn qemu arg, pass your gpu and try; if it works your issue is related to custom patches.

Link to comment

This is how my xml looks. I have a ryzen 2700x just to let you know.

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='11' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Big Sur Dev GPU</name>
  <uuid>666</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="BigSurCritter.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='12'/>
    <vcpupin vcpu='2' cpuset='5'/>
    <vcpupin vcpu='3' cpuset='13'/>
    <vcpupin vcpu='4' cpuset='6'/>
    <vcpupin vcpu='5' cpuset='14'/>
    <vcpupin vcpu='6' cpuset='7'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-5.0'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/666_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'/>
  <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='none'/>
      <source file='/mnt/cache/domains/Big Sur/opencore.bigsurv0611.qcow2' index='2'/>
      <backingStore/>
      <target dev='hdc' bus='usb'/>
      <boot order='1'/>
      <alias name='usb-disk2'/>
      <address type='usb' bus='0' port='1'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none' io='native' discard='unmap'/>
      <source file='/mnt/disks/MKNSSDRE500GB_MK170901100386B42/Hackintosh/Sir.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x8'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x9'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0xa'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0xb'/>
      <alias name='pci.5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
    </controller>
    <controller type='pci' index='6' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='6' port='0xc'/>
      <alias name='pci.6'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
    </controller>
    <controller type='pci' index='7' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='7' port='0xd'/>
      <alias name='pci.7'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x5'/>
    </controller>
    <controller type='pci' index='8' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='8' port='0xe'/>
      <alias name='pci.8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x6'/>
    </controller>
    <controller type='pci' index='9' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='9' port='0xf'/>
      <alias name='pci.9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x7'/>
    </controller>
    <controller type='pci' index='10' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='10' port='0x10'/>
      <alias name='pci.10'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:b9:78:55'/>
      <source bridge='br0'/>
      <target dev='vnet1'/>
      <model type='e1000-82545em'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/1'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/1'>
      <source path='/dev/pts/1'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-11-Big Sur Dev GPU/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'>
      <alias name='input0'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input1'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0a' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0a' slot='0x00' function='0x1'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x1'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev2'/>
      <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev3'/>
      <address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0c' slot='0x00' function='0x3'/>
      </source>
      <alias name='hostdev5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
  <qemu:commandline>
    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-3.rotation_rate=1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=Ilikecandy'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Skylake-Client,vendor=GenuineIntel,+hypervisor,-erms,-pcid,-hle,-invpcid,-rtm,kvm=on,+topoext,+svm,+invtsc,+fma,+mmxext,+avx,+avx2,+aes,+xsave,+xsaveopt,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2,+arat,+abm,+3dnowprefetch,+adx,+clflushopt,+cr8legacy,+fsgsbase,+fxsr_opt,+misalignsse,+movbe,+osvw,+pclmuldq,+pdpe1gb,+rdrand,+rdseed,+rdtscp,+sha-ni,+smap,+smep,+vme,+xgetbv1,+xsavec,+perfctr-core,check'/>
  </qemu:commandline>
</domain>

 

Link to comment
1 hour ago, ghost82 said:

Not sure how qemu behaves with host-passthrough in libvirt and Penryn in qemu as a custom arg.

The hang suggests something related to the cpu.

If I remember well you have amd, so you need custom patches to boot with host-passthrough.

Try to delete the cpu section in libvirt xml, leave only the Penryn qemu arg, pass your gpu and try; if it works your issue is related to custom patches.

 

I tried this and got the same result. I'm also not sure its CPU or only CPU because the exact same config but with VNC works fine.

Link to comment
55 minutes ago, david279 said:

This is how my xml looks. I have a ryzen 2700x just to let you know.

 


<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='11' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Big Sur Dev GPU</name>
  <uuid>666</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="BigSurCritter.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='12'/>
    <vcpupin vcpu='2' cpuset='5'/>
    <vcpupin vcpu='3' cpuset='13'/>
    <vcpupin vcpu='4' cpuset='6'/>
    <vcpupin vcpu='5' cpuset='14'/>
    <vcpupin vcpu='6' cpuset='7'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-5.0'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/666_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'/>
  <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='none'/>
      <source file='/mnt/cache/domains/Big Sur/opencore.bigsurv0611.qcow2' index='2'/>
      <backingStore/>
      <target dev='hdc' bus='usb'/>
      <boot order='1'/>
      <alias name='usb-disk2'/>
      <address type='usb' bus='0' port='1'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none' io='native' discard='unmap'/>
      <source file='/mnt/disks/MKNSSDRE500GB_MK170901100386B42/Hackintosh/Sir.img' index='1'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <alias name='sata0-0-3'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x8'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x9'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0xa'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0xb'/>
      <alias name='pci.5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
    </controller>
    <controller type='pci' index='6' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='6' port='0xc'/>
      <alias name='pci.6'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
    </controller>
    <controller type='pci' index='7' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='7' port='0xd'/>
      <alias name='pci.7'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x5'/>
    </controller>
    <controller type='pci' index='8' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='8' port='0xe'/>
      <alias name='pci.8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x6'/>
    </controller>
    <controller type='pci' index='9' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='9' port='0xf'/>
      <alias name='pci.9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x7'/>
    </controller>
    <controller type='pci' index='10' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='10' port='0x10'/>
      <alias name='pci.10'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:b9:78:55'/>
      <source bridge='br0'/>
      <target dev='vnet1'/>
      <model type='e1000-82545em'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/1'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/1'>
      <source path='/dev/pts/1'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-11-Big Sur Dev GPU/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'>
      <alias name='input0'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input1'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0a' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0a' slot='0x00' function='0x1'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x1'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev2'/>
      <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev3'/>
      <address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x0c' slot='0x00' function='0x3'/>
      </source>
      <alias name='hostdev5'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
  <qemu:commandline>
    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-3.rotation_rate=1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='isa-applesmc,osk=Ilikecandy'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Skylake-Client,vendor=GenuineIntel,+hypervisor,-erms,-pcid,-hle,-invpcid,-rtm,kvm=on,+topoext,+svm,+invtsc,+fma,+mmxext,+avx,+avx2,+aes,+xsave,+xsaveopt,+ssse3,+sse4_2,+popcnt,+sse4a,+bmi1,+bmi2,+arat,+abm,+3dnowprefetch,+adx,+clflushopt,+cr8legacy,+fsgsbase,+fxsr_opt,+misalignsse,+movbe,+osvw,+pclmuldq,+pdpe1gb,+rdrand,+rdseed,+rdtscp,+sha-ni,+smap,+smep,+vme,+xgetbv1,+xsavec,+perfctr-core,check'/>
  </qemu:commandline>
</domain>

Thanks for this. Our configs look quite similar. I tried to change the cpu flags to yours and still also got a blank screen. I notice you are also not loading a video BIOS. This is the next thing I will try but I am not sure it's going to work because the GPU is not throwing any errors. Is your GPU an AMD?

 

Link to comment

hello, I am running unraid 6.8.3 and got the macinabox comunity container to deploy a catalina latest version vm

 

The thing is that I cant seem to be able to passthroug the 5700xt, I got it working with windows and linux, but I think Im missing some configs in the config.plist because when ever I passthrough the card I get the small apple logo way up in the monitor and got stuck in the loading bar.

 

my xml for passthrough is this

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='1' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacinaboxCatalina</name>
  <uuid>XXXXXXXXXXXXXXXXXXXXX5</uuid>
  <description>MacOS Catalina</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="MacOS" icon="/mnt/user/domains/MacinaboxCatalina/icon/catalina.png" os="Catalina"/>
  </metadata>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>16777216</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>12</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='1'/>
    <vcpupin vcpu='1' cpuset='25'/>
    <vcpupin vcpu='2' cpuset='14'/>
    <vcpupin vcpu='3' cpuset='38'/>
    <vcpupin vcpu='4' cpuset='16'/>
    <vcpupin vcpu='5' cpuset='40'/>
    <vcpupin vcpu='6' cpuset='18'/>
    <vcpupin vcpu='7' cpuset='42'/>
    <vcpupin vcpu='8' cpuset='20'/>
    <vcpupin vcpu='9' cpuset='44'/>
    <vcpupin vcpu='10' cpuset='22'/>
    <vcpupin vcpu='11' cpuset='46'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-3.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/XXXXXXXXXXXXXXXXXXXXXXXXXXXX-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <cache mode='passthrough'/>
    <feature policy='require' name='topoext'/>
  </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='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/macos_disk.img' index='1'/>
      <backingStore/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-2'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x10'/>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <alias name='pci.3'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <alias name='pci.4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <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'>
      <alias name='usb'/>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <alias name='usb'/>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='XXXXXXXX'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='e1000-82545em'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-MacinaboxCatalina/org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x23' slot='0x00' function='0x0'/>
      </source>
      <alias name='hostdev0'/>
      <rom file='/mnt/user/isos/Sapphire.RX5700XT.8192.190722_2.rom'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x23' slot='0x00' function='0x1'/>
      </source>
      <alias name='hostdev1'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x1'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x046d'/>
        <product id='0xc539'/>
        <address bus='3' device='2'/>
      </source>
      <alias name='hostdev2'/>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x2516'/>
        <product id='0x0087'/>
        <address bus='5' device='5'/>
      </source>
      <alias name='hostdev3'/>
      <address type='usb' bus='0' port='3'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+0:+100</label>
    <imagelabel>+0:+100</imagelabel>
  </seclabel>
  <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,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check'/>
  </qemu:commandline>
</domain>

 

 

the log

 

-device virtio-serial-pci,id=virtio-serial0,bus=pci.2,addr=0x0 \
-blockdev '{"driver":"file","filename":"/mnt/user/domains/MacinaboxCatalina/macos_disk.img","node-name":"libvirt-1-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-1-storage"}' \
-device ide-hd,bus=ide.4,drive=libvirt-1-format,id=sata0-0-4,bootindex=1,write-cache=on \
-netdev tap,fd=35,id=hostnet0 \
-device e1000-82545em,netdev=hostnet0,id=net0,mac=52:54:00:13:d3:e8,bus=pci.1,addr=0x0 \
-chardev pty,id=charserial0 \
-device isa-serial,chardev=charserial0,id=serial0 \
-chardev socket,id=charchannel0,fd=36,server,nowait \
-device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-vnc 0.0.0.0:0,websocket=5700 \
-k en-us \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1 \
-device virtio-balloon-pci,id=balloon0,bus=pci.3,addr=0x0 \
-usb \
-device usb-kbd,bus=usb-bus.0 \
-device '************************' \
-smbios type=2 \
-cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \
-msg timestamp=on
2020-09-15 15:29:29.954+0000: Domain id=2 is tainted: high-privileges
2020-09-15 15:29:29.954+0000: Domain id=2 is tainted: custom-argv
2020-09-15 15:29:29.954+0000: Domain id=2 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)
2020-09-15T15:29:29.983495Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.985329Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.985963Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.986586Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.987201Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.987811Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.988430Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.989037Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.989663Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.990422Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.991019Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
2020-09-15T15:29:29.991610Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:ECX.pcid [bit 17]
usb_desc_get_descriptor: 1 unknown type 33 (len 10)
usb_desc_get_descriptor: 1 unknown type 33 (len 10)

 

 

thanks in advance

Edited by mSedek
Link to comment
15 hours ago, ghost82 said:

From where did you get the vbios?I hope not from techpowerup....

However there's no trace of loading vbios in your latest post.

 

I finally got it working. SUCCESS!!

 

I downloaded a copy of Hiren's recovery disk and flashed to a USB. This boots into Windows and includes GPU-Z. I ripped the BIOS from here and added to the VM config. Gone are the errors in dmesg and libvirt and there is thus far, no indication of the reset issue also. Most importantly, OSX is working fine with the RX570 (graphics and sound).

 

@david279 & @ghost82 sincerely, thank you so much for all of your help. I'm going to start looking into tweaking open core now!

 

Link to comment
13 hours ago, mSedek said:

but I think Im missing some configs in the config.plist

There should really be nothing to do in the config.plist about the gpu: all you have to do is to inject lilu and whatevergreen kexts.

I cannot help more about your specific gpu, it should work, apart maybe the reset bug, what you could do is update your bootloader and kexts and if it doesn't work switch to opencore and if it doesn't work provide the bootloader logs.

Link to comment
13 minutes ago, ghost82 said:

There should really be nothing to do in the config.plist about the gpu: all you have to do is to inject lilu and whatevergreen kexts.

I cannot help more about your specific gpu, it should work, apart maybe the reset bug, what you could do is update your bootloader and kexts and if it doesn't work switch to opencore and if it doesn't work provide the bootloader logs.

 

@mSedek I had a similar issue to you, albeit with the RX570. The error messages were the same but symptoms a little different. Did you rip your own vbios or get it from TechPowerUp? Based on the filename, it looks like you downloaded it? If you did, I really recommend dumping your card's own vbios and trying with that. It fixed the reset issue and OSX for me.

Link to comment

Hi Guys,

 

I'm tinkering around since several Days with Macinabox and Unraid. Since everyone recommends Open Core instead of Clover, i tr yd to Switch to it.

 

I've been reading so many tutorials and created my own EFI based on Open Core 0.6.1. For my Ryzen System... damn that was a huge load of input. Even created custom Mount Scripts with the Add-on "User Scripts" based on 

ghost82. Thanks Dude !

This makes everything so much easier.

 

My Configuration:

- CPU: AMD Ryzen 9 3950X
- Motherboard: ASUS ROG Crosshair VIII Hero
- GPU: Currently VNC only, adding RX 550 this weekend.
- RAM: 2*16GB 3200MHz Crucial
- SSD: 1TB Samsung 970 NVME

- HDD: Several 4 TB HDD's

 

Side Note:

SetupVirtualMap = Yes but should normally be No (Sanity Checker said change this but didn't help, so i changed it back to Yes)

npci=0x2000 -> added this because my Mainboard has no option for Above 4G decoding

CSM, Secure Boot, fast boot is disabled in my Bios. Everything runs via UEFI.

GPU-Passtrough on my Windows VM is working perfectly fine, even with UEFI.

Disabled Audio Interface and Realtek NIC in my BIOS, because I don't need it.

MacinaboxCatalina installs and runs fine with stock Clover EFI and my custom VM-Settings. But I want to try Open Core because it seems more future proof.

 

Now I'm stuck at here ->

Removed MacinaboxCatalina and macinabox docker completly.

Downloaded macinabox docker and triggered the pre-reinstallation of MacinaboxCatalina.

Stopped the Array so the MacinaboxCatalina VM Appeared.

Now before starting the VM i copied/cloned the Clover.qcow2 and renamed it to opencore.qcow2

Mounted and cleared anything inside the opencore.qcow2

Created an Open Core 0.6.1 EFI with help of several Guides and the Video below

Downloaded the latest edk2-OVMF 202008 stable from here ->

 

 

Pointed the MacinaboxCatalina VM manually to the new qcow2/OVMF files without changing the custom code any further.

Started the VM and got stuck during boot of the installation.

 

Can someone check out my EFI and my Errorlog, im really running out of options at this point...

 

 

 

 

 

opencore0.6.1ryzen.zip Errorlog.zip

Edited by T-Birth
Link to comment
17 hours ago, paulmorabi said:

 

I finally got it working. SUCCESS!!

 

I downloaded a copy of Hiren's recovery disk and flashed to a USB. This boots into Windows and includes GPU-Z. I ripped the BIOS from here and added to the VM config. Gone are the errors in dmesg and libvirt and there is thus far, no indication of the reset issue also. Most importantly, OSX is working fine with the RX570 (graphics and sound).

 

@david279 & @ghost82 sincerely, thank you so much for all of your help. I'm going to start looking into tweaking open core now!

 

could you post your EFI folder or at least your config.plist? i have manage to change to opencore and and run perfectly from vnc but when passing through my 5700xt it start booting up good and at half bar it goes BSOD

 

i got the agdpmod=pikera in the config.plist args.. but is the only one.. 

 

 

ok ill inject the lilu and get my own bios.. did donwload from techpowerup

Edited by mSedek
Link to comment
9 hours ago, T-Birth said:

Can someone check out my EFI and my Errorlog, im really running out of options at this point

Hi,

I looked at your files really fast, today will be a full working day so I have not much time.

From the error log the hang happens very early.

My advices:

1- download the most recent version of opencore (debug version is recommended): precompiled files are here:

https://dortania.github.io/builds/?product=OpenCorePkg&viewall=true

 

2- I don't have amd so I really don't know how it works, but David is running Catalina without patches, so I advice to look at his xml, posted above, and edit yours accordingly, especially regarding custom args and cpu section (he is using cpu host-passthrough in libvirt and Skylake-Client in custom args).

Remember that you don't need virtualsmc if you are using the -device with the oskey in the xml and the other way around.

 

3- disable all of your patches in your config.plist; unless you are actually passthrough your cpu you don't need them

 

4- for general quirks refer to my config.plist, redacted and attached (config.plist refers to latest master version of opencore)

 

5- Change Target to lof to file in the config.plist

 

6- Boot and enjoy, or post again opencore log as you did

 

@mSedek config.plist attached

config.plist

Link to comment
13 hours ago, mSedek said:

could you post your EFI folder or at least your config.plist? i have manage to change to opencore and and run perfectly from vnc but when passing through my 5700xt it start booting up good and at half bar it goes BSOD

 

i got the agdpmod=pikera in the config.plist args.. but is the only one.. 

 

 

ok ill inject the lilu and get my own bios.. did donwload from techpowerup

 

I used the EFI folder from here. The only changes I made to the config.plist were to language and remove timeout on the boot menu.

 

Did you try with your own vbios? What motherboard are you using? Does GPU work if passing through to Linux or windows VMs?

 

 

 

Edited by paulmorabi
Link to comment

Native German here, so Denglish incoming...

 

First, thanks Guys for your help !

But damn what a bad road trip, tr yd so much and every time I got stuck at boot...very frustrating but hey !

Now I have an installation screen from Catalina and my System is booting with Open Core 0.6.2 (Debug) yay !

 

My Configuration:

- Unraid Version: 6.8.3

- CPU: AMD Ryzen 9 3950X
- Motherboard: ASUS ROG Crosshair VIII Hero
- GPU: Currently VNC only, adding RX 550 this weekend.
- RAM: 2*16GB 3200MHz Crucial
- SSD: 1TB Samsung 970 NVME as Cache

- HDD: Several 4 TB HDD's

 

So, what got me stuck here ? I tested it out and changed everything step by step and here is my conclusion ->

 

- Using edk2-OVMF_202008_stable posted before, sadly got my system stuck at boot -> reverted to OVMF that comes with Macinabox fixed this

- Used the libvirt from david279 as base but my system got stuck at boot with the custom qemu stuff at the end -> used the stock qemu settings that came with Macinabox fixed this

- I used the Video above that explained everything really nice for my Ryzen, people with a similar System can follow it to the end but as ghost82 already mentioned -> don't apply the patches ! -> or else stuck at boot

 

I started nearly from scratch and compared the libvirt from david279 and the libvirt from Leoyzen.

Leoyzen also explains really nicely whats important to change in the libvirt (written in Grey).

 

Combined the following resources to get a (work in progress) booting OSX with Ryzen 3950X on Unraid (after so many failed attempts):

 

The First Post of this Thread

The Answer @ghost82gave me above / thanks dude !

The Youtube Video below and the included Files/Guides/Explanations

The libvirt from david and from Leoyzen

 

Sources and my 2 cents:

https://github.com/Leoyzen/KVM-Opencore/blob/master/libvirt.xml 

- The libvirt from Leoyzen, also some nice explanations on the Main Page

 

https://forums.unraid.net/topic/84430-hackintosh-tips-to-make-a-bare-metal-macos/?do=findComment&comment=893286

- The libvirt from david279

 

https://www.technolli.com/downloads 

- Nice Tools and Video Collections about Hackintosh etc.

 

https://dortania.github.io/OpenCore-Install-Guide/AMD/zen.html#starting-point 

- The Open Core install Guide I mainly used

 

https://forums.unraid.net/topic/84430-hackintosh-tips-to-make-a-bare-metal-macos/?do=findComment&comment=849309

- How to create a qcow2 File, sadly this didn't work for me, my created File was somehow not bootable ? / I copied or cloned the qcow2 that Macinabox creates after triggering the Docker and restarting the Array for the first time. Worked for me.

 

https://youtu.be/cQhzQXsd_Ig

- The Video Guide I mainly used

 

https://dortania.github.io/OpenCore-Install-Guide/AMD/zen.html#amd-bios-settings

- The recommended Bios Settings for AMD Ryzen, getting everything (GPU Passtrough) to run without CSM and with UEFI only was tricky but the following Post helped

 

https://www.reddit.com/r/unRAID/comments/dhoek4/nvidia_gtx1060_primary_gpu_passthrough/

- Creating a User Script Macro that automatically starts after the Array, fixed everything about UEFI and CSM for me related to UEFI GPU Passtrough. The Macro contains the 3 Magic "Bind" lines mentioned at the end of the post. *Even Unraid boots in UEFI Mode, PCIe ACS override is set to "Both" in VM Manager advanced view)

 

https://github.com/dortania/OpenCore-Install-Guide/tree/master/clover-conversion

- Simple explanation how to clean up clover if u want to switch to Open Core

 

https://forums.unraid.net/topic/84601-support-spaceinvaderone-macinabox/?do=findComment&comment=873708

- Side Notes from ghost82 about switching from Clover to Open Core

 

https://dortania.github.io/builds/?product=OpenCorePkg&viewall=true

- Latest Open Core download location, as ghost82 already mentioned -> use the latest Debug version

 

https://forums.unraid.net/topic/84601-support-spaceinvaderone-macinabox/page/28/?tab=comments#comment-848847

- Best Advice Ever ! How to mount the qcow2 file inside Macinabox. For easy EFI replacing and experimenting. I turned this into a User Script for Mounting and Unmounting the qcow2. Saved so much time ! ...damn good stuff...and Cyberduck was my best friend at this point...

 

https://forums.unraid.net/topic/84430-hackintosh-tips-to-make-a-bare-metal-macos/?do=findComment&comment=895068

- ghost82 EFI and Open Core Files

 

 

Other useful stuff that try's to break out from my brain -> emulator pin / cpu pinning etc.

https://forums.unraid.net/topic/52730-isolate-cpu/

https://forums.unraid.net/topic/74376-pining-cpus-to-docker-and-isolation/

https://forums.unraid.net/topic/47345-performance-improvements-in-vms-by-adjusting-cpu-pinning-and-assignment/

https://qemu.readthedocs.io/en/latest/system/deprecated.html

 

VM Optimization:

https://mathiashueber.com/performance-tweaks-gaming-on-virtual-machines/

https://heiko-sieger.info/creating-a-windows-10-vm-on-the-amd-ryzen-9-3900x-using-qemu-4-0-and-vga-passthrough/

https://heiko-sieger.info/running-windows-10-on-linux-using-kvm-with-vga-passthrough/

 

https://bugs.launchpad.net/qemu/+bug/1856335

https://bugs.launchpad.net/qemu/+bug/1856335/comments/5

https://bugs.launchpad.net/qemu/+bug/1856335/comments/14

https://bugs.launchpad.net/qemu/+bug/1856335/comments/21

https://bugs.launchpad.net/qemu/+bug/1856335/comments/33

 

Hugepages on Unraid

https://forums.unraid.net/topic/88870-solved-unraid-enabling-hugepages-512gb-ram/?tab=comments#comment-825039

https://github.com/bryansteiner/gpu-passthrough-tutorial#part4

 

Optimize the "About This Mac" Area

https://www.idownloadblog.com/2017/01/13/how-to-modify-about-this-mac-hackintosh/

 

Windows Area

https://forums.unraid.net/topic/95802-guide-windows-10-vm-q35-50-with-nvidia-gpu-passtrough/

 

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MacinaboxCatalina</name>
  <uuid>ChangeME</uuid>
  <description>MacOS Catalina</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="MacOS" icon="/mnt/user/domains/MacinaboxCatalina/icon/catalina.png" os="Catalina"/>
  </metadata>
  <memory unit='KiB'>12582912</memory>
  <currentMemory unit='KiB'>12582912</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <iothreads>2</iothreads>
  <cputune>
    <vcpupin vcpu='0' cpuset='10'/>
    <vcpupin vcpu='1' cpuset='26'/>
    <vcpupin vcpu='2' cpuset='11'/>
    <vcpupin vcpu='3' cpuset='27'/>
    <vcpupin vcpu='4' cpuset='12'/>
    <vcpupin vcpu='5' cpuset='28'/>
    <vcpupin vcpu='6' cpuset='13'/>
    <vcpupin vcpu='7' cpuset='29'/>
    <emulatorpin cpuset='0,16'/>
    <iothreadpin iothread='1' cpuset='0,16'/>
    <iothreadpin iothread='2' cpuset='1,17'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/unraid/opencore/OVMF/edk2-OVMF_202008_stable/OVMF_CODE.fd</loader>
    <nvram>/mnt/user/unraid/opencore/OVMF/edk2-OVMF_202008_stable/OVMF_VARS.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv>
      <relaxed state='on'/>
      <spinlocks state='on' retries='8191'/>
      <vpindex state='on'/>
      <frequencies state='on'/>
    </hyperv>
    <kvm>
      <hidden state='on'/>
    </kvm>
    <vmport state='off'/>
    <ioapic driver='kvm'/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' cores='4' threads='2'/>
    <cache mode='passthrough'/>
    <feature policy='require' name='invtsc'/>
    <feature policy='require' name='hypervisor'/>
    <feature policy='require' name='topoext'/>
  </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/unraid/opencore/opencore.qcow2'/>
      <backingStore/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/Catalina-install.img'/>
      <backingStore/>
      <target dev='hdd' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='3'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/MacinaboxCatalina/macos_disk.img'/>
      <backingStore/>
      <target dev='hde' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='4'/>
    </disk>
    <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>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <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='0x10'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x11'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x12'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
    </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'/>
    </controller>
    <controller type='pci' index='6' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='pci' index='7' model='pci-bridge'>
      <model name='pci-bridge'/>
      <target chassisNr='7'/>
      <address type='pci' domain='0x0000' bus='0x06' slot='0x01' function='0x0'/>
    </controller>
    <controller type='pci' index='8' model='pci-bridge'>
      <model name='pci-bridge'/>
      <target chassisNr='8'/>
      <address type='pci' domain='0x0000' bus='0x06' slot='0x02' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:72:e3:f0'/>
      <source bridge='br0'/>
      <model type='e1000-82545em'/>
      <address type='pci' domain='0x0000' bus='0x08' slot='0x08' 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'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x09' slot='0x00' function='0x0'/>
      </source>
      <rom file='/mnt/user/unraid/virt und vBios/MSI Radeon RX 560 Aero ITX 4G OC/Polaris_21.rom'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0' multifunction='on'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x09' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x1'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <seclabel type='dynamic' model='dac' relabel='yes'/>
  <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='isa-applesmc,osk=ChangeME'/>
    <qemu:arg value='-smp'/>
    <qemu:arg value='8,sockets=1,cores=4,threads=2'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='host,kvm=off,vendor=GenuineIntel,+hypervisor,migratable=no,-erms,hv-time,hv-relaxed,hv-spinlocks=0x1fff,hv-vpindex,hv-frequencies,hv-crash,l3-cache=off,+invtsc,+topoext,+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,+popcnt,+arat,+pclmuldq,+pdpe1gb,+rdtscp,+vme,+umip,check'/>
    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-2.rotation_rate=1'/>
    <qemu:arg value='-set'/>
    <qemu:arg value='device.sata0-0-3.rotation_rate=1'/>
  </qemu:commandline>
</domain>

 

Fixed:

 

18.09.2020

libvrt ->
added multifunction='on' (GPU-Passtrough)
changed function='0x1' for audio device (GPU-Passtrough)
e1000-82545em as Network adapter

 

In Config.plist
changed prev-lang:kbd to de:3 (German Keyboard layout)
Set Target to 3

Used GenSMBIOS for Serial related stuff

 

Unraid:

added video=efifb:off pci=noaer to Unraid -> Main -> Flash -> Unraid OS Image

*https://forums.unraid.net/topic/88208-macos-gpu-passthrough-issues-on-new-amd-x570-build/?do=findComment&comment=819788

 

Did some VM Tweaks -> iothread, hyperv spinlocks state='on' retries='8191'

 

------------------------------------------------------------------------------------------------------------------------------------------------------------------

To-Do: (help really appreciated)

- No Sound on my Mac

 

- Getting GPU-Passtrough to work

 

- Sending back my RX 550 cause no support in later OSX. Buying an 560 or higher

*https://dortania.github.io/GPU-Buyers-Guide/modern-gpus/amd-gpu.html#vega-10-series

------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Attached:

 

18.09.2020

* EFI Folder (Open Core 0.6.2 Debug on Ryzen)

bootable

SN related stuff removed

work in progress

 

libvirt above (Open Core 0.6.2 Debug on Ryzen)

bootable

tweaked

VNC Version with de layout

please change nic back to vmxnet3 for installation purpose

osk removed

uuid changed

work in progress

 

24.09.2020

Added a modification of libvirt (inspired by ghost82) -> tweaked libvirt with highest Geekbench Score 1413 SC and 6018 MC

removed +pcid (Causes Error's in the Log)

removed hv-vendor-id=AuthenticAMD (qemu:arg from the botton "host" row removed) -> causes extreme speedy Animations

removed  <vendor_id state="on" value="AuthenticAMD"/> from <hyperv> .... </hyperv>  -> causes extreme speedy Animations

 

 

Thanks for reading.

EFI.zip

Edited by T-Birth
  • Like 1
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.