On Fri, Jul 31, 2020 at 02:20:10PM -0400, Jagannathan Raman wrote: > + * 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 s/It's/Its/ :) > +static void remote_pcihost_realize(DeviceState *dev, Error **errp) > +{ > + char *busname = g_strdup_printf("remote-pci-%ld", (unsigned long)getpid()); Why is the pid used here? I don't understand why this helps. If additional instances are created in this process then the name won't be unique. The name isn't exposed outside the process, so there is no need to uniquely identify the process either. g_free(busname) is missing. A nice way to fix this is: g_autofree char *busname = ... This avoids the need to manually call g_free().