diff options
author | Michal Schmidt <mschmidt@redhat.com> | 2007-03-16 12:42:59 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2007-03-16 15:32:47 -0400 |
commit | 4d881901b8c2167884d213eb546ffffc9e5e35ac (patch) | |
tree | e69260491ca767fd622e61b16b37731c61fff689 /drivers/net/wireless/airo.c | |
parent | 21665a69e6c0c3e383eaef417f0ddbd16bdb69e3 (diff) |
[PATCH] airo: Fix an error path memory leak
The airo driver leaks memory if request_irq() fails.
Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/airo.c')
-rw-r--r-- | drivers/net/wireless/airo.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c index a8c2bfe26c2..2ada76a93cb 100644 --- a/drivers/net/wireless/airo.c +++ b/drivers/net/wireless/airo.c @@ -2852,7 +2852,7 @@ static struct net_device *_init_airo_card( unsigned short irq, int port, if (rc) { airo_print_err(dev->name, "register interrupt %d failed, rc %d", irq, rc); - goto err_out_unlink; + goto err_out_nets; } if (!is_pcmcia) { if (!request_region( dev->base_addr, 64, dev->name )) { @@ -2935,6 +2935,8 @@ err_out_res: release_region( dev->base_addr, 64 ); err_out_irq: free_irq(dev->irq, dev); +err_out_nets: + airo_networks_free(ai); err_out_unlink: del_airo_dev(dev); err_out_thr: |