On Wed, Aug 8, 2012 at 5:56 PM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > Il 08/08/2012 08:25, Liu Ping Fan ha scritto: >> >> +static void >> +pci_e1000_unmap(PCIDevice *p) >> +{ >> + /* DO NOT FREE anything!until refcnt=0 */ >> + /* isolate from memory view */ >> +} > > At least you need to call the superclass method. > Refer to 0013-hotplug-introduce-qdev_unplug_complete-to-remove-dev.patch, we have the following sequence qdev_unmap->pci_unmap_device->pci_e1000_unmap. So pci_e1000_unmap need not to do anything. Regards, pingfan > Paolo > >> static int >> pci_e1000_uninit(PCIDevice *dev) >> { >> @@ -1275,6 +1282,7 @@ static void e1000_class_init(ObjectClass *klass, void *data) >> PCIDeviceClass *k = PCI_DEVICE_CLASS(klass); >> >> k->init = pci_e1000_init; >> + k->unmap = pci_e1000_unmap; >> k->exit = pci_e1000_uninit; >> k->romfile = "pxe-e1000.rom"; >> k->vendor_id = PCI_VENDOR_ID_INTEL; > > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html