[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v10 00/14] vfio-user server in QEMU
From: |
Jagannathan Raman |
Subject: |
[PATCH v10 00/14] vfio-user server in QEMU |
Date: |
Tue, 24 May 2022 11:30:19 -0400 |
Hi,
This is v10 of the server side changes to enable vfio-user in QEMU.
Thank you for reviewing and sharing your feedback for the previous
revision. We have addressed your comments in this revision.
We have dropped the following patches in this series:
- tests/avocado: Specify target VM argument to helper routines
- configure: require cmake 3.19 or newer
- vfio-user: avocado tests for vfio-user
We have also made the following changes:
[PATCH v10 1/14] qdev: unplug blocker for devices
- updated functions comments for unplug blockers in hw/qdev-core.h
[PATCH v10 4/14] vfio-user: build library
- uses meson build system to build libvfio-user library
- dropped ubuntu CI build
[PATCH v10 5/14] vfio-user: define vfio-user-server object
- updated comments for VfioUserServerProperties in qapi/qom.json
[PATCH v10 6/14] vfio-user: instantiate vfio-user context
- added comments to vfu_object_init_ctx() explaining function contract
[PATCH v10 8/14] vfio-user: run vfio-user context
- vfu_object_ctx_run() asserts that VfuObject->device is not NULL
- added a comment to vfu_object_ctx_run() explaining why
VfuObject->device wouldn't be NULL
Thank you very much!
Jagannathan Raman (14):
qdev: unplug blocker for devices
remote/machine: add HotplugHandler for remote machine
remote/machine: add vfio-user property
vfio-user: build library
vfio-user: define vfio-user-server object
vfio-user: instantiate vfio-user context
vfio-user: find and init PCI device
vfio-user: run vfio-user context
vfio-user: handle PCI config space accesses
vfio-user: IOMMU support for remote device
vfio-user: handle DMA mappings
vfio-user: handle PCI BAR accesses
vfio-user: handle device interrupts
vfio-user: handle reset of remote device
configure | 17 +
meson.build | 23 +-
qapi/misc.json | 31 +
qapi/qom.json | 20 +-
include/exec/memory.h | 3 +
include/hw/pci/pci.h | 13 +
include/hw/qdev-core.h | 29 +
include/hw/remote/iommu.h | 40 ++
include/hw/remote/machine.h | 4 +
include/hw/remote/vfio-user-obj.h | 6 +
hw/core/qdev.c | 24 +
hw/pci/msi.c | 16 +-
hw/pci/msix.c | 10 +-
hw/pci/pci.c | 13 +
hw/remote/iommu.c | 131 ++++
hw/remote/machine.c | 88 ++-
hw/remote/vfio-user-obj.c | 914 ++++++++++++++++++++++++
softmmu/physmem.c | 4 +-
softmmu/qdev-monitor.c | 4 +
stubs/vfio-user-obj.c | 6 +
tests/qtest/fuzz/generic_fuzz.c | 9 +-
.gitlab-ci.d/buildtest.yml | 1 +
.gitmodules | 3 +
Kconfig.host | 4 +
MAINTAINERS | 5 +
hw/remote/Kconfig | 4 +
hw/remote/meson.build | 4 +
hw/remote/trace-events | 11 +
meson_options.txt | 2 +
stubs/meson.build | 1 +
subprojects/libvfio-user | 1 +
tests/docker/dockerfiles/centos8.docker | 2 +
32 files changed, 1424 insertions(+), 19 deletions(-)
create mode 100644 include/hw/remote/iommu.h
create mode 100644 include/hw/remote/vfio-user-obj.h
create mode 100644 hw/remote/iommu.c
create mode 100644 hw/remote/vfio-user-obj.c
create mode 100644 stubs/vfio-user-obj.c
create mode 160000 subprojects/libvfio-user
--
2.20.1
- [PATCH v10 00/14] vfio-user server in QEMU,
Jagannathan Raman <=
- [PATCH v10 02/14] remote/machine: add HotplugHandler for remote machine, Jagannathan Raman, 2022/05/24
- [PATCH v10 01/14] qdev: unplug blocker for devices, Jagannathan Raman, 2022/05/24
- [PATCH v10 06/14] vfio-user: instantiate vfio-user context, Jagannathan Raman, 2022/05/24
- [PATCH v10 03/14] remote/machine: add vfio-user property, Jagannathan Raman, 2022/05/24
- [PATCH v10 04/14] vfio-user: build library, Jagannathan Raman, 2022/05/24
- [PATCH v10 08/14] vfio-user: run vfio-user context, Jagannathan Raman, 2022/05/24
- [PATCH v10 07/14] vfio-user: find and init PCI device, Jagannathan Raman, 2022/05/24
- [PATCH v10 09/14] vfio-user: handle PCI config space accesses, Jagannathan Raman, 2022/05/24
- [PATCH v10 05/14] vfio-user: define vfio-user-server object, Jagannathan Raman, 2022/05/24