[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 0/3] pcie: Add support for Single Root I/O Virtua
From: |
Knut Omang |
Subject: |
[Qemu-devel] [PATCH v3 0/3] pcie: Add support for Single Root I/O Virtualization |
Date: |
Tue, 1 Sep 2015 17:59:47 +0200 |
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.
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_v3
Testing with the example device was documented here:
http://lists.nongnu.org/archive/html/qemu-devel/2014-08/msg05110.html
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 (3):
pci: Make use of the devfn property when registering new devices
pci: Update pci_regs header
pcie: Add support for Single Root I/O Virtualization (SR/IOV)
hw/i386/kvm/pci-assign.c | 4 +-
hw/pci/Makefile.objs | 2 +-
hw/pci/msix.c | 2 +-
hw/pci/pci.c | 101 ++++++--
hw/pci/pcie.c | 9 +-
hw/pci/pcie_sriov.c | 271 +++++++++++++++++++++
hw/vfio/pci.c | 9 +-
include/hw/pci/pci.h | 11 +-
include/hw/pci/pcie.h | 6 +
include/hw/pci/pcie_sriov.h | 55 +++++
include/qemu/typedefs.h | 2 +
include/standard-headers/linux/pci_regs.h | 380 ++++++++++++++++++++++--------
12 files changed, 718 insertions(+), 134 deletions(-)
create mode 100644 hw/pci/pcie_sriov.c
create mode 100644 include/hw/pci/pcie_sriov.h
--
2.4.3
- [Qemu-devel] [PATCH v3 0/3] pcie: Add support for Single Root I/O Virtualization,
Knut Omang <=