I'm trying to pass-through my VGA card to a guest session.
I found:
http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM - which is
very frustrating because there's no date on the documentation. I suspect it's
old. It does clearly say that you must have VT-d support for pci pass-through. It then
goes on to say "Some work towards allowing this ["software pass-through"]
were done, but the code never made it into KVM". If this is old is there now support
for PCI pass-through on hardware that doesn't support VT-d?
I have a HP p7-1456c which has:
Intel Core i5-3330 Processor (VT-x=yes, VT-d=yes)
http://ark.intel.com/products/65509/Intel-Core-i5-3330-Processor-6M-Cache...
on a MB: H-Joshua-H61-UATX (with specs that say *nothing* about virtualization)
http://h10025.www1.hp.com/ewfrf/wc/document?cc=us&lc=en&docname=c...
and the H-Joshua-H61-UATX uses the Intel H61 Express Chipset (VT-d=No)
http://ark.intel.com/products/52806/Intel-BD82H61-PCH?q=intel%20h61%20exp...
On the KVM how to assign devices page it provides a way to verify IOMMU support on Intel:
]# dmesg | grep -e DMAR -e IOMMU
[ 0.000000] ACPI: DMAR 00000000d8d29460 000B0 (v01 HPQOEM SLIC-CPC 00000001 INTL
00000001)
[ 0.023074] dmar: IOMMU 0: reg_base_addr fed90000 ver 1:0 cap c0000020e60262 ecap
f0101a
[ 0.023078] dmar: IOMMU 1: reg_base_addr fed91000 ver 1:0 cap c9008020660262 ecap
f0105a
[ 0.023151] IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 1
Does this mean I do have VT-d/IOMMU support???
I attempted to follow the basic instructions to pass through my VGA card:
]$ lspci -nn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core
processor Graphics Controller [8086:0152] (rev 09)
Then added to my domain definition:
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0000' bus='0x00' slot='0x02'
function='0x0'/>
</source>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x08' function='0x0'/>
</hostdev>
With that added code I consistently get "Connection to guest failed" messages
and the guest fails to start.
/var/log/libvirt/qemu is empty. No log.
So my 1st question is can I do this given my hardware? If the answer is "yes"
then this is where I'm stuck.
Additionally, I tried:
]$ virsh nodedev-detach pci_0000_00_02_0
error: Failed to detach device pci_0000_00_02_0
error: Failed to add PCI device ID '8086 0152' to pci-stub: Permission denied
My thinking was simply to verify if I could manually detach the device. I couldn't
find a reference searching for this error. Any help would be greatly appreciated!
Thank you!