diff -ru linux-2.6.24.1-orig/drivers/net/wireless/b43/main.c linux-2.6.24.3/drivers/net/wireless/b43/main.c --- linux-2.6.24.1-orig/drivers/net/wireless/b43/main.c 2008-03-22 19:50:37.000000000 +0100 +++ linux-2.6.24.3/drivers/net/wireless/b43/main.c 2008-03-22 19:44:26.000000000 +0100 @@ -2515,6 +2515,11 @@ goto out; if (unlikely(b43_status(dev) < B43_STAT_STARTED)) goto out; + + if (ctl->type == IEEE80211_IF_TYPE_MNTR) { + ctl->flags |= IEEE80211_TXCTL_NO_ACK; + } + /* DMA-TX is done without a global lock. */ if (b43_using_pio(dev)) { spin_lock_irqsave(&wl->irq_lock, flags); diff -ru linux-2.6.24.1-orig/drivers/net/wireless/b43legacy/main.c linux-2.6.24.3/drivers/net/wireless/b43legacy/main.c --- linux-2.6.24.1-orig/drivers/net/wireless/b43legacy/main.c 2008-03-22 19:50:37.000000000 +0100 +++ linux-2.6.24.3/drivers/net/wireless/b43legacy/main.c 2008-03-22 19:47:00.000000000 +0100 @@ -2379,6 +2379,11 @@ goto out; if (unlikely(b43legacy_status(dev) < B43legacy_STAT_STARTED)) goto out; + + if (ctl->type == IEEE80211_IF_TYPE_MNTR) { + ctl->flags |= IEEE80211_TXCTL_NO_ACK; + } + /* DMA-TX is done without a global lock. */ if (b43legacy_using_pio(dev)) { spin_lock_irqsave(&wl->irq_lock, flags);