|
@@ -3647,14 +3647,12 @@ dma_error:
|
|
buffer_info->length = 0;
|
|
buffer_info->length = 0;
|
|
buffer_info->next_to_watch = 0;
|
|
buffer_info->next_to_watch = 0;
|
|
buffer_info->mapped_as_page = false;
|
|
buffer_info->mapped_as_page = false;
|
|
- count--;
|
|
|
|
|
|
|
|
/* clear timestamp and dma mappings for remaining portion of packet */
|
|
/* clear timestamp and dma mappings for remaining portion of packet */
|
|
- while (count >= 0) {
|
|
|
|
- count--;
|
|
|
|
|
|
+ while (count--) {
|
|
|
|
+ if (i == 0)
|
|
|
|
+ i = tx_ring->count;
|
|
i--;
|
|
i--;
|
|
- if (i < 0)
|
|
|
|
- i += tx_ring->count;
|
|
|
|
buffer_info = &tx_ring->buffer_info[i];
|
|
buffer_info = &tx_ring->buffer_info[i];
|
|
igb_unmap_and_free_tx_resource(tx_ring, buffer_info);
|
|
igb_unmap_and_free_tx_resource(tx_ring, buffer_info);
|
|
}
|
|
}
|