[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH RFC v2 11/12] virtio-pci: Implement SR-IOV PF
From: |
Akihiko Odaki |
Subject: |
[PATCH RFC v2 11/12] virtio-pci: Implement SR-IOV PF |
Date: |
Sun, 10 Dec 2023 13:05:54 +0900 |
Allow user to attach SR-IOV VF to a virtio-pci PF.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
hw/virtio/virtio-pci.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index 205dbf24fb..4f3ec71218 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -2075,6 +2075,12 @@ static void virtio_pci_device_plugged(DeviceState *d,
Error **errp)
pci_register_bar(&proxy->pci_dev, proxy->legacy_io_bar_idx,
PCI_BASE_ADDRESS_SPACE_IO, &proxy->bar);
}
+
+ if (pcie_sriov_pf_init_from_user_created_vfs(&proxy->pci_dev,
+ PCI_CONFIG_SPACE_SIZE,
+ errp)) {
+ virtio_add_feature(&vdev->host_features, VIRTIO_F_SR_IOV);
+ }
}
static void virtio_pci_device_unplugged(DeviceState *d)
@@ -2083,6 +2089,7 @@ static void virtio_pci_device_unplugged(DeviceState *d)
bool modern = virtio_pci_modern(proxy);
bool modern_pio = proxy->flags & VIRTIO_PCI_FLAG_MODERN_PIO_NOTIFY;
+ pcie_sriov_pf_exit(&proxy->pci_dev);
virtio_pci_stop_ioeventfd(proxy);
if (modern) {
--
2.43.0
- [PATCH RFC v2 03/12] hw/pci: Do not add ROM BAR for SR-IOV VF, (continued)
- [PATCH RFC v2 03/12] hw/pci: Do not add ROM BAR for SR-IOV VF, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 04/12] vfio: Avoid inspecting option QDict for rombar, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 05/12] hw/qdev: Remove opts member, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 06/12] pcie_sriov: Reuse SR-IOV VF device instances, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 07/12] pcie_sriov: Release VFs failed to realize, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 08/12] pcie_sriov: Ensure PF and VF are mutually exclusive, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 09/12] pcie_sriov: Check PCI Express for SR-IOV PF, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 10/12] pcie_sriov: Allow user to create SR-IOV device, Akihiko Odaki, 2023/12/09
- [PATCH RFC v2 11/12] virtio-pci: Implement SR-IOV PF,
Akihiko Odaki <=
- [PATCH RFC v2 12/12] virtio-net: Implement SR-IOV VF, Akihiko Odaki, 2023/12/09
- Re: [PATCH RFC v2 00/12] virtio-net: add support for SR-IOV emulation, Jason Wang, 2023/12/10
Re: [PATCH RFC v2 00/12] virtio-net: add support for SR-IOV emulation, Yui Washizu, 2023/12/19