aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00debug.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00debug.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00debug.c b/drivers/net/wireless/rt2x00/rt2x00debug.c
index 21af11a97334..bfab3b8780d6 100644
--- a/drivers/net/wireless/rt2x00/rt2x00debug.c
+++ b/drivers/net/wireless/rt2x00/rt2x00debug.c
@@ -278,6 +278,7 @@ static ssize_t rt2x00debug_read_queue_stats(struct file *file,
278{ 278{
279 struct rt2x00debug_intf *intf = file->private_data; 279 struct rt2x00debug_intf *intf = file->private_data;
280 struct data_queue *queue; 280 struct data_queue *queue;
281 unsigned long irqflags;
281 unsigned int lines = 1 + intf->rt2x00dev->data_queues; 282 unsigned int lines = 1 + intf->rt2x00dev->data_queues;
282 size_t size; 283 size_t size;
283 char *data; 284 char *data;
@@ -294,7 +295,7 @@ static ssize_t rt2x00debug_read_queue_stats(struct file *file,
294 sprintf(data, "qid\tcount\tlimit\tlength\tindex\tdone\tcrypto\n"); 295 sprintf(data, "qid\tcount\tlimit\tlength\tindex\tdone\tcrypto\n");
295 296
296 queue_for_each(intf->rt2x00dev, queue) { 297 queue_for_each(intf->rt2x00dev, queue) {
297 spin_lock(&queue->lock); 298 spin_lock_irqsave(&queue->lock, irqflags);
298 299
299 temp += sprintf(temp, "%d\t%d\t%d\t%d\t%d\t%d\t%d\n", queue->qid, 300 temp += sprintf(temp, "%d\t%d\t%d\t%d\t%d\t%d\t%d\n", queue->qid,
300 queue->count, queue->limit, queue->length, 301 queue->count, queue->limit, queue->length,
@@ -302,7 +303,7 @@ static ssize_t rt2x00debug_read_queue_stats(struct file *file,
302 queue->index[Q_INDEX_DONE], 303 queue->index[Q_INDEX_DONE],
303 queue->index[Q_INDEX_CRYPTO]); 304 queue->index[Q_INDEX_CRYPTO]);
304 305
305 spin_unlock(&queue->lock); 306 spin_unlock_irqrestore(&queue->lock, irqflags);
306 } 307 }
307 308
308 size = strlen(data); 309 size = strlen(data);