diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/net/ethernet/broadcom/tg3.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c index 3a7517910eed..0413e1e85641 100644 --- a/drivers/net/ethernet/broadcom/tg3.c +++ b/drivers/net/ethernet/broadcom/tg3.c | |||
| @@ -9677,15 +9677,14 @@ static int tg3_open(struct net_device *dev) | |||
| 9677 | struct tg3_napi *tnapi = &tp->napi[i]; | 9677 | struct tg3_napi *tnapi = &tp->napi[i]; |
| 9678 | err = tg3_request_irq(tp, i); | 9678 | err = tg3_request_irq(tp, i); |
| 9679 | if (err) { | 9679 | if (err) { |
| 9680 | for (i--; i >= 0; i--) | 9680 | for (i--; i >= 0; i--) { |
| 9681 | tnapi = &tp->napi[i]; | ||
| 9681 | free_irq(tnapi->irq_vec, tnapi); | 9682 | free_irq(tnapi->irq_vec, tnapi); |
| 9682 | break; | 9683 | } |
| 9684 | goto err_out2; | ||
| 9683 | } | 9685 | } |
| 9684 | } | 9686 | } |
| 9685 | 9687 | ||
| 9686 | if (err) | ||
| 9687 | goto err_out2; | ||
| 9688 | |||
| 9689 | tg3_full_lock(tp, 0); | 9688 | tg3_full_lock(tp, 0); |
| 9690 | 9689 | ||
| 9691 | err = tg3_init_hw(tp, 1); | 9690 | err = tg3_init_hw(tp, 1); |
