RE: [PATCH V3 0/3] VFIO SRIOV support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jike,
I don't have a plan to work on it in the near future, but we can share the code if you are interested.

Thanks,
Ilya

> -----Original Message-----
> From: Jike Song [mailto:jike.song@xxxxxxxxx]
> Sent: Wednesday, March 08, 2017 9:30 AM
> To: Ilya Lesokhin <ilyal@xxxxxxxxxxxx>
> Cc: kvm@xxxxxxxxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx; bhelgaas@xxxxxxxxxx;
> alex.williamson@xxxxxxxxxx; Noa Osherovich <noaos@xxxxxxxxxxxx>;
> Haggai Eran <haggaie@xxxxxxxxxxxx>; Or Gerlitz <ogerlitz@xxxxxxxxxxxx>;
> Liran Liss <liranl@xxxxxxxxxxxx>; You, Lizhen <lizhen.you@xxxxxxxxx>
> Subject: Re: [PATCH V3 0/3] VFIO SRIOV support
> 
> On 08/18/2016 03:29 PM, Ilya Lesokhin wrote:
> > Changes from V2:
> >         1. Enabling and disabling SR-IOV is now done
> >         through the sysfs interface, requiring
> >         admin privileges.
> >         2. Since admin privileges are now required
> >         to enable SR-IOV most of the the security
> >         measures introduced in RFC V2 were removed.
> >         Unfortunately we still need a mutex to prevent
> >         the VFIO user from changing the number of
> >         VFs while enable_sriov is in progress.
> >
> > Changes from V1:
> >         1. The VF are no longer assigned to PFs iommu group
> >         2. Add a pci_enable_sriov_with_override API to allow
> >         enablind sriov without probing the VFs with the
> >         default driver
> >
> > Changes from RFC V2:
> >         1. pci_disable_sriov() is now called from a workqueue
> >         To avoid the situation where a process is blocked
> >         in pci_disable_sriov() wating for itself to relase the VFs.
> >         2. a mutex was added to synchronize calls to
> >         pci_enable_sriov() and pci_disable_sriov()
> >
> > Changes from RFC V1:
> >         Due to the security concern raised in RFC V1, we add two patches
> >         to make sure the VFs belong to the same IOMMU group as
> >         the PF and are probed by VFIO.
> >
> > Today the QEMU hypervisor allows assigning a physical device to a VM,
> > facilitating driver development. However, it does not support enabling
> > SR-IOV by the VM kernel driver. Our goal is to implement such support,
> > allowing developers working on SR-IOV physical function drivers to
> > work inside VMs as well.
> >
> > This patch series implements the kernel side of our solution.  It
> > extends the VFIO driver to support the PCIE SRIOV extended capability
> > with following features:
> > 1. The ability to probe SR-IOV BAR sizes.
> > 2. The ability to enable and disable SR-IOV.
> >
> > This patch series is going to be used by QEMU to expose SR-IOV
> > capabilities to VM. We already have an early prototype based on Knut
> > Omang's patches for SR-IOV[1].
> >
> > Limitations:
> > 1. Per SR-IOV spec section 3.3.12, PFs are required to support 4-KB,
> > 8-KB, 64-KB, 256-KB, 1-MB, and 4-MB page sizes.
> > Unfourtently the kernel currently initializes the System Page Size
> > register once and assumes it doesn't change therefore we cannot allow
> > guests to change this register at will. We currently map both the
> > Supported Page sizes and System Page Size as virtualized and read only in
> violation of the spec.
> > In practice this is not an issue since both the hypervisor and the
> > guest typically select the same System Page Size.
> >
> > [1] https://github.com/knuto/qemu/tree/sriov_patches_v6
> >
> > Ilya Lesokhin (3):
> >   pci: Extend PCI IOV API
> >   vfio/pci: Allow control SR-IOV through sysfs interface
> >   vfio/pci: Add support for SR-IOV extended capablity
> >
> >  drivers/pci/iov.c                   |  41 ++++++++--
> >  drivers/vfio/pci/vfio_pci.c         |  43 ++++++++--
> >  drivers/vfio/pci/vfio_pci_config.c  | 151
> ++++++++++++++++++++++++++++++++----
> >  drivers/vfio/pci/vfio_pci_private.h |   2 +
> >  include/linux/pci.h                 |  13 +++-
> >  5 files changed, 219 insertions(+), 31 deletions(-)
> >
> 
> +Lizhen
> 
> 
> Hi Ilya,
> 
> Sorry for jumping in abruptly. We are also looking forward to have PF used
> within a VM, would you please share your next plan with us? Likely there will
> be a v4 shortly?
> 
> 
> --
> Thanks,
> Jike




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux