On Sat, Jun 27, 2020 at 10:09:25AM -0700, elena.ufimts...@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