for easy C&P: http://sl1pkn07.wtf/paste/view/3979e694 -> systemd service http://sl1pkn07.wtf/paste/view/e4272c8d -> setup_kvm_vfio.sh script
greetings 2016-02-23 20:21 GMT+01:00 sL1pKn07 SpinFlo <sl1pk...@gmail.com>: > tnx :D > > if you have problems with the unsafe interrupts: > > └───╼ cat /etc/modprobe.d/vfio.conf > options vfio_iommu_type1 allow_unsafe_interrupts=1 > > greetings > > 2016-02-23 20:14 GMT+01:00 Garland Key <david.garland....@gmail.com>: >> @sL1pKn07 SpinFlo >> >> This is a jackpot of information - THANK YOU! I'll let you know if/when I'm >> able to make this work :D >> >> On Tue, Feb 23, 2016 at 2:03 PM sL1pKn07 SpinFlo <sl1pk...@gmail.com> wrote: >>> >>> double identical gpu, i mean >>> >>> greetings >>> >>> 2016-02-23 20:00 GMT+01:00 sL1pKn07 SpinFlo <sl1pk...@gmail.com>: >>> > my arch script: >>> > >>> > systemd service: >>> > >>> > [Unit] >>> > Description=Binds devices to vfio-pci >>> > After=syslog.target >>> > >>> > [Service] >>> > Type=oneshot >>> > RemainAfterExit=yes >>> > ExecStart=-/usr/bin/setup_kvm_vfio.sh >>> > >>> > [Install] >>> > WantedBy=multi-user.target >>> > >>> > setup_kvm_vfio.sh script: >>> > >>> > #!/bin/bash >>> > >>> > # Get pci-id host GPU >>> > host_gpu=$(lspci | grep "GTX 770" | awk '{print $1;}') >>> > host_gpu_audio=$(echo $host_gpu | sed -e 's/\.0$/.1/') >>> > >>> > # Get pci-id/vendor-id/device-id guest GPU >>> > guest_gpu=$(lspci | grep "GTX TITAN Black" | awk '{print $1;}') >>> > guest_gpu_vendor=$(cat /sys/bus/pci/devices/0000:$guest_gpu/vendor) >>> > guest_gpu_device=$(cat /sys/bus/pci/devices/0000:$guest_gpu/device) >>> > guest_gpu_audio=$(echo $guest_gpu | sed -e 's/\.0$/.1/') >>> > guest_gpu_audio_vendor=$(cat >>> > /sys/bus/pci/devices/0000:$guest_gpu_audio/vendor) >>> > guest_gpu_audio_device=$(cat >>> > /sys/bus/pci/devices/0000:$guest_gpu_audio/device) >>> > >>> > # Get pci-id/vendor-id/device-id guest USB >>> > # usb_pci=$(lspci | grep "NEC" | head -1 | awk '{print $1;}') >>> > # usb_pci_vendor=$(cat /sys/bus/pci/devices/0000:$usb_pci/vendor) >>> > # usb_pci_device=$(cat /sys/bus/pci/devices/0000:$usb_pci/device) >>> > >>> > # Get pci-id/vendor-id/device-id guest SATA >>> > # sata_pci=$(lspci | grep "Marvell Technology Group Ltd. 88SE9120 >>> > SATA" | awk '{print $1;}') >>> > # sata_pci_vendor=$(cat /sys/bus/pci/devices/0000:$sata_pci/vendor) >>> > # sata_pci_device=$(cat /sys/bus/pci/devices/0000:$sata_pci/device) >>> > >>> > # Set real driver for host GPU/GPU-audio >>> > echo nvidia > /sys/bus/pci/devices/0000:$host_gpu/driver_override >>> > echo snd-hda-intel > >>> > /sys/bus/pci/devices/0000:$host_gpu_audio/driver_override >>> > >>> > # Set vfio-pci driver for guest GPU/GPU-audio/USB/SATA >>> > echo vfio-pci > >>> > /sys/bus/pci/devices/0000:$guest_gpu/driver_override >>> > echo vfio-pci > >>> > /sys/bus/pci/devices/0000:$guest_gpu_audio/driver_override >>> > # echo vfio-pci > >>> > /sys/bus/pci/devices/0000:$usb_pci/driver_override >>> > # echo vfio-pci > >>> > /sys/bus/pci/devices/0000:$sata_pci/driver_override >>> > >>> > # Load vfio-pci kernel module >>> > modprobe vfio-pci >>> > >>> > # Set GPU/GPU-audio/USB/SATA vfio-pci id >>> > echo $guest_gpu_vendor $guest_gpu_device > >>> > /sys/bus/pci/drivers/vfio-pci/new_id >>> > echo $guest_gpu_audio_vendor $guest_gpu_audio_device > >>> > /sys/bus/pci/drivers/vfio-pci/new_id >>> > # echo $usb_pci_vendor $usb_pci_device > >>> > /sys/bus/pci/drivers/vfio-pci/new_id >>> > # echo $sata_pci_vendor $sata_pci_device > >>> > /sys/bus/pci/drivers/vfio-pci/new_id >>> > >>> > # Unbind GPU/GPU-audio/USB/SATA real driver >>> > echo 0000:$guest_gpu > >>> > /sys/bus/pci/devices/0000:$guest_gpu/driver/unbind >>> > echo 0000:$guest_gpu_audio > >>> > /sys/bus/pci/devices/0000:$guest_gpu_audio/driver/unbind >>> > # echo 0000:$usb_pci > >>> > /sys/bus/pci/devices/0000:$usb_pci/driver/unbind >>> > # echo 0000:$sata_pci > >>> > /sys/bus/pci/devices/0000:$sata_pci/driver/unbind >>> > >>> > # Bind GPU/GPU-audio/USB/SATA to vfio-pci >>> > echo 0000:$guest_gpu > /sys/bus/pci/drivers/vfio-pci/bind >>> > echo 0000:$guest_gpu_audio > /sys/bus/pci/drivers/vfio-pci/bind >>> > # echo 0000:$usb_pci > /sys/bus/pci/drivers/vfio-pci/bind >>> > # echo 0000:$sata_pci > /sys/bus/pci/drivers/vfio-pci/bind >>> > >>> > # Load nvidia kernel module >>> > modprobe nvidia >>> > >>> > zero config about vfio/pcistub on the grub/modprobe.d/modules-load/etc, >>> > except: >>> > >>> > GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on" >>> > >>> > taked from: >>> > http://www.altechnative.net/2015/04/05/virtually-gaming-part-2-evolution-consolidation-and-move-to-kvm/ >>> > >>> > that configuration have a identical GPU like you >>> > >>> > i hope helps you >>> > >>> > greetings _______________________________________________ vfio-users mailing list vfio-users@redhat.com https://www.redhat.com/mailman/listinfo/vfio-users