[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 4/4] hw/pci: remove obsolete PCIDevice->init()
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH 4/4] hw/pci: remove obsolete PCIDevice->init() |
Date: |
Mon, 12 Mar 2018 02:04:05 +0200 |
On Mon, Mar 12, 2018 at 02:03:17AM +0200, Michael S. Tsirkin wrote:
> On Sun, Mar 11, 2018 at 04:46:52PM +0100, Philippe Mathieu-Daudé wrote:
> > Hi Michael, Paolo.
> >
> > Now than all other PCI QOM'ification patches got applied, can you take
> > this patch for 2.12?
> >
> > Thanks,
> >
> > Phil.
> >
> > On 12/17/2017 09:49 PM, Philippe Mathieu-Daudé wrote:
> > > All PCI devices are now QOM'ified.
> > >
> > > Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
> > > ---
> > > include/hw/pci/pci.h | 1 -
> > > hw/pci/pci.c | 14 --------------
> > > 2 files changed, 15 deletions(-)
> > >
> > > diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
> > > index 8d02a0a383..0f1ed64c2f 100644
> > > --- a/include/hw/pci/pci.h
> > > +++ b/include/hw/pci/pci.h
> > > @@ -217,7 +217,6 @@ typedef struct PCIDeviceClass {
> > > DeviceClass parent_class;
> > >
> > > void (*realize)(PCIDevice *dev, Error **errp);
> > > - int (*init)(PCIDevice *dev);/* TODO convert to realize() and remove
> > > */
> > > PCIUnregisterFunc *exit;
> > > PCIConfigReadFunc *config_read;
> > > PCIConfigWriteFunc *config_write;
> > > diff --git a/hw/pci/pci.c b/hw/pci/pci.c
> > > index b2d139bd9a..cd25ab6f6b 100644
> > > --- a/hw/pci/pci.c
> > > +++ b/hw/pci/pci.c
> > > @@ -2054,18 +2054,6 @@ static void pci_qdev_realize(DeviceState *qdev,
> > > Error **errp)
> > > }
> > > }
> > >
> > > -static void pci_default_realize(PCIDevice *dev, Error **errp)
> > > -{
> > > - PCIDeviceClass *pc = PCI_DEVICE_GET_CLASS(dev);
> > > -
> > > - if (pc->init) {
> > > - if (pc->init(dev) < 0) {
> > > - error_setg(errp, "Device initialization failed");
> > > - return;
> > > - }
> > > - }
> > > -}
> > > -
> > > PCIDevice *pci_create_multifunction(PCIBus *bus, int devfn, bool
> > > multifunction,
> > > const char *name)
> > > {
> > > @@ -2538,13 +2526,11 @@ MemoryRegion *pci_address_space_io(PCIDevice *dev)
> > > static void pci_device_class_init(ObjectClass *klass, void *data)
> > > {
> > > DeviceClass *k = DEVICE_CLASS(klass);
> > > - PCIDeviceClass *pc = PCI_DEVICE_CLASS(klass);
> > >
> > > k->realize = pci_qdev_realize;
> > > k->unrealize = pci_qdev_unrealize;
> > > k->bus_type = TYPE_PCI_BUS;
> > > k->props = pci_props;
> > > - pc->realize = pci_default_realize;
>
> How about we assert !init here?
>
> + assert(!pc->init);
Oh sorry I missed the chunk that drops it completely.
Will apply.
> > > }
> > >
> > > static void pci_device_class_base_init(ObjectClass *klass, void *data)
> > >
>
>