On Wed, Sep 28, 2016 at 06:42:50PM +0800, Peter Xu wrote: [...]
> > > @@ -341,6 +351,7 @@ static void pci_edu_realize(PCIDevice *pdev, Error > > > **errp) > > > edu, QEMU_THREAD_JOINABLE); > > > > > > pci_config_set_interrupt_pin(pci_conf, 1); > > > + msi_init(pdev, 0, 1, false, false, errp); > > > > msi_init(pdev, 0, 1, false, false, &local_err); > > if (local_err) { > > error_propagate(errp, local_err); > > return; > > } > > Could I ask why we need the local_err? I think I understand now. For this case, I beliveve I could also use: if (msi_init(..., errp)) { return; } Will fix. Thanks, -- peterx