adm8211: fix memory leak
authorKulikov Vasiliy <segooon@gmail.com>
Sat, 10 Jul 2010 12:28:57 +0000 (16:28 +0400)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 12 Jul 2010 20:05:32 +0000 (16:05 -0400)
We must free priv->eeprom allocated in adm8211_read_eeprom().

Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Acked-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/adm8211.c

index 880ad9d..bde2fa8 100644 (file)
@@ -1903,7 +1903,7 @@ static int __devinit adm8211_probe(struct pci_dev *pdev,
        if (err) {
                printk(KERN_ERR "%s (adm8211): Cannot register device\n",
                       pci_name(pdev));
-               goto err_free_desc;
+               goto err_free_eeprom;
        }
 
        printk(KERN_INFO "%s: hwaddr %pM, Rev 0x%02x\n",
@@ -1912,6 +1912,9 @@ static int __devinit adm8211_probe(struct pci_dev *pdev,
 
        return 0;
 
+ err_free_eeprom:
+       kfree(priv->eeprom);
+
  err_free_desc:
        pci_free_consistent(pdev,
                            sizeof(struct adm8211_desc) * priv->rx_ring_size +