On 07/11/2012 04:24 PM, Rouven Sacha wrote:
Hi everybody!
On a Centos 5.8 with libvirt qemu-0.10.5-1.el5.2, libvirt-0.8.2-22.el5
and 2.6.18-308.11.1.el5 I have a Windows machine that used to have
pci-passthrough for a device enabled and working.
After an update (kernel, libvirt afaik) and a reboot, pci-passthrough
stopped working. Intel IOMMU is enabled (can see that from the dmesg
output).
This may be the result of a security fix in the new kernel. I know at
least one older version of Intel chips has a bug where IOMMU can be
exploited by a guest to take control over the host, so on those chips,
newer kernels now require to explicitly enable a kernel module parameter
to state that you are going to allow passthrough to the guest in spite
of the security risk. That is, you may need to use:
modprobe kvm allow_unsafe_assigned_interrupts=1
with your newer kernel. Unfortunately, I wasn't able to find a better
URL to a page documenting this issue, so that implies we probably also
need a patch to the libvirt documentation with regards to using device
passthrough.
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org