From: Eliot Blennerhassett Date: Thu, 10 Feb 2011 04:26:18 +0000 (+1300) Subject: ALSA: asihpi - Ensure all adapter data is cleared on device removal. X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=c188dec310c598d6c38d3db31f201c5629e6dc08;p=openwrt%2Fstaging%2Fblogic.git ALSA: asihpi - Ensure all adapter data is cleared on device removal. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai --- diff --git a/sound/pci/asihpi/hpioctl.c b/sound/pci/asihpi/hpioctl.c index 0ea9aae8011b..26186be638b1 100644 --- a/sound/pci/asihpi/hpioctl.c +++ b/sound/pci/asihpi/hpioctl.c @@ -449,10 +449,8 @@ void __devexit asihpi_adapter_remove(struct pci_dev *pci_dev) } } - if (pa->p_buffer) { - pa->buffer_size = 0; + if (pa->p_buffer) vfree(pa->p_buffer); - } pci_set_drvdata(pci_dev, NULL); if (1) @@ -461,6 +459,8 @@ void __devexit asihpi_adapter_remove(struct pci_dev *pci_dev) pci_dev->vendor, pci_dev->device, pci_dev->subsystem_vendor, pci_dev->subsystem_device, pci_dev->devfn, pa->index); + + memset(pa, 0, sizeof(*pa)); } void __init asihpi_init(void)