|
2014年8月8日 发布
Hardware Environment
1. CPU: 1.Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz
2. Motherboard: Dell Inc OX3D66
3. Kernel: linux-3.14.3(IOMMU, IPv4 net, IPv6 net, KVM audit...)
4. Graphic Card:
-NVIDIA for host booting
-FirePro W9000 for VM
5. KVM: latest version
Assign PCI devices to VM in KVM
Reference:
http://doc.opensuse.org/products/draft/SLES/SLES-kvm_sd_draft/cha.qemu.running.html
http://www.linux-kvm.org/page/How_to_assign_devices_with_VT-d_in_KVM
https://docs.google.com/document/d/1ef_nfl652L0HLn_wGvnpgjsBJd9LZzaV_-rIcEEoK8Y/edit
1. Modifying kernel config:
-Download linux kernel source
-make menuconfig
-Enable Bus options(In kernel version 3.x, Device Driver Options)
-"Support for DMA Remapping Devices" to "*“
-"Enable DMA Remapping Devices" to "*“
-"PCI Stub driver" to "*”
-"Support for Interrupt Remapping" to "*“
-make modules_install
2. VT-d enabled in boot option 
3. Modify vi /etc/default/grub에서 커널 라인에 intel_iommu=on추가
4. reboot
5. check IOMMU
dmsg | grep -e DMAR -e IOMMU
[ 0.000000] ACPI: DMAR bd3346f4 000158 (v01 DELL PE_SC3 00000001 DELL 00000001)
[ 0.000000] Intel-IOMMU: enabled
[ 3.217724] dmar: IOMMU 0: reg_base_addr d5000000 ver 1:0 cap d2078c106f0466 ecap f020de
[ 3.217735] dmar: IOMMU 1: reg_base_addr df900000 ver 1:0 cap d2078c106f0466 ecap f020de
[ 3.217966] IOMMU 0 0xd5000000: using Queued invalidation
[ 3.217972] IOMMU 1 0xdf900000: using Queued invalidation
[ 3.217981] IOMMU: Setting RMRR:
[ 3.217994] IOMMU: Setting identity map for device 0000:00:1d.0 [0xbf452000 - 0xbf452fff]
[ 3.218036] IOMMU: Setting identity map for device 0000:00:1a.0 [0xbf450000 - 0xbf450fff]
[ 3.218061] IOMMU: Setting identity map for device 0000:00:1a.0 [0xbf458000 - 0xbf46ffff]
[ 3.218067] IOMMU: Setting identity map for device 0000:00:1d.0 [0xbf458000 - 0xbf46ffff]
[ 3.218073] IOMMU: Prepare 0-16MiB unity mapping for LPC
[ 3.218084] IOMMU: Setting identity map for device 0000:00:1f.0 [0x0 - 0xffffff] |
|
|