Hello Joris!
Sorry for the delay in responding. My PSU went bad and just got another one installed. Whew.
Let me see if passthrough is working....
if the monitor goes black and only VNC is working that is a good thing
Hello Joris!
Sorry for the delay in responding. My PSU went bad and just got another one installed. Whew.
Let me see if passthrough is working....
Well, I guess. If I remember correctly, when the GPU passthrough was working, the console wouldn't connect (which makes sense).
So at VM boot, the proxmox screen comes up for the VM, then goes to black and nothing.. have to go to the console. I wonder if my video drivers are messed up. I'll create a new VM to see.
video=vseafb:off
video=efifb:off
and also nomodeset
I don't think i forget something herestill no go.
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 nofb nomodese
t video=vesafbff video=efifbff"
GPU is virtio-GPU
PCI device is identified and all selected.
No idea on the rom file.. hmmm
you are welcome, i miss the collaborative spirit in newsgroups and forums so i try to keep the flame burningFirst off Joris thank you so much for all your time and assistance!
Okay, adding a more simple grub line, adding in second line to vfio.conf file. The external screen now just displays the ProxMox Boot screen but instead of cutting out, it just is frozen there. The console works.
Here's all my settings..
GRUB--
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Proxmox Virtual Environment"
#_NEW_GRUB_CMDLINE_LINUX_DEFAULT="iommu=on amd_iommu=forced_isolation nobar video=vsafbff video=efifbff pci=pcie_bus_perf,pcie_scan_all,big_root_window pcie_ports=native"
# OLDGRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction nofb nomodeset video=vesafbff efifbff"
#GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction vfio_iommu_type1.allow_unsafe_interrupts=1 nofb nomodeset video=vesafbff video=efifbff"
GRUB_CMDLINE_LINUX_DEFAULT="iommu=pt intel_iommu=on nobar noats nomodeset video=vesafbff video=efifbff"
# Disable os-prober, it might add menu entries for each guest
GRUB_DISABLE_OS_PROBER=true
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
_______________________________________________________
MODULES
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
______________________________________________________
blacklist.conf
blacklist radeon
blacklist nouveau
blacklist nvidia
_________________________________________
iommu_unsafe_interrupts.conf
options vfio_iommu_type1 allow_unsafe_interrupts=1
_______________________________________________________
kvm.conf
options kvm ignore_msrs=1
___________________________________________________
pve-blacklist.conf
# This file contains a list of modules which are not supported by Proxmox VE
# nidiafb see bugreport https://bugzilla.proxmox.com/show_bug.cgi?id=701
blacklist nvidiafb
blacklist nvidia
blacklist radeon
blacklist nouveau
__________________________________________________
vfio.conf
options vfio-pci ids=10de:1c03 disable_vga=1 disable_idle_d3=1
options kvm ignore_msrs
_____________________________________________-
VM.conf
agent: 1
#args: -cpu 'host,+kvm_pv_unhalt,+kvm_pv_eoi,kvm=off'
audio0: device=AC97,driver=spice
balloon: 8032
bios: ovmf
bootdisk: scsi0
cores: 1
efidisk0: local-lvm:vm-102-disk-0,size=4M
hostpci0: 04:00,pcie=1,x-vga=1
ide2: local:iso/pop-os_20.10_amd64_nvidia_1.iso,media=cdrom
machine: q35
memory: 16032
name: POP
net0: e1000=DA:1F:8D:A1:F6:71,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
scsi0: Fedora:vm-102-disk-0,cache=writethrough,size=476G
scsihw: virtio-scsi-pci
smbios1: uuid=31f37015-d24e-4bef-9b9e-2a879b7042d5
sockets: 4
usb0: host=05ac:024f,usb3=1
usb1: host=03f0:a407,usb3=1
vga: virtio,memory=512
vmgenid: c25dc664-5081-4c1f-82a7-1ef55b7acb8c
In the console, I see the Nvidia GPU... even third party apps can see it. So yeah, it's working, just not shooting the display to where I want it. Using ProxMox 6.2-12. This is PopOS 21.10 with Nvidia drivers 455.28
alright, changed the order of those two commands. same result.
That's the goal- to use an external display with the VM.
Using the console or another VNC client doesn't seem to leverage the GPU. Which makes sense I guess.
it is for gaming. I'll keep experimenting... it worked fine under ProxMox 6.1, then after the update failed.
when I look here:
root@scrapiron:~# dmesg | grep 'remapping'
[ 1.009151] DMAR-IR: This system BIOS has enabled interrupt remapping
interrupt remapping is being disabled. Please
perhaps this is the issue?
dmesg | grep -i -e iommu -e dmar -e bar -e passthrough -e vfio
for a full pictureintremap=on
to force enable remapping (at your own risk, not sure why it is off at all)intel_iommu= [DMAR] Intel IOMMU driver (DMAR) option
on
Enable intel iommu driver.
off
Disable intel iommu driver.
igfx_off [Default Off]
By default, gfx is mapped as normal device. If a gfx
device has a dedicated DMAR unit, the DMAR unit is
bypassed by not enabling DMAR with this option. In
this case, gfx device will use physical address for
DMA.
forcedac [x86_64]
With this option iommu will not optimize to look
for io virtual address below 32-bit forcing dual
address cycle on pci bus for cards supporting greater
than 32-bit addressing. The default is to look
for translation below 32-bit and if not available
then look in the higher range.
strict [Default Off]
With this option on every unmap_single operation will
result in a hardware IOTLB flush operation as opposed
to batching them for performance.
sp_off [Default Off]
By default, super page will be supported if Intel IOMMU
has the capability. With this option, super page will
not be supported.
sm_on [Default Off]
By default, scalable mode will be disabled even if the
hardware advertises that it has support for the scalable
mode translation. With this option set, scalable mode
will be used on hardware which claims to support it.
tboot_noforce [Default Off]
Do not force the Intel IOMMU enabled under tboot.
By default, tboot will force Intel IOMMU on, which
could harm performance of some high-throughput
devices like 40GBit network cards, even if identity
mapping is enabled.
Note that using this option lowers the security
provided by tboot because it makes the system
vulnerable to DMA attacks.
eh, thanks for the thanks i guessAlright, it is fixed! GPU passthrough to an external monitor is working. GTX 1060 being seen and used. Had to change the VMID.conf file to vga: none then it worked. Thank you Joris for ALL your effort. Your help got me to this last change. Meaning it may not have worked without the changes you suggested.
From this thread: https://forum.proxmox.com/threads/gpu-pcie-passthrough-stopped-working-after-update.71183/page-2