Hi all!
I'm trying to passthrough a NI PCI-6025E card from Xen
version 4.8.0 (Ubuntu 4.8.0-1ubuntu2.2) to HVM Windows
2000. The pass through itself is done accordingly to
documentation. Guest OS determines the card as unknown PCI
device. Installing the driver allows to recognize device as Data
Acquisition Device / PCI-6028E in Windows Device Manager and in
NI software. However, running tests from NI test panels fails
with "The device is not responding to the selected base address"
(in fact it seems to be "overFlowError" with detailed
description "Because of system and/or bus-bandwidth limitations,
the driver could not read data from the device fast enough to
keep up with the device throughput; the onboard device memory
reported an overflow error"). QEMU log file contains an error "Write-back to unknown field 0x08
(partially) inhibited (0x000000), If the
device doesn't work, try enabling permissive mode (unsafe) and if it
helps report the problem to xen-devel".
Adding permissive=1 to the pci section of the domain
configuration file makes the error from the QEMU log disappear,
but the card itself still can not pass the test in the guest
system.
I don't have a deep knowledge in device passthroughing, but as far
as I understand passthrough means that everything from the virtual
machine is just passed to the real one. This leads to a conclusion
that the main trouble is to pass the device to the guest, once
device is seen by the guest everything should be fine. Am I
understanding something wrong?
The device shows in xl pci-assignable-list in Dom0
Relevant part from xl dmesg
(XEN) Initing memory sharing.
(XEN) Intel VT-d iommu 1 supported page sizes: 4kB.
(XEN) Intel VT-d iommu 0 supported page sizes: 4kB.
(XEN) Intel VT-d iommu 2 supported page sizes: 4kB.
(XEN) Intel VT-d Snoop Control not enabled.
(XEN) Intel VT-d Dom0 DMA Passthrough not enabled.
(XEN) Intel VT-d Queued Invalidation not enabled.
(XEN) Intel VT-d Interrupt Remapping not enabled.
(XEN) Intel VT-d Posted Interrupt not enabled.
(XEN) Intel VT-d Shared EPT tables not enabled.
(XEN) I/O virtualisation enabled
(XEN) - Dom0 mode: Relaxed
(XEN) Interrupt remapping disabled
Can you help me to solve/debug this issue, please? Any ideas,
guesses or suggestions are welcome.
Thank you in advance
Ivan