iGPU Pasthrough for macos on laptop

samuel-owoaanu

New Member
Apr 20, 2022
3
0
1
I am new to proxmox and I installed macos bigsur as a vm. Since then I have been trying to passthrough my intel iGPU to the bigsur vm, but no avail.

I have read through different wikis, walkthroughs, and forum dicourses, but still abortive.
please I need help,
I have a Lenovo Laptop Intel Corei5-7200U, 8gb ram, intel HD graphics 620

here is my grub
Code:
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on i915.enable_gvt=1 i915.enable_guc=0 iommu=pt pcie_acs_override=downstream,multifunction nofb nomodeset video=vesafb:off,efifb:off"
GRUB_CMDLINE_LINUX=""

here is my vm conf
Code:
agent: 1
args: -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -global nec-usb-xhci.msi=off -global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc -machine type=q35,kernel_irqchip=on -device vfio-pci,sysfsdev=00:02.0,x-igd-opregion=on,addr=0x18,driver=vfio-pci-nohotplug,romfile=vbios_gvt_uefi.rom"
audio0: device=intel-hda,driver=none
bios: ovmf
boot: order=sata1
cores: 4
cpu: Penryn
efidisk0: local:100/vm-100-disk-1.qcow2,efitype=4m,size=528K
hostpci0: 0000:02:00.0
hostpci1: 0000:00:14.0
hostpci2: 0000:00:1f.3
hostpci3: 0000:00:1f.4
hostpci4: 0000:00:02.0,romfile=i915ovmf.rom,x-vga=1,pcie=1
machine: q35
memory: 6144
meta: creation-qemu=6.1.0,ctime=1649175845
name: Mojave
net0: vmxnet3=E6:7C:7F:13:04:99,bridge=vmbr0,firewall=1
numa: 0
ostype: other
sata1: local:100/vm-100-disk-2.qcow2,cache=unsafe,discard=on,size=300G
scsihw: virtio-scsi-pci
smbios1: uuid=6a78e67a-7344-4136-b3e4-a5516afffd70
sockets: 1
tablet: 1
usb0: host=1-5
usb1: host=1-7
usb2: host=1-4
vga: none
vmgenid: 923aacd5-ef9a-4c07-bc5c-c12e25a2312a

I have the kvm.conf
Code:
options kvm ignore_msrs=1

I have the vfio.conf
Code:
options vfio-pci ids=8086:5916,8086:9d71,8086:9d2f,168c:0042 disable_vga=1

I have the blacklist.conf
Code:
blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi
blacklist i915
blacklist ath9k
blacklist ath10k_pci

I have the modules
Code:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

kvmgt
exngt
vfio-mdev
mdev

it seems I have gotten to the end of my 'trial and error'
I sincerely need help this
thanks in advance
 
You posted a lot, but not the actual error message.
oh thanks so much for kind gesture in responding.
I'm really sorry for that omission, thanks for bringing it up.

the issue I have at hand is that, the vm runs successfully, but whenever I do an iGPU passthrough the laptop screen goes blank and there would be no way I can interact with the system, I tried connecting and hdmi cable to see if it would display to a monitor instead but no avail.
I have gone through many vfio forums but it seems that focus is more on a dedicated GPU rather than integrated GPUs.

Thanks so much for your time, I deeply appreciate.
 
If you pass through the iGPU to the VM it will be unavailable to your local machine (ProxMox Host). There is no hardware available to the local machine to use as the display to display the VM. You really need 2 GPUs or RDP/VNC/SPICE from another computer to make it work.
 
iGPU passthrough the laptop screen goes blank
That's what I tought. @vix9 already described why.

You can however run PVE perfectly fine like this _if_ it works. You then have a system that seems normal, but in the back has everything virtualized.
You may have more luck with blacklisting your igpu in the beginning, so that PVE does not initialize it. With this, you may have more luck in "passthroughing" the device to a guest, but you have to iterate a few times until it may work (or not). PCIe passthrough is heavily dependend on the hardware used and sometimes it just won't work.
Yet if this is not what you've desired, then you need another approach like Desktop virtualization. Laptops are normally not the target market for such a setup.
 
i915.enable_gvt=1 and blacklist i915 are conflicting. Do you want to do PCI passthrough of the whole device for one VM or mediated GVT-g passthrough to multiple VMs?
Getting MacOS working in a VM is even more complicated than normal (although there are many guides on the internet). Maybe get it to work with a Ubuntu or Windows VM first?
 

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!