> On Jun 30, 2020, at 11:17 AM, Stefan Hajnoczi <stefa...@redhat.com> wrote: > > 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 OK, we get the theme of the message. :) > >> +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. Got it. We will add it in the later patches that use these. -- Jag