diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00queue.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00queue.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c index ecf57635ae51..6d41599a090c 100644 --- a/drivers/net/wireless/rt2x00/rt2x00queue.c +++ b/drivers/net/wireless/rt2x00/rt2x00queue.c | |||
@@ -731,13 +731,13 @@ void rt2x00queue_index_inc(struct data_queue *queue, enum queue_index index) | |||
731 | if (queue->index[index] >= queue->limit) | 731 | if (queue->index[index] >= queue->limit) |
732 | queue->index[index] = 0; | 732 | queue->index[index] = 0; |
733 | 733 | ||
734 | queue->last_action[index] = jiffies; | ||
735 | |||
734 | if (index == Q_INDEX) { | 736 | if (index == Q_INDEX) { |
735 | queue->length++; | 737 | queue->length++; |
736 | queue->last_index = jiffies; | ||
737 | } else if (index == Q_INDEX_DONE) { | 738 | } else if (index == Q_INDEX_DONE) { |
738 | queue->length--; | 739 | queue->length--; |
739 | queue->count++; | 740 | queue->count++; |
740 | queue->last_index_done = jiffies; | ||
741 | } | 741 | } |
742 | 742 | ||
743 | spin_unlock_irqrestore(&queue->lock, irqflags); | 743 | spin_unlock_irqrestore(&queue->lock, irqflags); |
@@ -746,14 +746,17 @@ void rt2x00queue_index_inc(struct data_queue *queue, enum queue_index index) | |||
746 | static void rt2x00queue_reset(struct data_queue *queue) | 746 | static void rt2x00queue_reset(struct data_queue *queue) |
747 | { | 747 | { |
748 | unsigned long irqflags; | 748 | unsigned long irqflags; |
749 | unsigned int i; | ||
749 | 750 | ||
750 | spin_lock_irqsave(&queue->lock, irqflags); | 751 | spin_lock_irqsave(&queue->lock, irqflags); |
751 | 752 | ||
752 | queue->count = 0; | 753 | queue->count = 0; |
753 | queue->length = 0; | 754 | queue->length = 0; |
754 | queue->last_index = jiffies; | 755 | |
755 | queue->last_index_done = jiffies; | 756 | for (i = 0; i < Q_INDEX_MAX; i++) { |
756 | memset(queue->index, 0, sizeof(queue->index)); | 757 | queue->index[i] = 0; |
758 | queue->last_action[i] = jiffies; | ||
759 | } | ||
757 | 760 | ||
758 | spin_unlock_irqrestore(&queue->lock, irqflags); | 761 | spin_unlock_irqrestore(&queue->lock, irqflags); |
759 | } | 762 | } |