JaeHale

New Member
Feb 14, 2023
1
0
1
Hello, I have been attempting to solve this on and off for the better part of a week and finally caved and decided to ask for help.

My macOS VM on Proxmox works perfectly up until I enable PCI Passthrough, where it gets stuck on the macOS loading screen without a progress bar where it eventually resets. Any help would be greatly appreciated.

Specs
Ryzen 3 3100
ASRock B450M Pro4-F
XFX Radeon RX 570

/etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on"
GRUB_CMDLINE_LINUX=""

/etc/modprobe.d/vfio.conf
options vfio-pci ids=1002:67df,1002:aaf0 disable_vga=1

/etc/modules
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

/etc/modprobe.d/kvm.conf
options kvm ignore_msrs=1

/etc/pve/qemu-server/100.conf
bios: ovmf
boot: order=virtio0;net0
cores: 2
cpu: host
efidisk0: local-lvm:vm-100-disk-0,efitype=4m,size=4M
hostpci0: 0000:06:00,pcie=1,x-vga=1
machine: q35
memory: 12288
meta: creation-qemu=7.1.0,ctime=1676501916
name: Monterey
net0: vmxnet3=5E:E5:F9:28:25:46,bridge=vmbr0,firewall=1
numa: 0
ostype: other
scsihw: virtio-scsi-pci
smbios1: uuid=69498a18-d7c9-4cb0-a2ce-30a03bfa92a4
sockets: 3
usb0: host=3-3,usb3=1
usb1: host=3-4,usb3=1
vga: none
virtio0: local-lvm:vm-100-disk-1,cache=unsafe,iothread=1,size=750G
vmgenid: 08b0f08c-2adc-48c4-a11a-c85562bdfcdd

Video of Boot Sequence
 
I'm having basically the same issue with a Ryzen 3800XT and Radeon VII host. I suspect that at this point, AMD host with Proxmox just doesn't work for MacOS.
 
Last edited:
I am also pulling my hair for several weeks now trying to make things work. And the thing is that I do have another machine with both NVidia GTX1080Ti) (for Linux/Win) and AMD RX580 (for Mac Monterey) where VMs work but on a different host and a different AMD (single) GPUs I have struggled for too many reasons to list (including GPU spoofing). Maybe Ventura is the culprit ?
 
So far, I have not had much luck with Radeon Vega 64 + Proxmox + Ventura/Monterey (but on a server motherboard with Haswell-EP Xeons), no acceleration or not even booting.

On another system that IS hackintoshable (either directly with OpenCore or with Proxmox+OpenCore) up to Ventura I haven't been able to successfully GPU spoof my new AMD Radeon RX 6950 XT Reference. The GPU needs to be spoofed to an RX 6900 XT (from 0x73A5 to 0x73BF) which is natively supported by Monterey/Ventura but no matter what I have tried with BIOS/OpenCore/Proxmox settings, it has failed. At best, I have made it post like 6900XT (0x73BF) in Ventura by means of Proxmox (hostpci0: 0000:03:00,device-id=0x73BF) but it still acts like software renderer and UI is snail-slow. Strangely enough with the RX6950, I am able to passthrough the GPU on a Windows 10 VM and get signal from the card's displayport but I only get a black screen on a Linux Mint VM.
 
I lost track of which GPUs you're using for which kind of VM, so please allow me to give some generic advise on AMD GPUs:
Older AMD GPUs requires vendor-reset and activation of it. Here is an old guide. You can test passthrough by booting a recent Ubuntu Live installer ISO (without installing it).
Passthrough of the boot GPU requires this work-around or with an AMD GPU (and vendor-reset) you can also install the latest optional kernel but make sure amdgpu is loaded for the VGA function of the GPU (so don't blacklist it or early bind it to vfio-pci, which is needed when using older Proxmox kernels).
The AMD Windows Graphics drivers work better with Machine version 6.2 (machine: pc-q35-6.2) on Windows (10). I have no experience with macOS, sorry.
 
  • Like
Reactions: frankmanzhu
@leesteken
Yes, sorry, I am currently starting a separate thread and I was just writing about some of these things that I had tried (e.g. not needing to blacklist). I am going to delete or change my previous post here.

Anyway, I already knew about vendor-reset, I used it successfully with my AMD Radeon RX 580 and Radeon Vegas 64. New cards are not supported or do not need it. The problem is with making the macOS VM to work properly with an unsupported GPU by changing its device ID (it can be done with PC+OpenCore but not with PC+Proxmox+OpenCore).
 
Last edited:
So far, I have not had much luck with Radeon Vega 64 + Proxmox + Ventura/Monterey (but on a server motherboard with Haswell-EP Xeons), no acceleration or not even booting.

On another system that IS hackintoshable (either directly with OpenCore or with Proxmox+OpenCore) up to Ventura I haven't been able to successfully GPU spoof my new AMD Radeon RX 6950 XT Reference. The GPU needs to be spoofed to an RX 6900 XT (from 0x73A5 to 0x73BF) which is natively supported by Monterey/Ventura but no matter what I have tried with BIOS/OpenCore/Proxmox settings, it has failed. At best, I have made it post like 6900XT (0x73BF) in Ventura by means of Proxmox (hostpci0: 0000:03:00,device-id=0x73BF) but it still acts like software renderer and UI is snail-slow. Strangely enough with the RX6950, I am able to passthrough the GPU on a Windows 10 VM and get signal from the card's displayport but I only get a black screen on a Linux Mint VM.
Hi George, Do you ever fix the issues with acceleration? I having the same issue. Thanks in advance.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!