diff options
author | Jirka Pirko <jirka@pirko.cz> | 2008-11-24 17:49:11 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-24 17:49:11 -0500 |
commit | 5c94afd79cd9e68cb9899fe7788342329e9f445f (patch) | |
tree | 2ea134e0418a2e2fb0bce5ac9cec9a02ad591b3c /drivers/net/tokenring/3c359.c | |
parent | 138a5cdf2ffe8c6602641f8aaa00cfcf10929fe1 (diff) |
tokenring/3c359.c: Prevent possible mem leak when open failed
Freeing previously allocated buffers in case of error.
Signed-off-by: Jirka Pirko <jirka@pirko.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tokenring/3c359.c')
-rw-r--r-- | drivers/net/tokenring/3c359.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/tokenring/3c359.c b/drivers/net/tokenring/3c359.c index 8a43ecd0d6e7..e7a944657cf8 100644 --- a/drivers/net/tokenring/3c359.c +++ b/drivers/net/tokenring/3c359.c | |||
@@ -669,6 +669,8 @@ static int xl_open(struct net_device *dev) | |||
669 | if (i==0) { | 669 | if (i==0) { |
670 | printk(KERN_WARNING "%s: Not enough memory to allocate rx buffers. Adapter disabled \n",dev->name) ; | 670 | printk(KERN_WARNING "%s: Not enough memory to allocate rx buffers. Adapter disabled \n",dev->name) ; |
671 | free_irq(dev->irq,dev) ; | 671 | free_irq(dev->irq,dev) ; |
672 | kfree(xl_priv->xl_tx_ring); | ||
673 | kfree(xl_priv->xl_rx_ring); | ||
672 | return -EIO ; | 674 | return -EIO ; |
673 | } | 675 | } |
674 | 676 | ||