KVM - The Linux Kernel-Based Virtual Machine
News, Blogs and Resources on the Linux (KVM) Kernel-Based Virtual Machine

Problem with Vt-d and Intel 82574 NIC

No replies
Drew22502
Offline
Joined: Jun 14 2011
Points: 3

Hi,

I am trying to use Vt-d to pass through an Intel 82574 NIC which is connected to the PCH. I am using qemu-kvm 12.5, Linux 2.6.29 and Intel Xeon3400 series CPU.

- I have verified Vt-d is enabled in BIOS.

- I have enabled the following in the linux config:

CONFIG_DMAR=y
CONFIG_DMAR_DEFAULT_ON=y
CONFIG_INTR_REMAP=y
CONFIG_PCI_STUB=y

- I have added intel_iommu=1 to the kernel command line

- I see the following during boot:

[ 3.150016] DMAR:Host address width 36
[ 3.160001] DMAR:DRHD (flags: 0x00000001)base: 0x00000000fed90000
[ 3.170006] DMAR:RMRR base: 0x00000000df5c1000 end: 0x00000000df5cefff
[ 3.180051] IOMMU 0xfed90000: using Queued invalidation
[ 3.190001] IOMMU: Setting identity map for device 0000:00:1d.0 [0xdf5c1000 - 0xdf5cf000]
[ 3.200032] IOMMU: Setting identity map for device 0000:00:1a.0 [0xdf5c1000 - 0xdf5cf000]
[ 3.210040] IOMMU: gfx device 0000:14:00.0 1-1 mapping
[ 3.220001] IOMMU: Setting identity map for device 0000:14:00.0 [0x0 - 0x9c000]
[ 3.230060] IOMMU: Setting identity map for device 0000:14:00.0 [0x100000 - 0xdf458000]
[ 3.453208] IOMMU: Setting identity map for device 0000:14:00.0 [0xdf620000 - 0xdf621000]
[ 3.460007] IOMMU: Setting identity map for device 0000:14:00.0 [0xdf694000 - 0xdf800000]
[ 3.470142] IOMMU: Setting identity map for device 0000:14:00.0 [0x100000000 - 0x420000000]
[ 4.218950] IOMMU: Prepare 0-16M unity mapping for LPC
[ 4.220001] IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 0x1000000]
[ 4.240898] PCI-DMA: Intel(R) Virtualization Technology for Directed I/O

- I use the pci-stub driver (e1000e is not in the host kernel so I don't need to unbind)

echo "8086 10d3" > /sys/bus/pci/drivers/pci-stub/new_id
echo 0000:12:00.0 > /sys/bus/pci/drivers/pci-stub/bind

I added "-pcidevice host=12:00.0" to qemu but I see no errors and I don't see the device in lspci on the geust.

Any ideas?

Post new comment

The content of this field is kept private and will not be shown publicly.
Type the characters you see in this picture. (verify using audio)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.