diff options
Diffstat (limited to 'drivers/net/e1000')
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 7e855f9bbd97..b3f67b41627f 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -2802,13 +2802,13 @@ static int e1000_tx_map(struct e1000_adapter *adapter, | |||
2802 | dma_error: | 2802 | dma_error: |
2803 | dev_err(&pdev->dev, "TX DMA map failed\n"); | 2803 | dev_err(&pdev->dev, "TX DMA map failed\n"); |
2804 | buffer_info->dma = 0; | 2804 | buffer_info->dma = 0; |
2805 | count--; | 2805 | if (count) |
2806 | |||
2807 | while (count >= 0) { | ||
2808 | count--; | 2806 | count--; |
2809 | i--; | 2807 | |
2810 | if (i < 0) | 2808 | while (count--) { |
2809 | if (i==0) | ||
2811 | i += tx_ring->count; | 2810 | i += tx_ring->count; |
2811 | i--; | ||
2812 | buffer_info = &tx_ring->buffer_info[i]; | 2812 | buffer_info = &tx_ring->buffer_info[i]; |
2813 | e1000_unmap_and_free_tx_resource(adapter, buffer_info); | 2813 | e1000_unmap_and_free_tx_resource(adapter, buffer_info); |
2814 | } | 2814 | } |