| .. | .. |
|---|
| 1074 | 1074 | igbvf_intr_msix_rx, 0, adapter->rx_ring->name, |
|---|
| 1075 | 1075 | netdev); |
|---|
| 1076 | 1076 | if (err) |
|---|
| 1077 | | - goto out; |
|---|
| 1077 | + goto free_irq_tx; |
|---|
| 1078 | 1078 | |
|---|
| 1079 | 1079 | adapter->rx_ring->itr_register = E1000_EITR(vector); |
|---|
| 1080 | 1080 | adapter->rx_ring->itr_val = adapter->current_itr; |
|---|
| .. | .. |
|---|
| 1083 | 1083 | err = request_irq(adapter->msix_entries[vector].vector, |
|---|
| 1084 | 1084 | igbvf_msix_other, 0, netdev->name, netdev); |
|---|
| 1085 | 1085 | if (err) |
|---|
| 1086 | | - goto out; |
|---|
| 1086 | + goto free_irq_rx; |
|---|
| 1087 | 1087 | |
|---|
| 1088 | 1088 | igbvf_configure_msix(adapter); |
|---|
| 1089 | 1089 | return 0; |
|---|
| 1090 | +free_irq_rx: |
|---|
| 1091 | + free_irq(adapter->msix_entries[--vector].vector, netdev); |
|---|
| 1092 | +free_irq_tx: |
|---|
| 1093 | + free_irq(adapter->msix_entries[--vector].vector, netdev); |
|---|
| 1090 | 1094 | out: |
|---|
| 1091 | 1095 | return err; |
|---|
| 1092 | 1096 | } |
|---|