hi all,
I got Intel Core i7 860 and testing PCI-Passthrough on it with Xen 3.4.0.
My machine has onboard SATA controller and it has 6 port. 4 ports are owned by BDF 00:1f.2 and other 2 ports are owned by BDF 00:1f.5. (yes, it is multi-function)
I confirmed IO Virtualization being enabled from xm dmesg. (but some functions seems being enabled)
(XEN) Intel VT-d Snoop Control supported.
(XEN) Intel VT-d DMA Passthrough not supported.
(XEN) Intel VT-d Queued Invalidation supported.
(XEN) Intel VT-d Interrupt Remapping not supported.
(XEN) I/O virtualisation enabled
(XEN) I/O virtualisation for PV guests enabled
I decided to pass 00:1f.5 through one PVHVM guest.
I executed following script to hide this pci device from dom0.
BDF=0000:00:1f.5
# Load xen-pciback
modprobe xen-pciback
# Unbind a PCI function from its driver as necessary
[ ! -e /sys/bus/pci/devices/$BDF/driver/unbind ] || \
echo -n $BDF > /sys/bus/pci/devices/$BDF/driver/unbind
# Add a new slot to the PCI Backend's list
echo -n $BDF > /sys/bus/pci/drivers/pciback/new_slot
# Now that the backend is watching for the slot, bind to it
echo -n $BDF > /sys/bus/pci/drivers/pciback/bind
And below is the output of xm pci-list-assignable-device
# xm pci-list-assignable-device
0000:00:1f.5
I thought it was ready to go. So i attached it to PVHVM guest.
# xm pci-attach [domU-id] 0000:00:1f.5
At the beginning, it seemed working well. But sometime later, i couldn't get any response from domU and dom0 and the messages outputted on dom0's console saying filesystem being corrupted. Any key could not be accepted and I force reboot it by pushing power button.
I did same test with Xen 4.0.0 but the result was same. Accurately, domU and dom0 stopped almost immediately as soon as i attached pci device in this case.
I suspect that using multi-function onboard SATA controller can occur this issue.
Any idea would be appreciated.
Thanks !
Kazuki