From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcelo Tosatti Subject: [patch 21/23] QEMU/KVM: LSI SCSI unregister callback Date: Tue, 04 Mar 2008 15:34:40 -0300 Message-ID: <20080304183904.011546876@localhost.localdomain> References: <20080304183419.187172133@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: Marcelo Tosatti , Avi Kivity , Glauber Costa To: kvm-devel@lists.sourceforge.net Return-path: Content-Disposition: inline; filename=lsi-unregister List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces@lists.sourceforge.net Errors-To: kvm-devel-bounces@lists.sourceforge.net List-Id: kvm.vger.kernel.org Signed-off-by: Marcelo Tosatti Index: kvm-userspace.hotplug/qemu/hw/lsi53c895a.c =================================================================== --- kvm-userspace.hotplug.orig/qemu/hw/lsi53c895a.c +++ kvm-userspace.hotplug/qemu/hw/lsi53c895a.c @@ -1849,6 +1849,18 @@ void lsi_scsi_attach(void *opaque, Block bd->devfn = s->pci_dev.devfn; } +int lsi_scsi_uninit(PCIDevice *d) +{ + LSIState *s = (LSIState *) d; + + cpu_unregister_io_memory(s->mmio_io_addr); + cpu_unregister_io_memory(s->ram_io_addr); + + qemu_free(s->queue); + + return 0; +} + void *lsi_scsi_init(PCIBus *bus, int devfn) { LSIState *s; @@ -1881,6 +1893,7 @@ void *lsi_scsi_init(PCIBus *bus, int dev s->queue = qemu_malloc(sizeof(lsi_queue)); s->queue_len = 1; s->active_commands = 0; + s->pci_dev.unregister = lsi_scsi_uninit; lsi_soft_reset(s); -- ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/