> > > > +static void (*i440fx_realize)(PCIDevice *pci_dev, Error **errp); > > static void igd_pt_i440fx_realize(PCIDevice *pci_dev, Error **errp) > > { > > + Error *err = NULL; > > uint32_t val = 0; > > int rc, i, num; > > int pos, len; > > Can't we get the parent PCIDeviceClass realize function from pci_dev? So > that we don't have to introduce i440fx_realize?
I don't think so ... > > > > + i440fx_realize = k->realize; > > k->realize = igd_pt_i440fx_realize; ... because we are overriding it right here. cheers, Gerd