diff options
-rw-r--r-- | drivers/net/wireless/b43/dma.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/wireless/b43/dma.c b/drivers/net/wireless/b43/dma.c index 6d65a02b7052..0f021c666d08 100644 --- a/drivers/net/wireless/b43/dma.c +++ b/drivers/net/wireless/b43/dma.c | |||
@@ -1306,16 +1306,18 @@ int b43_dma_tx(struct b43_wldev *dev, struct sk_buff *skb) | |||
1306 | } | 1306 | } |
1307 | 1307 | ||
1308 | spin_lock_irqsave(&ring->lock, flags); | 1308 | spin_lock_irqsave(&ring->lock, flags); |
1309 | |||
1309 | B43_WARN_ON(!ring->tx); | 1310 | B43_WARN_ON(!ring->tx); |
1311 | /* Check if the queue was stopped in mac80211, | ||
1312 | * but we got called nevertheless. | ||
1313 | * That would be a mac80211 bug. */ | ||
1314 | B43_WARN_ON(ring->stopped); | ||
1315 | |||
1310 | if (unlikely(free_slots(ring) < SLOTS_PER_PACKET)) { | 1316 | if (unlikely(free_slots(ring) < SLOTS_PER_PACKET)) { |
1311 | b43warn(dev->wl, "DMA queue overflow\n"); | 1317 | b43warn(dev->wl, "DMA queue overflow\n"); |
1312 | err = -ENOSPC; | 1318 | err = -ENOSPC; |
1313 | goto out_unlock; | 1319 | goto out_unlock; |
1314 | } | 1320 | } |
1315 | /* Check if the queue was stopped in mac80211, | ||
1316 | * but we got called nevertheless. | ||
1317 | * That would be a mac80211 bug. */ | ||
1318 | B43_WARN_ON(ring->stopped); | ||
1319 | 1321 | ||
1320 | /* Assign the queue number to the ring (if not already done before) | 1322 | /* Assign the queue number to the ring (if not already done before) |
1321 | * so TX status handling can use it. The queue to ring mapping is | 1323 | * so TX status handling can use it. The queue to ring mapping is |