Sample xml file for windows 8.1 and GPU/USB passtrough


Recommended Posts

  • Replies 110
  • Created
  • Last Reply

Top Posters In This Topic

Post #1 updated with the script I'm using

 

//Peter

 

I really, REALLY appreciate you taking the time to figure all this out, and to share with us.  However, I'm just not willing to jump thru that many more hoops to get this working.  I'm afraid that adding all that stuff will screw up something else (or worse, just won't work for me either), and/or the eventual next beta will mean that I'll have to figure out how to remove or modify all those changes.  Too much work to get something working that I think should have worked better in the first place.

 

The family will just have to live without TV and Movies until the next release :(

Link to comment

First effort didn't work, I tried...

 

nano /etc/libvirt/vfio-bind

 

and entered this...

 

#!/bin/bash

modprobe vfio-pci

for dev in "$@"; do
        vendor=$(cat /sys/bus/pci/devices/$dev/vendor)
        device=$(cat /sys/bus/pci/devices/$dev/device)
        if [ -e /sys/bus/pci/devices/$dev/driver ]; then
                echo $dev > /sys/bus/pci/devices/$dev/driver/unbind
        fi
        echo $vendor $device > /sys/bus/pci/drivers/vfio-pci/new_id
done

 

then ran...

 

chmod 755 /etc/libvirt/vfio-bind

 

then ran...

 

vfio-bind 0000:01:00.0 0000:01:00.1 0000:09:00.0 0000:00:14.0 0000:00:1b.0

 

Then I ran...

 

nano /etc/libvirt/qemu.conf

 

and changed to this...

 

cgroup_device_acl = [
    "/dev/null", "/dev/full", "/dev/zero",
    "/dev/random", "/dev/urandom",
    "/dev/ptmx", "/dev/kvm", "/dev/kqemu",
    "/dev/rtc","/dev/vfio/1","/dev/vfio/4","/dev/vfio/8","/dev/vfio/20","/dev/hpet", "/dev/vfio/vfio"
]

 

Based on this...

 

root@media:/etc/libvirt# readlink /sys/bus/pci/devices/0000:01:00.0/iommu_group
../../../../kernel/iommu_groups/1
root@media:/etc/libvirt# readlink /sys/bus/pci/devices/0000:01:00.1/iommu_group
../../../../kernel/iommu_groups/1
root@media:/etc/libvirt# readlink /sys/bus/pci/devices/0000:09:00.0/iommu_group
../../../../kernel/iommu_groups/20
root@media:/etc/libvirt# readlink /sys/bus/pci/devices/0000:00:14.0/iommu_group
../../../kernel/iommu_groups/4
root@media:/etc/libvirt# readlink /sys/bus/pci/devices/0000:00:1b.0/iommu_group
../../../kernel/iommu_groups/8

 

then...

 

/etc/rc.d/rc.libvirt restart

 

and got...

 

Waiting machines
Stopping libvirtd...
Starting libvirtd...

 

then...

 

cd /mnt/cache/VM/Windows7
virsh define windows7.xml
virsh start windows7

 

then got...

 

error: Failed to start domain windows7
error: internal error: early end of file from monitor: possible problem:
qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: error, group 1 is not viable, please ensure all devices  within the iommu_group are bound to their vfio bus driver.
qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: failed to get group 1
qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device initialization failed.
qemu-system-x86_64: -device vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device 'vfio-pci' could not be initialized

 

Here is my xml file...

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
<name>windows7</name>
<uuid>3baf925d-74d8-4806-a6fe-330d911f28ce</uuid>

<memory unit='GB'>4</memory>
<currentMemory unit='GB'>4</currentMemory>

<vcpu placement='static'>2</vcpu>

<resource>
	<partition>/machine</partition>
</resource>

<os>
	<type arch='x86_64' machine='q35'>hvm</type>
	<boot dev='hd'/>
</os>

<features>
	<acpi/>
	<apic/>
</features>

<cpu mode='host-passthrough'>
</cpu>

<clock offset='localtime'/>

<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>

<devices>

	<emulator>/usr/bin/qemu-system-x86_64</emulator>

<!-- VIRTUAL DISK (QCOW2)-->
	<disk type='file' device='disk'>
		<driver name='qemu' type='qcow2'/>
		<source file='/mnt/cache/VM/Windows7/windows7.qcow2'/>
		<target dev='vda' bus='virtio'/>
	</disk>

<!-- VIRTUAL CD-ROM (ISO) -->
	<disk type='file' device='cdrom'>
		<source file='/mnt/user/backup/Programs/Windows_ISOs/Windows7rc21.iso'/>
		<target dev='sdc' bus='sata'/>
		<readonly/>
	</disk>

<!-- VIRTUAL CD-ROM (ISO) -->
	<disk type="file" device="cdrom">
		<source file="/mnt/cache/VM/Windows7/virtio-win-0.1-81.iso" />
		<target dev="sdd" bus="sata" />
		<readonly/>
	</disk>

<!--	<graphics type="vnc" port="5902">
		<listen type="address" address="0.0.0.0" />
	</graphics> -->

	<controller type='sata' index='0'>
	</controller>
	<controller type='pci' index='0' model='pcie-root'>
	</controller>
	<controller type='pci' index='1' model='dmi-to-pci-bridge'>
	</controller>
	<controller type='pci' index='2' model='pci-bridge'>
	</controller>
<!--	<controller type='usb' index='0' model='none'>
	</controller> -->
	<controller type='usb' index='0' model='ich9-ehci1'>
		<address type='pci' domain='0' bus='0' slot='4' function='7'/>
	</controller>
	<controller type='usb' index='0' model='ich9-uhci1'>
		<master startport='0'/>
		<address type='pci' domain='0' bus='0' slot='4' function='0' multifunction='on'/>
	</controller>

	<interface type='bridge'>
		<source bridge='br0'/>
		<mac address='00:16:3e:c7:c7:c7'/>
	</interface>

<!--	<hub type='usb'>
		<address type='usb' bus='0' port='1'/>
	</hub> -->

	<input type='tablet' bus='usb'/>

	<memballoon model='virtio'/>

</devices>

<seclabel type='none'/>	
<qemu:commandline>
	<qemu:arg value='-device'/>
	<qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=01:00.1,bus=root.1,addr=00.1'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=09:00.0,bus=pcie.0'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=00:14.0,bus=pcie.0'/>
	<qemu:arg value='-device'/>
	<qemu:arg value='vfio-pci,host=00:1b.0,bus=pcie.0'/>		
</qemu:commandline>

</domain>

 

I'll probably restart unRAID and try again, but in the meantime, any thoughts on a resolution?

Link to comment

The possibility of this seems very awesome.  There is a bunch of config info in here....  Can I ask a few questions Peter?  That being the first one.

 

2.  With KVM I could run Win7 w/ remote and TV Tuner and have the video output to HDMI to my projector in the same box as unRAID?

3.  Is this an option for an AMD A10, or just stand alone graphics cards?

 

Edit:  Maybe some links to info that you already know that I have no idea about?

 

Thanks!

Link to comment

2.  With KVM I could run Win7 w/ remote and TV Tuner and have the video output to HDMI to my projector in the same box as unRAID?

3.  Is this an option for an AMD A10, or just stand alone graphics cards?

 

2. yes, you should be able to do that (I've not had success yet, but it is possible).  The next beta should make it much easier (I hope).

 

3. if A10 is an integrated graphics processor on the CPU, then no, currently.  It's theoretically possible, but LimeTech has not gotten it to work on any of their test machines yet, so you'll probably need a separate video card for the time being.

Link to comment

Thanks for the quick response Justin.  This could REALLY be meaningful.  It would take my 3 current unRAID builds and turn them into Media Center PC's.  Only ran across this due to talking a friend into building up an unRAID server in the last week.  Happy I came back to the site to see what was "almost new".

Link to comment

Thanks for the quick response Justin.  This could REALLY be meaningful.  It would take my 3 current unRAID builds and turn them into Media Center PC's.  Only ran across this due to talking a friend into building up an unRAID server in the last week.  Happy I came back to the site to see what was "almost new".

 

You can do this today using the Xen virtualisation tools built into unRAID 6 for several betas now. It's a little easier as it's been around longer and people have had longer to figure out how it works.

 

For example, I have a headless Win7 TVServer and 2x Win8 HTPCs outputting via HDMI with IR control all running in VMs on top of my unRAID server. (check out my blog for the full story).

 

Now, the reason KVM has been introduced to beta 6 is that LimeTech (and users) were finding some issues around Xen though it's been mostly stable for me. I'm waiting for the next beta release and (hopefully) some virtualisation updates before I start reconfiguring.

 

Peter

 

Link to comment

Peter -- I'm trying to follow along on this, but I'm getting the following when I use your vfio-bind script.

 

vfio-bind 0000:01:00.0 0000:01:00.1

./vfio-bind: line 11: /sys/bus/pci/drivers/vfio-pci/new_id: Read-only file system
./vfio-bind: line 11: /sys/bus/pci/drivers/vfio-pci/new_id: Read-only file system

 

Any ideas on what's going on.  I ran checkdisk on the USB stick and it came back fine.

 

Troy

Link to comment

Peter -- I'm trying to follow along on this, but I'm getting the following when I use your vfio-bind script.

 

vfio-bind 0000:01:00.0 0000:01:00.1

./vfio-bind: line 11: /sys/bus/pci/drivers/vfio-pci/new_id: Read-only file system
./vfio-bind: line 11: /sys/bus/pci/drivers/vfio-pci/new_id: Read-only file system

 

Any ideas on what's going on.  I ran checkdisk on the USB stick and it came back fine.

 

Troy

 

 

I got exactly the same output, I really want to get this working.

 

I had XEN working but i wasn't 100% convinced with its windows stability so I'd really like to try to get KVM up and running as a comparison. A lot of hoops i know but if its more stable with better pass through it'll be worth it.

Link to comment

Can you print out result of following command, but I have no clue what it cold be, your system is fully capable for pass trough (cpu & motherboard) ?

 

 ls -altr /dev/vfio/

 lspci -knv

 ls -altr /sys/bus/pci/drivers/vfio-pci/

 dmesg | grep IOMMU

 

//Peter

Link to comment

Intel HD Graphics 4000 Pass trough SUCCESS!!

 

Manage to pass trough my HD graphics 4000 to my W7 machine!

 

I was partly successful with W8 as well, it was passing trough the device, I could update the drivers for Intel HD, after that all was OK!, but after reboot it will not start, I got the "blue screen of death" I will try to uninstall all drivers from my previuse GPU, and see if this is the route cause.

 

//Peter

 

 

w7igpu.JPG.37ef4a8779a29a0b27103b2033abb892.JPG

Link to comment

 ls -altr /dev/vfio/

 

total 0

drwxr-xr-x  2 root root      60 Jul  7 20:48 ./

crw-rw-rw-  1 root root 10, 196 Jul  7 20:48 vfio

drwxr-xr-x 13 root root    3640 Jul  7 20:51 ../

 

 lspci -knv

 

http://pastebin.com/Gvw3nLsA

 

 ls -altr /sys/bus/pci/drivers/vfio-pci/

 

total 0

drwxr-xr-x 20 root root    0 Jul  8 09:22 ../

--w-------  1 root root 4096 Jul  8 09:22 unbind

--w-------  1 root root 4096 Jul  8 09:22 uevent

--w-------  1 root root 4096 Jul  8 09:22 remove_id

--w-------  1 root root 4096 Jul  8 09:22 new_id

lrwxrwxrwx  1 root root    0 Jul  8 09:22 module -> ../../../../module/vfio_pci/

--w-------  1 root root 4096 Jul  8 09:22 bind

drwxr-xr-x  2 root root    0 Jul  8 09:22 ./

 

 dmesg | grep IOMMU

 

Intel-IOMMU: enabled

dmar: IOMMU 0: reg_base_addr fed90000 ver 1:0 cap c0000020660462 ecap f0101a

dmar: IOMMU 1: reg_base_addr fed91000 ver 1:0 cap d2008020660462 ecap f010da

IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1

IOMMU 0 0xfed90000: using Queued invalidation

IOMMU 1 0xfed91000: using Queued invalidation

IOMMU: Setting RMRR:

IOMMU: Setting identity map for device 0000:00:02.0 [0x9f800000 - 0xaf9fffff]

IOMMU: Setting identity map for device 0000:00:14.0 [0x9c0d2000 - 0x9c0defff]

IOMMU: Setting identity map for device 0000:00:1a.0 [0x9c0d2000 - 0x9c0defff]

IOMMU: Setting identity map for device 0000:00:1d.0 [0x9c0d2000 - 0x9c0defff]

IOMMU: Prepare 0-16MiB unity mapping for LPC

IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 0xffffff]

Link to comment

Intel HD Graphics 4000 Pass trough SUCCESS!!

 

Manage to pass trough my HD graphics 4000 to my W7 machine!

 

I was partly successful with W8 as well, it was passing trough the device, I could update the drivers for Intel HD, after that all was OK!, but after reboot it will not start, I got the "blue screen of death" I will try to uninstall all drivers from my previuse GPU, and see if this is the route cause.

 

Fantastic news.  I might revisit this if you can get yours stable.  My HD5550 died, so I don't have any other card to try, but if you can get iGPU working, I'll spend some more time fighting my system to get this working.

 

Please keep us posted.

Link to comment

Anyone that can try this settings for Intel GPU? change to your devices.

 

 <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:02.0,bus=pcie.0,multifunction=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:1d.0,bus=pcie.0'/>
  </qemu:commandline>

 

//Peter

Link to comment

I've had pass through working using XEN, Hardware is ASROCK z77 Extreme 4, Intel i5 2500s, AMD 6450 HDD's etc

 

I really appreciate any help you can give me.

 

Output below

 

root@Tower:~# ls -altr /dev/vfio/
total 0
drwxr-xr-x  2 root root      60 Jul  8 17:49 ./
crw-rw-rw-  1 root root 10, 196 Jul  8 17:49 vfio
drwxr-xr-x 13 root root    3380 Jul  8 17:49 ../

 

 

root@Tower:~# lspci -knv
00:00.0 0600: 8086:0100 (rev 09)
Subsystem: 1849:0100
Flags: bus master, fast devsel, latency 0
Capabilities: [e0] Vendor Specific Information: Len=0c <?>
Kernel driver in use: snb_uncore

00:01.0 0604: 8086:0101 (rev 09) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: 0000e000-0000efff
Memory behind bridge: f7e00000-f7efffff
Prefetchable memory behind bridge: 00000000e0000000-00000000efffffff
Capabilities: [88] Subsystem: 1849:0101
Capabilities: [80] Power Management version 3
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [a0] Express Root Port (Slot+), MSI 00
Capabilities: [100] Virtual Channel
Capabilities: [140] Root Complex Link
Kernel driver in use: pcieport

00:02.0 0380: 8086:0102 (rev 09)
Subsystem: 1849:0102
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at f7400000 (64-bit, non-prefetchable) [size=4M]
Memory at d0000000 (64-bit, prefetchable) [size=256M]
I/O ports at f000 [size=64]
Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [d0] Power Management version 2
Capabilities: [a4] PCI Advanced Features

00:14.0 0c03: 8086:1e31 (rev 04) (prog-if 30 [XHCI])
Subsystem: 1849:1e31
Flags: bus master, medium devsel, latency 0, IRQ 43
Memory at f7f00000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [70] Power Management version 2
Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
Kernel driver in use: xhci_hcd

00:16.0 0780: 8086:1e3a (rev 04)
Subsystem: 1849:1e3a
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at f7f1a000 (64-bit, non-prefetchable) [size=16]
Capabilities: [50] Power Management version 3
Capabilities: [8c] MSI: Enable- Count=1/1 Maskable- 64bit+

00:1a.0 0c03: 8086:1e2d (rev 04) (prog-if 20 [EHCI])
Subsystem: 1849:1e2d
Flags: bus master, medium devsel, latency 0, IRQ 16
Memory at f7f18000 (32-bit, non-prefetchable) [size=1K]
Capabilities: [50] Power Management version 2
Capabilities: [58] Debug port: BAR=1 offset=00a0
Capabilities: [98] PCI Advanced Features
Kernel driver in use: ehci-pci

00:1b.0 0403: 8086:1e20 (rev 04)
Subsystem: 1849:1898
Flags: bus master, fast devsel, latency 0, IRQ 3
Memory at f7f10000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Capabilities: [60] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Capabilities: [130] Root Complex Link

00:1c.0 0604: 8086:1e10 (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
I/O behind bridge: 0000d000-0000dfff
Memory behind bridge: f7d00000-f7dfffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e10
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1c.3 0604: 8086:1e16 (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
I/O behind bridge: 0000c000-0000cfff
Memory behind bridge: f7c00000-f7cfffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e16
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1c.4 0604: 8086:1e18 (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=04, subordinate=04, sec-latency=0
Memory behind bridge: f7b00000-f7bfffff
Prefetchable memory behind bridge: 00000000f1000000-00000000f10fffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e18
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1c.5 0604: 8086:1e1a (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=05, subordinate=06, sec-latency=0
Memory behind bridge: f6800000-f70fffff
Prefetchable memory behind bridge: 00000000f0000000-00000000f0ffffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e1a
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1c.6 0604: 8086:1e1c (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=07, subordinate=07, sec-latency=0
Memory behind bridge: f7800000-f79fffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e1c
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1c.7 0604: 8086:1e1e (rev c4) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=08, subordinate=08, sec-latency=0
Memory behind bridge: f7a00000-f7afffff
Capabilities: [40] Express Root Port (Slot+), MSI 00
Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [90] Subsystem: 1849:1e1e
Capabilities: [a0] Power Management version 2
Kernel driver in use: pcieport

00:1d.0 0c03: 8086:1e26 (rev 04) (prog-if 20 [EHCI])
Subsystem: 1849:1e26
Flags: bus master, medium devsel, latency 0, IRQ 23
Memory at f7f17000 (32-bit, non-prefetchable) [size=1K]
Capabilities: [50] Power Management version 2
Capabilities: [58] Debug port: BAR=1 offset=00a0
Capabilities: [98] PCI Advanced Features
Kernel driver in use: ehci-pci

00:1f.0 0601: 8086:1e44 (rev 04)
Subsystem: 1849:1e44
Flags: bus master, medium devsel, latency 0
Capabilities: [e0] Vendor Specific Information: Len=0c <?>

00:1f.2 0106: 8086:1e02 (rev 04) (prog-if 01 [AHCI 1.0])
Subsystem: 1849:1e02
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 49
I/O ports at f0b0 [size=8]
I/O ports at f0a0 [size=4]
I/O ports at f090 [size=8]
I/O ports at f080 [size=4]
I/O ports at f060 [size=32]
Memory at f7f16000 (32-bit, non-prefetchable) [size=2K]
Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [70] Power Management version 3
Capabilities: [a8] SATA HBA v1.0
Capabilities: [b0] PCI Advanced Features
Kernel driver in use: ahci
Kernel modules: ahci

00:1f.3 0c05: 8086:1e22 (rev 04)
Subsystem: 1849:1e22
Flags: medium devsel, IRQ 18
Memory at f7f15000 (64-bit, non-prefetchable) [size=256]
I/O ports at f040 [size=32]
Kernel modules: i2c_i801

01:00.0 0300: 1002:6779 (prog-if 00 [VGA controller])
Subsystem: 174b:e164
Flags: fast devsel, IRQ 11
Memory at e0000000 (64-bit, prefetchable) [disabled] [size=256M]
Memory at f7e20000 (64-bit, non-prefetchable) [disabled] [size=128K]
I/O ports at e000 [disabled] [size=256]
Expansion ROM at f7e00000 [disabled] [size=128K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting

01:00.1 0403: 1002:aa98
Subsystem: 174b:aa98
Flags: bus master, fast devsel, latency 0, IRQ 10
Memory at f7e40000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting

02:00.0 0200: 8086:10b9 (rev 06)
Subsystem: 8086:1083
Flags: bus master, fast devsel, latency 0, IRQ 50
Memory at f7d40000 (32-bit, non-prefetchable) [size=128K]
Memory at f7d20000 (32-bit, non-prefetchable) [size=128K]
I/O ports at d000 [size=32]
Expansion ROM at f7d00000 [disabled] [size=128K]
Capabilities: [c8] Power Management version 2
Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [e0] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Device Serial Number 00-1b-21-ff-ff-26-53-e7
Kernel driver in use: e1000e
Kernel modules: e1000e

03:00.0 0106: 1b21:0612 (rev 01) (prog-if 01 [AHCI 1.0])
Subsystem: 1849:0612
Flags: bus master, fast devsel, latency 0, IRQ 51
I/O ports at c050 [size=8]
I/O ports at c040 [size=4]
I/O ports at c030 [size=8]
I/O ports at c020 [size=4]
I/O ports at c000 [size=32]
Memory at f7c00000 (32-bit, non-prefetchable) [size=512]
Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [78] Power Management version 3
Capabilities: [80] Express Legacy Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: ahci
Kernel modules: ahci

04:00.0 0200: 14e4:16b1 (rev 10)
Subsystem: 1849:96b1
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at f1010000 (64-bit, prefetchable) [size=64K]
Memory at f1000000 (64-bit, prefetchable) [size=64K]
Expansion ROM at f7b00000 [disabled] [size=2K]
Capabilities: [48] Power Management version 3
Capabilities: [58] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [a0] MSI-X: Enable+ Count=5 Masked-
Capabilities: [ac] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [13c] Device Serial Number 00-00-bc-5f-f4-fb-15-11
Capabilities: [150] Power Budgeting <?>
Capabilities: [160] Virtual Channel
Kernel driver in use: tg3
Kernel modules: tg3

05:00.0 0604: 1b21:1080 (rev 04) (prog-if 01 [subtractive decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=05, secondary=06, subordinate=06, sec-latency=32
Memory behind bridge: f6800000-f70fffff
Prefetchable memory behind bridge: 00000000f0000000-00000000f0ffffff
Capabilities: [c0] Subsystem: 1849:1080

06:00.0 0300: 102b:051b (prog-if 00 [VGA controller])
Subsystem: 102b:0100
Flags: bus master, medium devsel, latency 32, IRQ 10
Memory at f0000000 (32-bit, prefetchable) [size=16M]
Memory at f7010000 (32-bit, non-prefetchable) [size=16K]
Memory at f6800000 (32-bit, non-prefetchable) [size=8M]
Expansion ROM at f7000000 [disabled] [size=64K]

07:00.0 0400: 14f1:8852 (rev 04)
Subsystem: 6981:8888
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at f7800000 (64-bit, non-prefetchable) [size=2M]
Capabilities: [40] Express Endpoint, MSI 00
Capabilities: [80] Power Management version 2
Capabilities: [90] Vital Product Data
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Advanced Error Reporting
Capabilities: [200] Virtual Channel

08:00.0 0c03: 1b21:1042 (prog-if 30 [XHCI])
Subsystem: 1849:1042
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at f7a00000 (64-bit, non-prefetchable) [size=32K]
Capabilities: [50] MSI: Enable- Count=1/8 Maskable- 64bit+
Capabilities: [68] MSI-X: Enable+ Count=8 Masked-
Capabilities: [78] Power Management version 3
Capabilities: [80] Express Legacy Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: xhci_hcd

root@Tower:~# ls -altr /sys/bus/pci/drivers/vfio-pci/
total 0
--w-------  1 root root 4096 Jul  8 18:18 [0m[00mnew_id[0m
drwxr-xr-x 21 root root    0 Jul  8 18:18 [01;34m..[0m/
--w-------  1 root root 4096 Jul  8 18:20 [00munbind[0m
--w-------  1 root root 4096 Jul  8 18:20 [00muevent[0m
--w-------  1 root root 4096 Jul  8 18:20 [00mremove_id[0m
lrwxrwxrwx  1 root root    0 Jul  8 18:20 [01;36mmodule[0m -> [01;34m../../../../module/vfio_pci[0m/
--w-------  1 root root 4096 Jul  8 18:20 [00mbind[0m
drwxr-xr-x  2 root root    0 Jul  8 18:20 [01;34m.[0m/
root@Tower:~# dmesg | grep IOMMU
Intel-IOMMU: enabled
dmar: IOMMU 0: reg_base_addr fed90000 ver 1:0 cap c0000020e60262 ecap f0101a
dmar: IOMMU 1: reg_base_addr fed91000 ver 1:0 cap c9008020660262 ecap f0105a
IOAPIC id 2 under DRHD base  0xfed91000 IOMMU 1
IOMMU 0 0xfed90000: using Queued invalidation
IOMMU 1 0xfed91000: using Queued invalidation
IOMMU: Setting RMRR:
IOMMU: Setting identity map for device 0000:00:02.0 [0xcb800000 - 0xcf9fffff]
IOMMU: Setting identity map for device 0000:00:14.0 [0xc94f6000 - 0xc9528fff]
IOMMU: Setting identity map for device 0000:00:1a.0 [0xc94f6000 - 0xc9528fff]
IOMMU: Setting identity map for device 0000:00:1d.0 [0xc94f6000 - 0xc9528fff]
IOMMU: Prepare 0-16MiB unity mapping for LPC
IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 0xffffff][/size]
root@Tower:~# 

 

 

[/code][/code]

Link to comment

Anyone that can try this settings? change to your devices.

 

 <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:02.0,bus=pcie.0,multifunction=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=00:1d.0,bus=pcie.0'/>
  </qemu:commandline>

 

What devices are they (00:02.0 & 00:1d.0)?  I assume one is the iGPU, and the other is something unrelated.  If correct, you're not passing the HDMI Audio of the iGPU in this case, so how are you passing the sound out of the VM?

//Peter

Link to comment

I've had pass through working using XEN, Hardware is ASROCK z77 Extreme 4, Intel i5 2500s, AMD 6450 HDD's etc

 

I really appreciate any help you can give me.

 

Output below

 

Please edit your post to put the output into a code box (modify post, select the whole output, then click the button with the pound sign), so it's not so large and long.

Link to comment

I've had pass through working using XEN, Hardware is ASROCK z77 Extreme 4, Intel i5 2500s, AMD 6450 HDD's etc

 

I really appreciate any help you can give me.

 

Output below

 

Please edit your post to put the output into a code box (modify post, select the whole output, then click the button with the pound sign), so it's not so large and long.

 

 

 

Sorry.....my bad!  ::)

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.