How to Enable Single Root I/O Virtualization SR-IOV on XenServer 6

Written by Thomas Poppelgaard on. Posted in XenServer

Summary

This article describes how to improve network performance in XenServer Feature Pack 1 Virtual Machines (VMs) by using a Network Interface Card (NIC) with Single Root I/O Virtualization (SR-IOV) support. Customers running XenServer 6.0 should refer to CTX131381 – How to Assign SR-IOV Enabled NICs with XenServer 6.0

Background

The SRIOV support is a method used for sharing I/O devices with near physical computer speed.

To learn more about SR-IOV, refer to PCI-SIG SR_IOV Primer.

Note 1:  A single SR-IOV NIC can support multiple Virtual Functions; each Virtual Function can be attached to a different VM as a 1:1 ratio (1 Virtual Function to 1 VM).

Note 2:  Xen Kernel version 3.4.2 supports the SR-IOV features for Red Hat Enterprise Linux or SUSE Linux Enterprise Server.  Citrix XenServer 5.5 however does not support it.

Note 3:  Citrix only has one NIC certified for SR-IOV on XenServer Feature Pack 1 (Intel 82599 10 gigabyte Ethernet Controller).

Procedure

Perform the following the steps to enable SR-IOV on XenServer Feature Pack 1.

  • Enable iommu on the XenServer host by running the following command within the domain 0 console: 
    /opt/xensource/libexec/xen-cmdline –set-xen iommu=1
  • Restart the host.
  • Assign one or more Virtual Functions to a VM. Obtain a list of Virtual Functions in the system by running the following command in the XenServer console: 
    lspci
    You should see many (such as 120) devices like this:
    07:10.0 Ethernet controller: Intel Corporation 82559 Ethernet Controller Virtual Function (rev 01)
  • Run the following command to assign one of these Virtual Functions to the target VM:
    xe vm-param-set other-config:pci=0/0000:07:10.0 uuid=uuid_of_the_VM
    Note

    : Substitute 07:10.0 in the example above with the PCI bus address of the Virtual Function that you want to assign.

  • Start the VM and install the correct Virtual Function driver in it.

More Information

CTX126624 – XenServer Single Route I/O Virtualization (SR-IOV) Support for Provisioning Services Virtual Machines

CTX131381 – How to Assign SR-IOV Enabled NICs with XenServer 6.0

Trackback from your site.

Leave a comment

Turn on pictures to see the captcha *

Recent Comments

Thomas Poppelgaard

|

Hi i have changed the colors. Is this better ?

I have also optimized the load of the articles (text, photo) compression it should be must faster now.

Let me hear your thoughts, thank you for using my site.
/Poppelgaard

ylzjyu

|

Hi:
Blog background is not comfortable

Like the old style

Edmund Fuerst

|

Really great job. Thank you!!!

Yusuf Assenjee

|

We have a model of the 3690 that does not have this setting in Uefi

infinite boot retry

we cannot get Xen 6 to boot.

Any hint?

ylzjyu

|

Hi,Poppelgaard
Thank you very much.
I like your site.

Feeds from Citrix Blog :