From: Akihiko Odaki <akihiko.odaki@daynix.com>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Alex Williamson" <alex.williamson@redhat.com>,
"Cédric Le Goater" <clg@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Sriram Yagnaraman" <sriram.yagnaraman@est.tech>,
"Jason Wang" <jasowang@redhat.com>,
"Keith Busch" <kbusch@kernel.org>,
"Klaus Jensen" <its@irrelevant.dk>
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org,
Akihiko Odaki <akihiko.odaki@daynix.com>,
qemu-stable@nongnu.org
Subject: [PATCH v6 00/15] hw/pci: SR-IOV related fixes and improvements
Date: Tue, 20 Feb 2024 21:24:35 +0900 [thread overview]
Message-ID: <20240220-reuse-v6-0-2e42a28b0cf2@daynix.com> (raw)
I submitted a RFC series[1] to add support for SR-IOV emulation to
virtio-net-pci. During the development of the series, I fixed some
trivial bugs and made improvements that I think are independently
useful. This series extracts those fixes and improvements from the RFC
series.
[1]: https://patchew.org/QEMU/20231210-sriov-v2-0-b959e8a6dfaf@daynix.com/
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
Changes in v6:
- Fixed migration.
- Added patch "pcie_sriov: Do not manually unrealize".
- Restored patch "pcie_sriov: Release VFs failed to realize" that was
missed in v5.
- Link to v5: https://lore.kernel.org/r/20240218-reuse-v5-0-e4fc1c19b5a9@daynix.com
Changes in v5:
- Added patch "hw/pci: Always call pcie_sriov_pf_reset()".
- Added patch "pcie_sriov: Reset SR-IOV extended capability".
- Removed a reference to PCI_SRIOV_CTRL_VFE in hw/nvme.
(Michael S. Tsirkin)
- Noted the impact on the guest of patch "pcie_sriov: Do not reset
NumVFs after unregistering VFs". (Michael S. Tsirkin)
- Changed to use pcie_sriov_num_vfs().
- Restored pci_set_power() and changed it to call pci_set_enabled() only
for PFs with an expalanation. (Michael S. Tsirkin)
- Reordered patches.
- Link to v4: https://lore.kernel.org/r/20240214-reuse-v4-0-89ad093a07f4@daynix.com
Changes in v4:
- Reverted the change to pci_rom_bar_explicitly_enabled().
(Michael S. Tsirkin)
- Added patch "pcie_sriov: Do not reset NumVFs after unregistering VFs".
- Added patch "hw/nvme: Refer to dev->exp.sriov_pf.num_vfs".
- Link to v3: https://lore.kernel.org/r/20240212-reuse-v3-0-8017b689ce7f@daynix.com
Changes in v3:
- Extracted patch "hw/pci: Use -1 as a default value for rombar" from
patch "hw/pci: Determine if rombar is explicitly enabled"
(Philippe Mathieu-Daudé)
- Added an audit result of PCIDevice::rom_bar to the message of patch
"hw/pci: Use -1 as a default value for rombar"
(Philippe Mathieu-Daudé)
- Link to v2: https://lore.kernel.org/r/20240210-reuse-v2-0-24ba2a502692@daynix.com
Changes in v2:
- Reset after enabling a function so that NVMe VF state gets updated.
- Link to v1: https://lore.kernel.org/r/20240203-reuse-v1-0-5be8c5ce6338@daynix.com
---
Akihiko Odaki (15):
hw/nvme: Use pcie_sriov_num_vfs()
pcie_sriov: Validate NumVFs
pcie_sriov: Reset SR-IOV extended capability
pcie_sriov: Do not reset NumVFs after disabling VFs
hw/pci: Always call pcie_sriov_pf_reset()
hw/pci: Rename has_power to enabled
pcie_sriov: Do not manually unrealize
pcie_sriov: Reuse SR-IOV VF device instances
pcie_sriov: Release VFs failed to realize
pcie_sriov: Remove num_vfs from PCIESriovPF
pcie_sriov: Register VFs after migration
hw/pci: Use -1 as a default value for rombar
hw/pci: Determine if rombar is explicitly enabled
vfio: Avoid inspecting option QDict for rombar
hw/qdev: Remove opts member
docs/pcie_sriov.txt | 8 ++-
include/hw/pci/pci.h | 2 +-
include/hw/pci/pci_device.h | 22 +++++-
include/hw/pci/pcie_sriov.h | 13 ++--
include/hw/qdev-core.h | 4 --
hw/core/qdev.c | 1 -
hw/net/igb.c | 15 ++--
hw/nvme/ctrl.c | 54 +++++++-------
hw/pci/pci.c | 24 ++++---
hw/pci/pci_host.c | 4 +-
hw/pci/pcie_sriov.c | 170 ++++++++++++++++++++++++--------------------
hw/vfio/pci.c | 3 +-
system/qdev-monitor.c | 12 ++--
hw/pci/trace-events | 2 +-
14 files changed, 189 insertions(+), 145 deletions(-)
---
base-commit: 5005aed8a7e728d028efb40e243ecfc2b4f3df3a
change-id: 20240129-reuse-faae22b11934
Best regards,
--
Akihiko Odaki <akihiko.odaki@daynix.com>
next reply other threads:[~2024-02-20 12:25 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-20 12:24 Akihiko Odaki [this message]
2024-02-20 12:24 ` [PATCH v6 01/15] hw/nvme: Use pcie_sriov_num_vfs() Akihiko Odaki
2024-02-20 14:29 ` Kevin Wolf
2024-02-20 14:47 ` Klaus Jensen
2024-02-20 14:53 ` Kevin Wolf
2024-02-20 15:33 ` Akihiko Odaki
2024-02-20 20:40 ` Klaus Jensen
2024-02-20 12:24 ` [PATCH v6 02/15] pcie_sriov: Validate NumVFs Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 03/15] pcie_sriov: Reset SR-IOV extended capability Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 04/15] pcie_sriov: Do not reset NumVFs after disabling VFs Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 05/15] hw/pci: Always call pcie_sriov_pf_reset() Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 06/15] hw/pci: Rename has_power to enabled Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 07/15] pcie_sriov: Do not manually unrealize Akihiko Odaki
2024-03-12 19:37 ` Michael S. Tsirkin
2024-02-20 12:24 ` [PATCH v6 08/15] pcie_sriov: Reuse SR-IOV VF device instances Akihiko Odaki
2024-03-12 19:47 ` Michael S. Tsirkin
2024-02-20 12:24 ` [PATCH v6 09/15] pcie_sriov: Release VFs failed to realize Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 10/15] pcie_sriov: Remove num_vfs from PCIESriovPF Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 11/15] pcie_sriov: Register VFs after migration Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 12/15] hw/pci: Use -1 as a default value for rombar Akihiko Odaki
2024-02-21 7:59 ` Markus Armbruster
2024-02-22 6:40 ` Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 13/15] hw/pci: Determine if rombar is explicitly enabled Akihiko Odaki
2024-02-21 8:15 ` Markus Armbruster
2024-02-22 6:50 ` Akihiko Odaki
2024-02-20 12:24 ` [PATCH v6 14/15] vfio: Avoid inspecting option QDict for rombar Akihiko Odaki
2024-02-21 8:16 ` Markus Armbruster
2024-02-20 12:24 ` [PATCH v6 15/15] hw/qdev: Remove opts member Akihiko Odaki
2024-02-21 8:18 ` Markus Armbruster
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240220-reuse-v6-0-2e42a28b0cf2@daynix.com \
--to=akihiko.odaki@daynix.com \
--cc=alex.williamson@redhat.com \
--cc=berrange@redhat.com \
--cc=clg@redhat.com \
--cc=eduardo@habkost.net \
--cc=its@irrelevant.dk \
--cc=jasowang@redhat.com \
--cc=kbusch@kernel.org \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
--cc=sriram.yagnaraman@est.tech \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).