qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v6 0/4] pcie: Add support for Single Root I/O Vi


From: Dotan Barak
Subject: Re: [Qemu-devel] [PATCH v6 0/4] pcie: Add support for Single Root I/O Virtualization
Date: Thu, 22 Oct 2015 14:22:12 +0000

I tested those patches on QEMU v2.3.0 and they work
(i.e. it adds to ability for emulated device to work SR-IOV).

However, when I based my model on newer version of QEMU (i.e. upstream) with 
the new SR-IOV patches from Knut,
There is a failure (SR-IOV enable fails).

Thanks
Dotan


> -----Original Message-----
> From: Knut Omang [mailto:address@hidden
> Sent: Thursday, October 22, 2015 4:48 PM
> To: Michael S. Tsirkin <address@hidden>
> Cc: address@hidden; Paolo Bonzini <address@hidden>; Richard
> Henderson <address@hidden>; Eduardo Habkost <address@hidden>; Alex
> Williamson <address@hidden>; Marcel Apfelbaum
> <address@hidden>; Jan Kiszka <address@hidden>; Gonglei (Arei)
> <address@hidden>; Dotan Barak <address@hidden>; Richard
> W.M. Jones <address@hidden>
> Subject: Re: [PATCH v6 0/4] pcie: Add support for Single Root I/O 
> Virtualization
> 
> On Thu, 2015-10-22 at 16:14 +0300, Michael S. Tsirkin wrote:
> > On Thu, Oct 22, 2015 at 10:01:31AM +0200, Knut Omang wrote:
> > > This patch set implements generic support for SR/IOV as an extension
> > > to the core PCIe functionality, similar to the way other
> > > capabilities such as AER is implemented.
> >
> > We are in soft freeze now so I'd rather defer this until
> > 2.5 is out.
> 
> Ok, I kind of suspected that the 2.5 train had left, no problem..
> 
> > This should give you some time to come up with an actual user for this
> > API.
> >
> > If it helps, I can park these patches on a branch in my tree so you
> > don't need to keep reposting them.
> 
> Yes, that would be great,
> 
> Thanks,
> Knut
> 
> > > There is no implementation of any device that provides SR/IOV
> > > support included, but I have implemented a test example which can be
> > > found together with this patch set here:
> > >
> > >   git://github.com/knuto/qemu.git sriov_patches_v6
> > >
> > > Testing with the example device was documented here:
> > >
> > >   http://lists.nongnu.org/archive/html/qemu-devel/2014-08/msg05110.
> > > html
> > >
> > > Changes since v5:
> > >   - Fix reset logic that got broken in v5. Reset logic is now equal
> > > to
> > >     that of v4 except that two ambiguous initialization statements
> > >     (introduced during rebase) have been removed
> > >   - From private feedback, added observer functions for SR/IOV
> > > values
> > >     in pcie_sriov.h. To ease access to the vf number, the SR/IOV VF
> > > device
> > >     struct extension now caches this value.
> > >
> > > Changes since v4:
> > >   - Mostly based on feeback in Marcel Apfelbaum's review:
> > >   - The patch with changes to pci_regs.h got eliminated by rebase
> > >   - Added some documentation as an additional patch
> > >   - Some trivial fixes moved to separate patch
> > >   - Modified code to use error and trace functions instead of
> > > printfs
> > >
> > > Changes since v3:
> > >   - Reworked 'pci: Update pci_regs header' to merge kernel version
> > > improvements
> > >     with the current qemu version instead of copying from the kernel
> > > version.
> > >
> > > Changes since v2:
> > >   - Rebased onto 090d0bfd
> > >   - Un-qdev'ified - avoids issues when resetting NUM_VFS
> > >   - Fixed handling of vf_offset/vf_stride
> > >
> > > Changes since v1:
> > >   - Rebased on top of latest master, eliminating prereqs.
> > >   - Implement proper support for VF_STRIDE, VF_OFFSET and SUP_PGSIZE
> > >     Time better spent fixing it than explaining what the previous
> > >     limitations were.
> > >     - Added new first patch to fix pci bug related to this
> > >   - Split out patch to pci_default_config_write to a separate patch
> > > 2
> > >     to highlight bug fix.
> > >   - Refactored out logic into new source files
> > >     hw/pci/pcie_sriov.c include/hw/pci/pcie_sriov.h
> > >     similar to pcie_aer.c/h.
> > >   - Rename functions and introduce structs to better separate
> > >     pf and vf functionality.
> > >   - Replaced is_vf member with pci_is_vf() function abstraction
> > >   - Fix numerous syntax, whitespace and comment issues
> > >     according to Michael's review.
> > >   - Fix memory leaks.
> > >   - Removed igb example device - a rebased version available
> > >     on github instead.
> > >
> > > Knut Omang (4):
> > >   pci: Make use of the devfn property when registering new devices
> > >   pcie: Add support for Single Root I/O Virtualization (SR/IOV)
> > >   pcie: Add some SR/IOV API documentation in docs/pcie_sriov.txt
> > >   pcie: A few minor fixes (type+code simplify)
> > >
> > >  docs/pcie_sriov.txt         | 115 ++++++++++++++++++
> > >  hw/pci/Makefile.objs        |   2 +-
> > >  hw/pci/pci.c                |  97 ++++++++++++----
> > >  hw/pci/pcie.c               |   9 +-
> > >  hw/pci/pcie_sriov.c         | 277
> > > ++++++++++++++++++++++++++++++++++++++++++++
> > >  include/hw/pci/pci.h        |  11 +-
> > >  include/hw/pci/pcie.h       |   6 +
> > >  include/hw/pci/pcie_sriov.h |  67 +++++++++++
> > >  include/qemu/typedefs.h     |   2 +
> > >  trace-events                |   5 +
> > >  10 files changed, 561 insertions(+), 30 deletions(-)  create mode
> > > 100644 docs/pcie_sriov.txt  create mode 100644 hw/pci/pcie_sriov.c
> > > create mode 100644 include/hw/pci/pcie_sriov.h
> > >
> > > --
> > > 2.4.3

reply via email to

[Prev in Thread] Current Thread [Next in Thread]