• Leon Romanovsky's avatar
    PCI/IOV: Add sysfs MSI-X vector assignment interface · c3d5c2d9
    Leon Romanovsky authored
    A typical cloud provider SR-IOV use case is to create many VFs for use by
    guest VMs. The VFs may not be assigned to a VM until a customer requests a
    VM of a certain size, e.g., number of CPUs. A VF may need MSI-X vectors
    proportional to the number of CPUs in the VM, but there is no standard way
    to change the number of MSI-X vectors supported by a VF.
    
    Some Mellanox ConnectX devices support dynamic assignment of MSI-X vectors
    to SR-IOV VFs. This can be done by the PF driver after VFs are enabled,
    and it can be done without affecting VFs that are already in use. The
    hardware supports a limited pool of MSI-X vectors that can be assigned to
    the PF or to individual VFs.  This is device-specific behavior that
    requires support in the PF driver.
    
    Add a read-only "sriov_vf_total_msix" sysfs file for the PF and a writable
    "sriov_vf_msix_count" file for each VF. Management software may use these
    to learn how many MSI-X vectors are available and to dynamically assi...
    c3d5c2d9
sysfs-bus-pci 16.3 KB