thenickdude / KVM-Opencore

OpenCore disk image for running macOS VMs on Proxmox/QEMU
https://www.nicksherlock.com/2021/10/installing-macos-12-monterey-on-proxmox-7/
GNU General Public License v3.0
1.26k stars 114 forks source link

macOS won't boot when GPU is passed to VM in Proxmox #44

Closed AP1028 closed 1 year ago

AP1028 commented 1 year ago

Hi, I have met a strange problem. My macOS works fine when it uses the VMware compatible display option. However, it fails to boot and hang at apple logo when I turn display option to none with GPU passthrough even if I added agdpmod=pikera in Opencore config.plist boot option. I have tried passing the GPU to a Windows VM, and it works just fine. It just doesn't work on macOS. vender-reset is already installed.

Proxmox version: Proxmox VE 7.2-11 CPU: AMD EPYC 7551P Motherboard: Supermicro H11SSL-i GPU: Gigabyte AMD Radeon RX 5600 XT

Grub boot option: GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt rootdelay=10 video=vesafb:off video=efifb:off initcall_blacklist=sysfb_init "

104.conf:

agent: 1
args: -device isa-applesmc,osk="<Hidden, I know what this is.>" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -device usb-mouse,bus=ehci.0,port=3 -cpu Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+bmi1,+bmi2,+xsave,+xsaveopt,check
autostart: 0
balloon: 0
bios: ovmf
boot: order=virtio1
cores: 8
cpu: Penryn
efidisk0: local-lvm:vm-104-disk-0,size=4M
hostpci0: 0000:23:00,pcie=1,x-vga=1
machine: q35
memory: 16384
meta: creation-qemu=7.0.0,ctime=1667659930
name: macOS
net0: vmxnet3=EA:C1:22:3F:01:6B,bridge=vmbr0
numa: 1
onboot: 0
ostype: other
scsihw: virtio-scsi-pci
smbios1: uuid=2f67f3de-91d1-43eb-9f27-94ff9f10f686
sockets: 1
tablet: 1
usb0: host=046d:c31c
usb1: host=046d:c077
vga: none
virtio1: local-lvm:vm-104-disk-1,cache=unsafe,size=512G
vmgenid: e4a74a30-bb9f-42a1-a4e2-6d31dd278f4c

Screen photo when -v is added to the boot option: 微信图片_20221106222005

thenickdude commented 1 year ago

You need to add this to your VM args:

-global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off
AP1028 commented 1 year ago

It works, thanks a lot!