[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 17/38] e1000: use instance_finalize instead of e
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH 17/38] e1000: use instance_finalize instead of exit |
Date: |
Tue, 17 Sep 2013 12:27:33 +0300 |
On Tue, Sep 03, 2013 at 02:33:08PM +0200, Paolo Bonzini wrote:
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
> hw/net/e1000.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/hw/net/e1000.c b/hw/net/e1000.c
> index f5ebed4..55fb062 100644
> --- a/hw/net/e1000.c
> +++ b/hw/net/e1000.c
> @@ -1310,9 +1310,9 @@ e1000_cleanup(NetClientState *nc)
> }
>
> static void
> -pci_e1000_uninit(PCIDevice *dev)
> +pci_e1000_instance_finalize(Object *obj)
> {
> - E1000State *d = E1000(dev);
> + E1000State *d = E1000(obj);
>
> timer_del(d->autoneg_timer);
> timer_free(d->autoneg_timer);
So this looks wrong.
This cancels timers after pci device has been destroyed,
so meanwhile timers can run and send interrupts.
> @@ -1394,7 +1394,6 @@ static void e1000_class_init(ObjectClass *klass, void
> *data)
> PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
>
> k->init = pci_e1000_init;
> - k->exit = pci_e1000_uninit;
> k->romfile = "efi-e1000.rom";
> k->vendor_id = PCI_VENDOR_ID_INTEL;
> k->device_id = E1000_DEVID;
> @@ -1412,6 +1411,7 @@ static const TypeInfo e1000_info = {
> .parent = TYPE_PCI_DEVICE,
> .instance_size = sizeof(E1000State),
> .class_init = e1000_class_init,
> + .instance_finalize = pci_e1000_instance_finalize,
> };
>
> static void e1000_register_types(void)
> --
> 1.8.3.1
>
- [Qemu-devel] [PATCH 10/38] msix: split msix_free from msix_uninit, (continued)
- [Qemu-devel] [PATCH 10/38] msix: split msix_free from msix_uninit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 11/38] cmd646: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 12/38] ide/piix: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 13/38] ide/via: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 14/38] ivshmem: reclaim memory in instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 15/38] pci-testdev: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 16/38] vfio: reclaim memory in instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 17/38] e1000: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- Re: [Qemu-devel] [PATCH 17/38] e1000: use instance_finalize instead of exit,
Michael S. Tsirkin <=
- [Qemu-devel] [PATCH 18/38] eepro100: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 19/38] ne2000: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 20/38] pcnet: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 22/38] vmxnet3: reclaim memory in instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 21/38] rtl8139: use instance_finalize instead of exit, Paolo Bonzini, 2013/09/03
- [Qemu-devel] [PATCH 23/38] shpc: split shpc_free from shpc_cleanup, Paolo Bonzini, 2013/09/03