diff options
-rwxr-xr-x | wct4xxp.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -1662,6 +1662,7 @@ static int t4_hardware_stop(struct t4 *wc) static void __devexit t4_remove_one(struct pci_dev *pdev) { struct t4 *wc = pci_get_drvdata(pdev); + int x; if (wc) { /* Stop hardware */ t4_hardware_stop(wc); @@ -1701,6 +1702,11 @@ static void __devexit t4_remove_one(struct pci_dev *pdev) #endif cards[wc->num] = NULL; pci_set_drvdata(pdev, NULL); + for (x=0;x<4;x++) { + if (wc->chans[x]) + kfree(wc->chans[x]); + } + kfree(wc); } } |