<div dir="ltr">@<span style="white-space:nowrap">sL1pKn07 SpinFlo<br><br>This is a jackpot of information - THANK YOU!  I'll let you know if/when I'm able to make this work :D</span></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Feb 23, 2016 at 2:03 PM sL1pKn07 SpinFlo <<a href="mailto:sl1pkn07@gmail.com">sl1pkn07@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">double identical gpu, i mean<br>
<br>
greetings<br>
<br>
2016-02-23 20:00 GMT+01:00 sL1pKn07 SpinFlo <<a href="mailto:sl1pkn07@gmail.com" target="_blank">sl1pkn07@gmail.com</a>>:<br>
> my arch script:<br>
><br>
> systemd service:<br>
><br>
> [Unit]<br>
> Description=Binds devices to vfio-pci<br>
> After=syslog.target<br>
><br>
> [Service]<br>
> Type=oneshot<br>
> RemainAfterExit=yes<br>
> ExecStart=-/usr/bin/setup_kvm_vfio.sh<br>
><br>
> [Install]<br>
> WantedBy=multi-user.target<br>
><br>
> setup_kvm_vfio.sh script:<br>
><br>
> #!/bin/bash<br>
><br>
> # Get pci-id host GPU<br>
> host_gpu=$(lspci | grep "GTX 770" | awk '{print $1;}')<br>
> host_gpu_audio=$(echo $host_gpu | sed -e 's/\.0$/.1/')<br>
><br>
> # Get pci-id/vendor-id/device-id guest GPU<br>
> guest_gpu=$(lspci | grep "GTX TITAN Black" | awk '{print $1;}')<br>
> guest_gpu_vendor=$(cat /sys/bus/pci/devices/0000:$guest_gpu/vendor)<br>
> guest_gpu_device=$(cat /sys/bus/pci/devices/0000:$guest_gpu/device)<br>
> guest_gpu_audio=$(echo $guest_gpu | sed -e 's/\.0$/.1/')<br>
> guest_gpu_audio_vendor=$(cat /sys/bus/pci/devices/0000:$guest_gpu_audio/vendor)<br>
> guest_gpu_audio_device=$(cat /sys/bus/pci/devices/0000:$guest_gpu_audio/device)<br>
><br>
> # Get pci-id/vendor-id/device-id guest USB<br>
> # usb_pci=$(lspci | grep "NEC" | head -1 | awk '{print $1;}')<br>
> # usb_pci_vendor=$(cat /sys/bus/pci/devices/0000:$usb_pci/vendor)<br>
> # usb_pci_device=$(cat /sys/bus/pci/devices/0000:$usb_pci/device)<br>
><br>
> # Get pci-id/vendor-id/device-id guest SATA<br>
> # sata_pci=$(lspci | grep "Marvell Technology Group Ltd. 88SE9120<br>
> SATA" | awk '{print $1;}')<br>
> # sata_pci_vendor=$(cat /sys/bus/pci/devices/0000:$sata_pci/vendor)<br>
> # sata_pci_device=$(cat /sys/bus/pci/devices/0000:$sata_pci/device)<br>
><br>
> # Set real driver for host GPU/GPU-audio<br>
> echo nvidia        > /sys/bus/pci/devices/0000:$host_gpu/driver_override<br>
> echo snd-hda-intel > /sys/bus/pci/devices/0000:$host_gpu_audio/driver_override<br>
><br>
> # Set vfio-pci driver for guest GPU/GPU-audio/USB/SATA<br>
> echo vfio-pci      > /sys/bus/pci/devices/0000:$guest_gpu/driver_override<br>
> echo vfio-pci      > /sys/bus/pci/devices/0000:$guest_gpu_audio/driver_override<br>
> # echo vfio-pci       > /sys/bus/pci/devices/0000:$usb_pci/driver_override<br>
> # echo vfio-pci       > /sys/bus/pci/devices/0000:$sata_pci/driver_override<br>
><br>
> # Load vfio-pci kernel module<br>
> modprobe vfio-pci<br>
><br>
> # Set GPU/GPU-audio/USB/SATA vfio-pci id<br>
> echo $guest_gpu_vendor $guest_gpu_device             ><br>
> /sys/bus/pci/drivers/vfio-pci/new_id<br>
> echo $guest_gpu_audio_vendor $guest_gpu_audio_device ><br>
> /sys/bus/pci/drivers/vfio-pci/new_id<br>
> # echo $usb_pci_vendor $usb_pci_device                 ><br>
> /sys/bus/pci/drivers/vfio-pci/new_id<br>
> # echo $sata_pci_vendor $sata_pci_device               ><br>
> /sys/bus/pci/drivers/vfio-pci/new_id<br>
><br>
> # Unbind GPU/GPU-audio/USB/SATA real driver<br>
> echo 0000:$guest_gpu       > /sys/bus/pci/devices/0000:$guest_gpu/driver/unbind<br>
> echo 0000:$guest_gpu_audio ><br>
> /sys/bus/pci/devices/0000:$guest_gpu_audio/driver/unbind<br>
> # echo 0000:$usb_pci          > /sys/bus/pci/devices/0000:$usb_pci/driver/unbind<br>
> # echo 0000:$sata_pci         ><br>
> /sys/bus/pci/devices/0000:$sata_pci/driver/unbind<br>
><br>
> # Bind GPU/GPU-audio/USB/SATA to vfio-pci<br>
> echo 0000:$guest_gpu       > /sys/bus/pci/drivers/vfio-pci/bind<br>
> echo 0000:$guest_gpu_audio > /sys/bus/pci/drivers/vfio-pci/bind<br>
> # echo 0000:$usb_pci        > /sys/bus/pci/drivers/vfio-pci/bind<br>
> # echo 0000:$sata_pci       > /sys/bus/pci/drivers/vfio-pci/bind<br>
><br>
> # Load nvidia kernel module<br>
> modprobe nvidia<br>
><br>
> zero config about vfio/pcistub on the grub/modprobe.d/modules-load/etc, except:<br>
><br>
> GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on"<br>
><br>
> taked from: <a href="http://www.altechnative.net/2015/04/05/virtually-gaming-part-2-evolution-consolidation-and-move-to-kvm/" rel="noreferrer" target="_blank">http://www.altechnative.net/2015/04/05/virtually-gaming-part-2-evolution-consolidation-and-move-to-kvm/</a><br>
><br>
> that configuration have a identical GPU like you<br>
><br>
> i hope helps you<br>
><br>
> greetings<br>
</blockquote></div>