Nvidia GPU in Windows 11 VM Using KVM Plugin

  • I'm able to use the KVM plugin to pass through a Tesla P4 over PCI and the Windows 11 VM sees it in device manager but is not able to use it in any software. Is this something I would resolve with virt-manager or via CLI? From what I have read the KVM plugin isn't supposed to be used for GPU passthrough but it seems to have passed it through. I am passing through the whole GPU, not splitting it and wonder why it shows up in the VM but isn't able to be used. I could get the VM to use it correctly in Proxmox, but prefer OMV so would like to figure out how to use it.


    Thank you. 8)

  • chente

    Approved the thread.
    • Official Post

    From what I have read the KVM plugin isn't supposed to be used for GPU passthrough

    Not sure why. The plugin just used to not have a way to pass hardware through. The KVM plugin is just kvm/libvirt and there should be no issue with gpu passthrough.



    am passing through the whole GPU, not splitting it and wonder why it shows up in the VM but isn't able to be used. I could get the VM to use it correctly in Proxmox, but prefer OMV so would like to figure out how to use it.

    Proxmox is pure kvm/qemu not libvirt. So, things are different. If the VM starts and the guest "sees" the card, I would think things are setup correct from the kvm side. Is the Windows device manager showing an error number?

    omv 7.4.7-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.14 | compose 7.2.3 | k8s 7.2.0-1 | cputemp 7.0.2 | mergerfs 7.0.5 | scripts 7.0.8


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • Nope, no error number. Lists the P4 as a display adapter, but there are two other PCI devices that show up with question marks. All I did was select the PCI device through the OMV 7 gui when I created the VM. Is it really that simple?


    I installed the latest Nvidia drivers, but it's as I described in that it doesn't appear to be utilized in Task Manager under "Performance". No GPU listed. I feel like it's using the Microsoft Display Adapter.

    • Official Post

    I've never actually done it on kvm or Windows (have on Proxmox and VMware esxi with a Linux guest). The code for the plugin comes from the libvirt manual. So, I'm not sure what else would need to be done on Windows. If you can find any libvirt gpu passthrough tutorial on the internet, it might help.

    omv 7.4.7-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.14 | compose 7.2.3 | k8s 7.2.0-1 | cputemp 7.0.2 | mergerfs 7.0.5 | scripts 7.0.8


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

    • Official Post

    I'll look into that.

    Please report back if you find anything. I will improve the plugin if something is missing.

    omv 7.4.7-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.14 | compose 7.2.3 | k8s 7.2.0-1 | cputemp 7.0.2 | mergerfs 7.0.5 | scripts 7.0.8


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • I was able to get it working using this tutorial:


    External Content gist.github.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.


    The issue was that while the card was passed through, it was claimed by the kernel and using the Nouveau driver, not vfio. Following the steps in the above link fixed it, except the VM is now occasionally crashing. This may be my fault as I might have messed up another configuration file while trying to solve the issue.


    Thank you.

    • Official Post

    I did look at automating the vfio part (this line - options vfio-pci ids=10de:1b81,10de:10f0) but it didn't seem to be enough in my light testing. For the other lines, it would be very hard to maintain or even come up with all of the configs of hardware that people might want to passthrough. So, I'm not sure what I can improve here.


    The hidden state and vendor_id parts look interesting. I don't remember seeing those before. Might have to look into this a bit again.

    omv 7.4.7-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.14 | compose 7.2.3 | k8s 7.2.0-1 | cputemp 7.0.2 | mergerfs 7.0.5 | scripts 7.0.8


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • You may just want to add a note in the description of the plugin pointing people towards vfio if they are passing through a graphics card.

    • Official Post

    You may just want to add a note in the description of the plugin pointing people towards vfio if they are passing through a graphics card.

    All three of the links in the dialog when adding passthrough in the plugin talk about the vfio changes. But I will make the note about settings include vfio like it mentions IOMMU already.

    omv 7.4.7-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.14 | compose 7.2.3 | k8s 7.2.0-1 | cputemp 7.0.2 | mergerfs 7.0.5 | scripts 7.0.8


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • Hi!

    How to actualise the list of saved VMs in KVM plugin?

    I restored previous image of OMV using Clonezilla but I can't find my saved VMs in "KVM - Restore".

    There are my old deleted VMs backups in list of backups but actually there are another more recent VMs made after Clonezilla saved the OMV image.

  • The VM config files are stored in /etc/libvirt/qemu. If you don't have a copy of those xml's you will have to re-create the config but tell it to use the existing qcow2 files for the drives instead of creating a new drive.


    If you do have copies of the xml's, you should be able to copy them back to that directory and then "import" them using virsh define guest_name.xml

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!