[PATCH 0/1] Update vfio-user module to the latest

2022-08-01 Thread Jagannathan Raman
Hi, This patch updates the libvfio-user submodule to the latest. Passed 'make check' & GitLab CI. Thank you! -- Jag Jagannathan Raman (1): vfio-user: update submodule to latest subprojects/libvfio-user | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.20.1

[PATCH 1/1] vfio-user: update submodule to latest

2022-08-01 Thread Jagannathan Raman
Update libvfio-user submodule to the latest Signed-off-by: Jagannathan Raman --- subprojects/libvfio-user | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/subprojects/libvfio-user b/subprojects/libvfio-user index 0b28d20557..1305f161b7 16 --- a/subprojects/libvfio-user

[PATCH v1 1/2] vfio-user: update comments

2023-05-17 Thread Jagannathan Raman
Clarify the behavior of TYPE_VFU_OBJECT when TYPE_REMOTE_MACHINE enables the auto-shutdown property. Also, add notes to VFU_OBJECT_ERROR. Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/hw/remote

[PATCH v1 2/2] docs: fix multi-process QEMU documentation

2023-05-17 Thread Jagannathan Raman
Fix a typo in the system documentation for multi-process QEMU. Signed-off-by: Jagannathan Raman --- docs/system/multi-process.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/system/multi-process.rst b/docs/system/multi-process.rst index 16f0352416..2008a67809 100644

[PATCH v1 0/2] Fix the documentation for vfio-user and multi-process QEMU

2023-05-17 Thread Jagannathan Raman
This series addresses recent comments from Markus Armbruster in the "Machine x-remote property auto-shutdown" email thread. Jagannathan Raman (2): vfio-user: update comments docs: fix multi-process QEMU documentation docs/system/multi-process.rst | 2 +- hw/remote/vfio-user-obj.

[PATCH] msi: fix MSI vector limit check in msi_set_mask()

