
Issue 11
© Solarflare Communications 2014
333
Solarflare Server Adapter
User Guide
Limitations
• The Citrix XenTools bundled with XenServer6 do not support RSS. Therefore the Solarflare SR-
IOV accelerated drivers currently do not support RSS on Windows.
Known Issues
• Some hardware platforms are unable to support 127 VFs on both ports simultaneously. The
current workaround is to reduce the number of VFs exposed by the adapter using
sfboot
.
• VFs no longer appear in
xl pci-list
after a VM is rebooted. The VFs will be visible using
lspci/device manager. This is a Citrix XenServer 6 toolstack issue that will be addressed in future
XenServer versions.
• Migrating a Windows VM disables GSO (Generic Segmentation Offload), thereby reducing VM-
VM bandwidth between VMs on the same host. This is a XenTools bug in the version released
with Citrix XenServer 6, and should be resolved in a future Citrix hotfix.
• Do not reload the dom0 sfc driver when VFs are in use. This is an upstream Linux kernel bug.
• When a Red Hat Enterprise Linux 6 guest is migrated, occasionally the guest kernel fails to notice
either the VF unplug before migration or the VF hotplug after migration. This issue is believed to
be a Red Hat kernel bug and is under investigation. This issue is not seen on Windows guests.
• VF PCI-passthrough when using RHEL6.2 or newer guests fails due to loss of interrupt to the VF
by the hypervisor. This issue is seen only when the VF is passed through to the guest. This issue
does not exist on RHEL6.1 guests. This is an issue in the XenServer hypervisor.
• The Xen-tools rpm does not work on a RHEL6.0 guest. This is a Citrix bug.
•
The xs-sriov-accel patch is overwritten after the hotfixes are applied to XenServer6. To get
around this issue reapply changes using the following command line:
cd / && patch -p1 < /var/xapi/patches/qemu.patch
For reference the patch file is:
diff -rup a/opt/xensource/libexec/qemu-dm-wrapper
b/opt/xensource/libexec/qemu-dm-wrapper
--- a/opt/xensource/libexec/qemu-dm-wrapper2011-08-12
18:03:28.000100
+++ b/opt/xensource/libexec/qemu-dm-wrapper2011-08-12
18:04:01.000100
@@ -82,6 +82,7 @@ def main(argv):
qemu_dm = '/usr/lib/xen/bin/qemu-dm'
domid = int(argv[1])
qemu_args = ['qemu-dm-%d'%domid] + argv[2:]
+
qemu_args.append("-priv")
if is_sdk() is True:
return fake_dm(domid)