ibmveth: Free irq on error path

Free irq on error path.

Signed-off-by: Denis Kirjanov <dkirjanov@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Denis Kirjanov 2010-10-20 04:21:51 +00:00 committed by David S. Miller
parent 88426f2aca
commit e0e8ab5960
1 changed files with 4 additions and 2 deletions

View File

@ -641,7 +641,7 @@ static int ibmveth_open(struct net_device *netdev)
if (!adapter->bounce_buffer) { if (!adapter->bounce_buffer) {
netdev_err(netdev, "unable to allocate bounce buffer\n"); netdev_err(netdev, "unable to allocate bounce buffer\n");
rc = -ENOMEM; rc = -ENOMEM;
goto err_out; goto err_out_free_irq;
} }
adapter->bounce_buffer_dma = adapter->bounce_buffer_dma =
dma_map_single(&adapter->vdev->dev, adapter->bounce_buffer, dma_map_single(&adapter->vdev->dev, adapter->bounce_buffer,
@ -649,7 +649,7 @@ static int ibmveth_open(struct net_device *netdev)
if (dma_mapping_error(dev, adapter->bounce_buffer_dma)) { if (dma_mapping_error(dev, adapter->bounce_buffer_dma)) {
netdev_err(netdev, "unable to map bounce buffer\n"); netdev_err(netdev, "unable to map bounce buffer\n");
rc = -ENOMEM; rc = -ENOMEM;
goto err_out; goto err_out_free_irq;
} }
netdev_dbg(netdev, "initial replenish cycle\n"); netdev_dbg(netdev, "initial replenish cycle\n");
@ -661,6 +661,8 @@ static int ibmveth_open(struct net_device *netdev)
return 0; return 0;
err_out_free_irq:
free_irq(netdev->irq, netdev);
err_out: err_out:
ibmveth_cleanup(adapter); ibmveth_cleanup(adapter);
napi_disable(&adapter->napi); napi_disable(&adapter->napi);