2022-06-23 Thread Jagannathan Raman
device interrupts Signed-off-by: Jagannathan Raman --- hw/pci/msi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/pci/msi.c b/hw/pci/msi.c index 5c471b9616..058d1d1ef1 100644 --- a/hw/pci/msi.c +++ b/hw/pci/msi.c @@ -322,9 +322,9 @@ void msi_set_mask(PCIDevice *dev

[PATCH v5 00/18] vfio-user server in QEMU

2022-01-19 Thread Jagannathan Raman
not looking up before removing from table [PATCH v5 17/18] vfio-user: register handlers to facilitate migration - use VFU_OBJECT_ERROR instead of setting error_abort We dropped the following patch from previous series: - vfio-user: IOMMU support for remote device Thank you very much! Jagannath

[PATCH v5 02/18] tests/avocado: Specify target VM argument to helper routines

2022-01-19 Thread Jagannathan Raman
Specify target VM for exec_command and exec_command_and_wait_for_pattern routines Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Beraldo Leal --- tests/avocado/avocado_qemu/__init__.py | 14

[PATCH v5 05/18] qdev: unplug blocker for devices

2022-01-19 Thread Jagannathan Raman
Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/qdev-core.h | 5 + softmmu/qdev-monitor.c | 35 +++ 2 files changed, 40 insertions(+) diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h

[PATCH v5 03/18] pci: isolated address space for PCI bus

2022-01-19 Thread Jagannathan Raman
each PCI bus would solve this problem. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/pci.h | 2 ++ include/hw/pci/pci_bus.h | 17 + hw/pci/pci.c | 17 + hw/pci/pci_bridge.c | 5

[PATCH v5 08/18] vfio-user: build library

2022-01-19 Thread Jagannathan Raman
add the libvfio-user library as a submodule. build it as a cmake subproject. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- configure | 19 +- meson.build| 44

[PATCH v5 07/18] vfio-user: set qdev bus callbacks for remote machine

2022-01-19 Thread Jagannathan Raman
Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/machine.c | 57 + 1 file changed, 57 insertions(+) diff --git a/hw/remote/machine.c b/hw/remote/machine.c index 220ff01aa9..221a8430c1 100644

[PATCH v5 09/18] vfio-user: define vfio-user-server object

2022-01-19 Thread Jagannathan Raman
Define vfio-user object which is remote process server for QEMU. Setup object initialization functions and properties necessary to instantiate the object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- qapi/qom.json | 20 +++- hw

[PATCH v5 13/18] vfio-user: handle PCI config space accesses

2022-01-19 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 45 +++ hw/remote/trace-events| 2 ++ 2 files changed, 47

[PATCH v5 01/18] configure, meson: override C compiler for cmake

2022-01-19 Thread Jagannathan Raman
compiler tool. Explicitly specify the C compiler for cmake to avoid this error Signed-off-by: Jagannathan Raman Acked-by: Paolo Bonzini --- configure | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configure b/configure index e1a31fb332..6a865f8713 100755 --- a/configure +++ b/configure

[PATCH v5 10/18] vfio-user: instantiate vfio-user context

2022-01-19 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 78 +++ 1 file changed, 78 insertions(+) diff --git a/hw/remote

[PATCH v5 11/18] vfio-user: find and init PCI device

2022-01-19 Thread Jagannathan Raman
Find the PCI device with specified id. Initialize the device context with the QEMU PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 60 +++ 1 file changed, 60 insertions

[PATCH v5 12/18] vfio-user: run vfio-user context

2022-01-19 Thread Jagannathan Raman
Setup a handler to run vfio-user context. The context is driven by messages to the file descriptor associated with it - get the fd for the context and hook up the handler with it Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- qapi/misc.json

[PATCH v5 04/18] pci: create and free isolated PCI buses

2022-01-19 Thread Jagannathan Raman
Adds pci_isol_bus_new() and pci_isol_bus_free() functions to manage creation and destruction of isolated PCI buses. Also adds qdev_get_bus and qdev_put_bus callbacks to allow the choice of parent bus. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman

[PATCH v5 17/18] vfio-user: register handlers to facilitate migration

2022-01-19 Thread Jagannathan Raman
Store and load the device's state during migration. use libvfio-user's handlers for this purpose Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/migration/vmstate.h | 2 + migration/savevm.h | 2 + hw/remote

[PATCH v5 06/18] vfio-user: add HotplugHandler for remote machine

2022-01-19 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/machine.c | 29 + 1 file changed, 29 insertions(+) diff --git a/hw/remote/machine.c b/hw/remote

[PATCH v5 14/18] vfio-user: handle DMA mappings

2022-01-19 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 50 +++ hw/remote/trace

[PATCH v5 15/18] vfio-user: handle PCI BAR accesses

2022-01-19 Thread Jagannathan Raman
Determine the BARs used by the PCI device and register handlers to manage the access to the same. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 92

[PATCH v5 16/18] vfio-user: handle device interrupts

2022-01-19 Thread Jagannathan Raman
Forward remote device's interrupts to the guest Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/pci.h | 6 +++ hw/pci/msi.c | 13 +- hw/pci/msix.c | 12 +- hw/remote/vfio-user-obj.c

[PATCH v5 18/18] vfio-user: avocado tests for vfio-user

2022-01-19 Thread Jagannathan Raman
Avocado tests for libvfio-user in QEMU - tests startup, hotplug and migration of the server object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- MAINTAINERS| 1 + tests/avocado/vfio-user.py | 225

[PATCH v6 01/19] configure, meson: override C compiler for cmake

2022-02-16 Thread Jagannathan Raman
compiler tool. Explicitly specify the C compiler for cmake to avoid this error Signed-off-by: Jagannathan Raman Acked-by: Paolo Bonzini --- configure | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configure b/configure index 3a29eff5cc..9a326eda1e 100755 --- a/configure +++ b/configure

[PATCH v6 00/19] vfio-user server in QEMU

2022-02-16 Thread Jagannathan Raman
ote machine We are looking forward to your comments. Thank you very much! Jagannathan Raman (19): configure, meson: override C compiler for cmake tests/avocado: Specify target VM argument to helper routines qdev: unplug blocker for devices remote/machine: add HotplugHandler for remote machi

[PATCH v6 04/19] remote/machine: add HotplugHandler for remote machine

2022-02-16 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/machine.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/hw/remote/machine.c b/hw/remote/machine.c index

[PATCH v6 11/19] vfio-user: handle PCI config space accesses

2022-02-16 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 45 +++ hw/remote/trace-events| 2

[PATCH v6 09/19] vfio-user: find and init PCI device

2022-02-16 Thread Jagannathan Raman
Find the PCI device with specified id. Initialize the device context with the QEMU PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 59

[PATCH v6 05/19] remote/machine: add vfio-user property

2022-02-16 Thread Jagannathan Raman
-user fully replaces multiprocess, this property could be removed. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/remote/machine.h | 2 ++ hw/remote/machine.c | 23 +++ 2 files changed, 25 insertions

[PATCH v6 15/19] vfio-user: handle device interrupts

2022-02-16 Thread Jagannathan Raman
Forward remote device's interrupts to the guest Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/pci.h | 6 ++ include/hw/remote/vfio-user-obj.h | 6 ++ hw/pci/msi.c | 13 +++- hw/pci/m

[PATCH v6 03/19] qdev: unplug blocker for devices

2022-02-17 Thread Jagannathan Raman
Add blocker to prevent hot-unplug of devices Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/qdev-core.h | 35 +++ softmmu/qdev-monitor.c | 26 ++ 2 files changed, 61

[PATCH v6 02/19] tests/avocado: Specify target VM argument to helper routines

2022-02-17 Thread Jagannathan Raman
Specify target VM for exec_command and exec_command_and_wait_for_pattern routines Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Beraldo Leal Reviewed-by: Stefan Hajnoczi --- tests/avocado

[PATCH v6 10/19] vfio-user: run vfio-user context

2022-02-17 Thread Jagannathan Raman
Setup a handler to run vfio-user context. The context is driven by messages to the file descriptor associated with it - get the fd for the context and hook up the handler with it Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- qapi/misc.json

[PATCH v6 08/19] vfio-user: instantiate vfio-user context

2022-02-17 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 80 +++ 1 file changed, 80 insertions(+) diff --git a/hw/remote

[PATCH v6 12/19] vfio-user: IOMMU support for remote device

2022-02-17 Thread Jagannathan Raman
Assign separate address space for each device in the remote processes. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/remote/iommu.h | 18 + hw/remote/iommu.c | 78

[PATCH v6 06/19] vfio-user: build library

2022-02-17 Thread Jagannathan Raman
add the libvfio-user library as a submodule. build it as a cmake subproject. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- configure | 19 +- meson.build| 44

[PATCH v6 13/19] vfio-user: handle DMA mappings

2022-02-17 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 5 hw/remote/vfio-user-obj.c | 55

[PATCH v6 14/19] vfio-user: handle PCI BAR accesses

2022-02-17 Thread Jagannathan Raman
Determine the BARs used by the PCI device and register handlers to manage the access to the same. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/exec/memory.h | 3 + hw/remote/vfio-user-obj.c | 166

[PATCH v6 16/19] softmmu/vl: defer backend init

2022-02-17 Thread Jagannathan Raman
t use RUN_STATE*, this commit allows it to ask for deferred initialization of backend device. It is primarily targeted towards block devices in this commit, but it needed not be limited to that. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman ---

[PATCH v6 07/19] vfio-user: define vfio-user-server object

2022-02-17 Thread Jagannathan Raman
Define vfio-user object which is remote process server for QEMU. Setup object initialization functions and properties necessary to instantiate the object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- qapi

[PATCH v6 17/19] vfio-user: register handlers to facilitate migration

2022-02-17 Thread Jagannathan Raman
Store and load the device's state during migration. use libvfio-user's handlers for this purpose Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/block/block.h | 1 + include/migration/vmstate.h | 2 + migratio

[PATCH v6 18/19] vfio-user: handle reset of remote device

2022-02-17 Thread Jagannathan Raman
Adds handler to reset a remote device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- hw/remote/vfio-user-obj.c | 19 +++ 1 file changed, 19 insertions(+) diff --git a/hw/remote/vfio-user-obj.c b/hw/remote/vfio-user-obj.c

[PATCH v6 19/19] vfio-user: avocado tests for vfio-user

2022-02-17 Thread Jagannathan Raman
Avocado tests for libvfio-user in QEMU - tests startup, hotplug and migration of the server object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- MAINTAINERS| 1 + tests/avocado/vfio-user.py | 234

[PATCH v9 00/17] vfio-user server in QEMU

2022-05-03 Thread Jagannathan Raman
early exit in vfu_object_bar_rw() Jagannathan Raman (17): tests/avocado: Specify target VM argument to helper routines qdev: unplug blocker for devices remote/machine: add HotplugHandler for remote machine remote/machine: add vfio-user property configure: require cmake 3.19 or newer

[PATCH v9 07/17] vfio-user: define vfio-user-server object

2022-05-03 Thread Jagannathan Raman
Define vfio-user object which is remote process server for QEMU. Setup object initialization functions and properties necessary to instantiate the object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- qapi/qom.json | 20

[PATCH v9 09/17] vfio-user: find and init PCI device

2022-05-03 Thread Jagannathan Raman
Find the PCI device with specified id. Initialize the device context with the QEMU PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 67

[PATCH v9 01/17] tests/avocado: Specify target VM argument to helper routines

2022-05-03 Thread Jagannathan Raman
Specify target VM for exec_command and exec_command_and_wait_for_pattern routines Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Beraldo Leal Reviewed-by: Stefan Hajnoczi --- tests/avocado

[PATCH v9 03/17] remote/machine: add HotplugHandler for remote machine

2022-05-03 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/hw/remote/machine.c b/hw

[PATCH v9 14/17] vfio-user: handle PCI BAR accesses

2022-05-03 Thread Jagannathan Raman
Determine the BARs used by the PCI device and register handlers to manage the access to the same. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/exec/memory.h | 3 + hw/remote/vfio-user-obj.c | 190

[PATCH v9 02/17] qdev: unplug blocker for devices

2022-05-03 Thread Jagannathan Raman
blocker for the PCIDevice. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/qdev-core.h | 29 + hw/core/qdev.c | 24 softmmu/qdev-monitor.c | 4

[PATCH v9 10/17] vfio-user: run vfio-user context

2022-05-03 Thread Jagannathan Raman
Setup a handler to run vfio-user context. The context is driven by messages to the file descriptor associated with it - get the fd for the context and hook up the handler with it Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan

[PATCH v9 06/17] vfio-user: build library

2022-05-03 Thread Jagannathan Raman
add the libvfio-user library as a submodule. build it as a cmake subproject. libvfio-user is distributed with BSD 3-Clause license and json-c with MIT (Expat) license Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi

[PATCH v9 04/17] remote/machine: add vfio-user property

2022-05-03 Thread Jagannathan Raman
-user fully replaces multiprocess, this property could be removed. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/machine.h | 2 ++ hw/remote/machine.c | 23 +++ 2

[PATCH v9 16/17] vfio-user: handle reset of remote device

2022-05-03 Thread Jagannathan Raman
Adds handler to reset a remote device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 20 1 file changed, 20 insertions(+) diff --git a/hw/remote/vfio-user-obj.c b

[PATCH v9 11/17] vfio-user: handle PCI config space accesses

2022-05-03 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 51 +++ hw/remote/trace-events| 2

[PATCH v9 05/17] configure: require cmake 3.19 or newer

2022-05-03 Thread Jagannathan Raman
cmake needs to accept the compiler flags specified with CMAKE__COMPILER variable. It does so starting with version 3.19 Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- configure | 16 1 file changed, 16 insertions(+) diff

[PATCH v9 15/17] vfio-user: handle device interrupts

2022-05-03 Thread Jagannathan Raman
Forward remote device's interrupts to the guest Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/pci.h | 13 include/hw/remote/vfio-user-obj.h | 6 ++ hw/pci/msi.c | 16 ++-- h

[PATCH v9 17/17] vfio-user: avocado tests for vfio-user

2022-05-03 Thread Jagannathan Raman
Avocado tests for libvfio-user in QEMU - tests startup, hotplug and migration of the server object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- MAINTAINERS| 1 + tests/avocado/vfio-user.py | 164

[PATCH v9 08/17] vfio-user: instantiate vfio-user context

2022-05-03 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 82 +++ 1 file changed, 82 insertions

[PATCH v9 13/17] vfio-user: handle DMA mappings

2022-05-03 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 5 hw/remote/vfio-user-obj.c | 55

[PATCH v9 12/17] vfio-user: IOMMU support for remote device

2022-05-03 Thread Jagannathan Raman
Assign separate address space for each device in the remote processes. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/remote/iommu.h | 40 hw/remote/iommu.c | 131 ++ hw

[PATCH v11 00/14] vfio-user server in QEMU

2022-06-10 Thread Jagannathan Raman
devices using INTx - allows multiple devices to use INTx 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

[PATCH v11 01/14] qdev: unplug blocker for devices

2022-06-10 Thread Jagannathan Raman
blocker for the PCIDevice. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/qdev-core.h | 29 + hw/core/qdev.c | 24 softmmu/qdev-monitor.c | 4

[PATCH v11 06/14] vfio-user: instantiate vfio-user context

2022-06-10 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 82 +++ 1 file changed, 82 insertions

[PATCH v11 09/14] vfio-user: handle PCI config space accesses

2022-06-10 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 51 +++ hw/remote/trace-events| 2

[PATCH v11 03/14] remote/machine: add vfio-user property

2022-06-10 Thread Jagannathan Raman
-user fully replaces multiprocess, this property could be removed. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/machine.h | 2 ++ hw/remote/machine.c | 23 +++ 2

[PATCH v11 07/14] vfio-user: find and init PCI device

2022-06-10 Thread Jagannathan Raman
Find the PCI device with specified id. Initialize the device context with the QEMU PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 67

[PATCH v11 05/14] vfio-user: define vfio-user-server object

2022-06-10 Thread Jagannathan Raman
Define vfio-user object which is remote process server for QEMU. Setup object initialization functions and properties necessary to instantiate the object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- qapi

[PATCH v11 14/14] vfio-user: handle reset of remote device

2022-06-10 Thread Jagannathan Raman
Adds handler to reset a remote device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 20 1 file changed, 20 insertions(+) diff --git a/hw/remote/vfio-user-obj.c b

[PATCH v11 10/14] vfio-user: IOMMU support for remote device

2022-06-10 Thread Jagannathan Raman
Assign separate address space for each device in the remote processes. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/iommu.h | 40 hw/remote/iommu.c | 131

[PATCH v11 04/14] vfio-user: build library

2022-06-10 Thread Jagannathan Raman
add the libvfio-user library as a submodule. build it as a meson subproject. libvfio-user is distributed with BSD 3-Clause license and json-c with MIT (Expat) license Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi

[PATCH v11 08/14] vfio-user: run vfio-user context

2022-06-10 Thread Jagannathan Raman
Setup a handler to run vfio-user context. The context is driven by messages to the file descriptor associated with it - get the fd for the context and hook up the handler with it Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan

[PATCH v11 02/14] remote/machine: add HotplugHandler for remote machine

2022-06-10 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/hw/remote/machine.c b/hw

[PATCH v11 11/14] vfio-user: handle DMA mappings

2022-06-10 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 5 hw/remote/vfio-user-obj.c | 55

[PATCH v11 12/14] vfio-user: handle PCI BAR accesses

2022-06-10 Thread Jagannathan Raman
Determine the BARs used by the PCI device and register handlers to manage the access to the same. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/exec/memory.h | 3 + hw/remote/vfio-user-obj.c

[PATCH v11 13/14] vfio-user: handle device interrupts

2022-06-10 Thread Jagannathan Raman
Forward remote device's interrupts to the guest Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/msi.h | 1 + include/hw/pci/msix.h | 1 + include/hw/pci/pci.h | 13 +++ inclu

[PATCH v12 00/14] vfio-user server in QEMU

2022-06-13 Thread Jagannathan Raman
msi_set_mask() and msix_set_mask() respectively - Added missing return statement for error case in msi_set_mask() 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

[PATCH v12 02/14] remote/machine: add HotplugHandler for remote machine

2022-06-13 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/hw/remote/machine.c b/hw

[PATCH v12 01/14] qdev: unplug blocker for devices

2022-06-13 Thread Jagannathan Raman
blocker for the PCIDevice. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/qdev-core.h | 29 + hw/core/qdev.c | 24 softmmu/qdev-monitor.c | 4

[PATCH v12 03/14] remote/machine: add vfio-user property

2022-06-13 Thread Jagannathan Raman
-user fully replaces multiprocess, this property could be removed. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/machine.h | 2 ++ hw/remote/machine.c | 23 +++ 2

[PATCH v12 06/14] vfio-user: instantiate vfio-user context

2022-06-13 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 82 +++ 1 file changed, 82 insertions

[PATCH v12 04/14] vfio-user: build library

2022-06-13 Thread Jagannathan Raman
add the libvfio-user library as a submodule. build it as a meson subproject. libvfio-user is distributed with BSD 3-Clause license and json-c with MIT (Expat) license Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi

[PATCH v12 08/14] vfio-user: run vfio-user context

2022-06-13 Thread Jagannathan Raman
Setup a handler to run vfio-user context. The context is driven by messages to the file descriptor associated with it - get the fd for the context and hook up the handler with it Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan

[PATCH v12 13/14] vfio-user: handle device interrupts

2022-06-13 Thread Jagannathan Raman
Forward remote device's interrupts to the guest Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman --- include/hw/pci/msi.h | 1 + include/hw/pci/msix.h | 1 + include/hw/pci/pci.h | 13 +++ inclu

[PATCH v12 10/14] vfio-user: IOMMU support for remote device

2022-06-13 Thread Jagannathan Raman
Assign separate address space for each device in the remote processes. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/iommu.h | 40 hw/remote/iommu.c | 131

[PATCH v12 11/14] vfio-user: handle DMA mappings

2022-06-13 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 5 hw/remote/vfio-user-obj.c | 55

[PATCH v12 12/14] vfio-user: handle PCI BAR accesses

2022-06-13 Thread Jagannathan Raman
Determine the BARs used by the PCI device and register handlers to manage the access to the same. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/exec/memory.h | 3 + hw/remote/vfio-user-obj.c

[PATCH v12 09/14] vfio-user: handle PCI config space accesses

2022-06-13 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 51 +++ hw/remote/trace-events| 2

[PATCH v12 14/14] vfio-user: handle reset of remote device

2022-06-13 Thread Jagannathan Raman
Adds handler to reset a remote device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 20 1 file changed, 20 insertions(+) diff --git a/hw/remote/vfio-user-obj.c b

[PATCH v12 07/14] vfio-user: find and init PCI device

2022-06-13 Thread Jagannathan Raman
Find the PCI device with specified id. Initialize the device context with the QEMU PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 67

[PATCH v12 05/14] vfio-user: define vfio-user-server object

2022-06-13 Thread Jagannathan Raman
Define vfio-user object which is remote process server for QEMU. Setup object initialization functions and properties necessary to instantiate the object Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- qapi

[PATCH v10 02/14] remote/machine: add HotplugHandler for remote machine

2022-05-24 Thread Jagannathan Raman
Allow hotplugging of PCI(e) devices to remote machine Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/hw/remote/machine.c b/hw

[PATCH v10 06/14] vfio-user: instantiate vfio-user context

2022-05-24 Thread Jagannathan Raman
create a context with the vfio-user library to run a PCI device Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 96 +++ 1 file changed, 96 insertions

[PATCH v10 00/14] vfio-user server in QEMU

2022-05-24 Thread Jagannathan Raman
7;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 con

[PATCH v10 01/14] qdev: unplug blocker for devices

2022-05-24 Thread Jagannathan Raman
blocker for the PCIDevice. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/qdev-core.h | 29 + hw/core/qdev.c | 24 softmmu/qdev-monitor.c | 4

[PATCH v10 09/14] vfio-user: handle PCI config space accesses

2022-05-24 Thread Jagannathan Raman
Define and register handlers for PCI config space accesses Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/vfio-user-obj.c | 51 +++ hw/remote/trace-events| 2

[PATCH v10 11/14] vfio-user: handle DMA mappings

2022-05-24 Thread Jagannathan Raman
Define and register callbacks to manage the RAM regions used for device DMA Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- hw/remote/machine.c | 5 hw/remote/vfio-user-obj.c | 55

[PATCH v10 03/14] remote/machine: add vfio-user property

2022-05-24 Thread Jagannathan Raman
-user fully replaces multiprocess, this property could be removed. Signed-off-by: Elena Ufimtseva Signed-off-by: John G Johnson Signed-off-by: Jagannathan Raman Reviewed-by: Stefan Hajnoczi --- include/hw/remote/machine.h | 2 ++ hw/remote/machine.c | 23 +++ 2

  1   2   3   4   5   6   >