[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v7 03/21] multi-process: setup PCI host bridge for remote dev
From: |
Stefan Hajnoczi |
Subject: |
Re: [PATCH v7 03/21] multi-process: setup PCI host bridge for remote device |
Date: |
Tue, 30 Jun 2020 16:17:00 +0100 |
On Sat, Jun 27, 2020 at 10:09:25AM -0700, elena.ufimtseva@oracle.com wrote:
> diff --git a/hw/pci-host/remote.c b/hw/pci-host/remote.c
> new file mode 100644
> index 0000000000..5ea9af4154
> --- /dev/null
> +++ b/hw/pci-host/remote.c
> @@ -0,0 +1,63 @@
> +/*
> + * Remote PCI host device
> + *
> + * Copyright © 2018, 2020 Oracle and/or its affiliates.
> + *
> + * This work is licensed under the terms of the GNU GPL, version 2 or later.
> + * See the COPYING file in the top-level directory.
> + *
A little more detail would be nice:
Unlike PCI host devices that model physical hardware, the purpose of
this PCI host is to host multi-process QEMU remote PCI devices.
Multi-process QEMU talks to a remote PCI device that runs in a
separate process. In order to reuse QEMU device models in the remote
process we need a PCI bus that holds the devices.
This PCI host is purely a container for PCI devices. It's fake in the
sense that the guest never sees this PCI host and has no way of
accessing it. It's job is just to provide the environment that QEMU
PCI device models need when running in a remote process.
I think this could be restated more clearly but hopefully it
communicates the purpose of hw/pci-host/remote.c. :P
> +typedef struct RemotePCIHost {
> + /*< private >*/
> + PCIExpressHost parent_obj;
> + /*< public >*/
> +
> + MemoryRegion *mr_pci_mem;
> + MemoryRegion *mr_sys_mem;
Unused? Please add mr_sys_mem if and when it is used.
signature.asc
Description: PGP signature
- [PATCH v7 13/21] multi-process: Forward PCI config space acceses to the remote process, (continued)
- [PATCH v7 13/21] multi-process: Forward PCI config space acceses to the remote process, elena . ufimtseva, 2020/06/27
- [PATCH v7 16/21] multi-process: create IOHUB object to handle irq, elena . ufimtseva, 2020/06/27
- [PATCH v7 18/21] multi-process: heartbeat messages to remote, elena . ufimtseva, 2020/06/27
- [PATCH v7 19/21] multi-process: perform device reset in the remote process, elena . ufimtseva, 2020/06/27
- [PATCH v7 21/21] multi-process: add configure and usage information, elena . ufimtseva, 2020/06/27
- [PATCH v7 20/21] multi-process: add the concept description to docs/devel/qemu-multiprocess, elena . ufimtseva, 2020/06/27
- [PATCH v7 14/21] multi-process: PCI BAR read/write handling for proxy & remote endpoints, elena . ufimtseva, 2020/06/27
- [PATCH v7 02/21] multi-process: Add config option for multi-process QEMU, elena . ufimtseva, 2020/06/27
- [PATCH v7 03/21] multi-process: setup PCI host bridge for remote device, elena . ufimtseva, 2020/06/27
- Re: [PATCH v7 03/21] multi-process: setup PCI host bridge for remote device,
Stefan Hajnoczi <=
- [PATCH v7 04/21] multi-process: setup a machine object for remote device process, elena . ufimtseva, 2020/06/27
- [PATCH v7 05/21] multi-process: add qio channel function to transmit, elena . ufimtseva, 2020/06/27
- [PATCH v7 08/21] multi-process: Initialize communication channel at the remote end, elena . ufimtseva, 2020/06/27
- [PATCH v7 09/21] multi-process: Initialize message handler in remote device, elena . ufimtseva, 2020/06/27
- [PATCH v7 17/21] multi-process: Retrieve PCI info from remote process, elena . ufimtseva, 2020/06/27
- [PATCH v7 15/21] multi-process: Synchronize remote memory, elena . ufimtseva, 2020/06/27