I'm trying to set up a virtualbox-5.1 with PCI passthrough on
host Ubuntu 17.04 (4.10.0-28-generic #32-Ubuntu SMP Fri Jun 30 05:32:18 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux)
installed on PC with
CPU Intel® Core™2 Quad Processor Q9400
RAM 4Gb
integrated video
PCI card trying to passtrough is a National Instruments DAC card
guest OS is Windows 2000.
Unfortunately, for now I was not able to make guest OS to see the PCI card, that is why I'd like to ask for some help. Let start from the very beginning
1. VT-d and IOMMU are enabled from BIOS. Kernel log contains the following
Code: Select all
Jul 18 14:21:14 epitt-PC kernel: [ 0.000000] DMAR: IOMMU enabled
Jul 18 14:21:14 epitt-PC kernel: [ 0.024112] DMAR: Host address width 36
Jul 18 14:21:14 epitt-PC kernel: [ 0.024113] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
Jul 18 14:21:14 epitt-PC kernel: [ 0.024122] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap c9008020e30272 ecap 1000
Jul 18 14:21:14 epitt-PC kernel: [ 0.024123] DMAR: DRHD base: 0x000000fed91000 flags: 0x0
Jul 18 14:21:14 epitt-PC kernel: [ 0.024126] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap c0000020630272 ecap 1000
Jul 18 14:21:14 epitt-PC kernel: [ 0.024127] DMAR: DRHD base: 0x000000fed92000 flags: 0x0
Jul 18 14:21:14 epitt-PC kernel: [ 0.024130] DMAR: dmar2: reg_base_addr fed92000 ver 1:0 cap c0000020630272 ecap 1000
Jul 18 14:21:14 epitt-PC kernel: [ 0.024130] DMAR: DRHD base: 0x000000fed93000 flags: 0x1
Jul 18 14:21:14 epitt-PC kernel: [ 0.024133] DMAR: dmar3: reg_base_addr fed93000 ver 1:0 cap c9008020630272 ecap 1000
Jul 18 14:21:14 epitt-PC kernel: [ 0.024134] DMAR: RMRR base: 0x000000d7c00000 end: 0x000000dfffffff
Jul 18 14:21:14 epitt-PC kernel: [ 0.024135] DMAR: RMRR base: 0x000000cffbc000 end: 0x000000cfffffff
Jul 18 14:21:14 epitt-PC kernel: [ 0.123762] DMAR: Forcing write-buffer flush capability
Jul 18 14:21:14 epitt-PC kernel: [ 0.123763] DMAR: Disabling IOMMU for graphics on this chipset
Jul 18 14:21:14 epitt-PC kernel: [ 0.809176] DMAR: No ATSR found
Jul 18 14:21:14 epitt-PC kernel: [ 0.810237] DMAR: dmar2: Using Register based invalidation
Jul 18 14:21:14 epitt-PC kernel: [ 0.810245] DMAR: dmar0: Using Register based invalidation
Jul 18 14:21:14 epitt-PC kernel: [ 0.810250] DMAR: dmar3: Using Register based invalidation
Jul 18 14:21:14 epitt-PC kernel: [ 0.810264] DMAR: Setting RMRR:
Jul 18 14:21:14 epitt-PC kernel: [ 0.810322] DMAR: Setting identity map for device 0000:00:1a.0 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810372] DMAR: Setting identity map for device 0000:00:1a.1 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810422] DMAR: Setting identity map for device 0000:00:1a.2 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810469] DMAR: Setting identity map for device 0000:00:1a.7 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810517] DMAR: Setting identity map for device 0000:00:1d.0 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810564] DMAR: Setting identity map for device 0000:00:1d.1 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810614] DMAR: Setting identity map for device 0000:00:1d.2 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810664] DMAR: Setting identity map for device 0000:00:1d.7 [0xcffbc000 - 0xcfffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810675] DMAR: Prepare 0-16MiB unity mapping for LPC
Jul 18 14:21:14 epitt-PC kernel: [ 0.810716] DMAR: Setting identity map for device 0000:00:1f.0 [0x0 - 0xffffff]
Jul 18 14:21:14 epitt-PC kernel: [ 0.810857] DMAR: Intel(R) Virtualization Technology for Directed I/O
Code: Select all
grep CONFIG_DMAR /boot/config-`uname -r`
CONFIG_DMAR_TABLE=y
CONFIG_DMARD09=m
CONFIG_DMARD10=m
2. Installation of virtualbox was very smooth, all modules seems to be added to the kernel
Code: Select all
lsmod | grep vbox*
vboxpci 24576 0
vboxnetadp 28672 0
vboxnetflt 28672 0
vboxdrv 471040 3 vboxnetadp,vboxnetflt,vboxpci
Does it mean that I need to install another extension pack, or PCI passthrough is already integrated in virtualbox-5.1 main installer?
3. I start virtual box as
Code: Select all
virtualbox "EpiTT-Windows 2000" --pciattach 11:01.0@01:02.0
Is it enough to start virtualbox as a simple user, or I should do it as root to get PCI passtrough working?
4. I start VM with "Enable VT-x/AMD-V" and "Enable Nested paging" options in Settings -> System -> Acceleration, but in VM status bar window Additional feature status shows "VT-x/AMD-V: Active"; "Nested paging:Inactive". A similar situation was already discussed on this forum at
Code: Select all
viewtopic.php?p=64833
Are my troubles with PCI passthrough caused by the fact that core2quad just doesn't support nested paging, so I have to stop trying to get it working on this hardware?
Sorry, for a very long post, but I tried to be as specific as possible.
Thank you in advance for any help and/or suggestions