Thanks, I fixed that and queued it up ;) http://bu3sch.de/patches/wireless-dev/20070803-1186092135/patches/bcm43xx-mac80211-provide-information-to-allow-transmission-rate-decreases.patch On Thursday 02 August 2007, Larry Finger wrote: > In bcm43xx-mac80211, the mechanism for decreasing the transmit rate cannot > be triggered. This may be shown by walking away from the AP with a laptop. > At some distance, communications will be lost and never recovered because > the rate decreasing mechanism of rc80211_simple needs to see excessive_retries > set in the ieee80211_tx_status struct. With this patch, the transmit rate > will decrease until communications restart. > > Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > --- > > John and Michael, > > This is based on the wireless-dev tree. > > Larry > > bcm43xx_dma.c | 3 +++ > 1 file changed, 3 insertions(+) > > Index: wireless-dev/drivers/net/wireless/bcm43xx-mac80211/bcm43xx_dma.c > =================================================================== > --- wireless-dev.orig/drivers/net/wireless/bcm43xx-mac80211/bcm43xx_dma.c > +++ wireless-dev/drivers/net/wireless/bcm43xx-mac80211/bcm43xx_dma.c > @@ -1311,6 +1311,9 @@ void bcm43xx_dma_handle_txstatus(struct > */ > if (status->acked) > meta->txstat.flags |= IEEE80211_TX_STATUS_ACK; > + else > + if (!(meta->txstat.flags & IEEE80211_TXCTL_NO_ACK)) > + meta->txstat.excessive_retries = 1; > meta->txstat.retry_count = status->frame_count - 1; > ieee80211_tx_status_irqsafe(dev->wl->hw, meta->skb, &(meta->txstat)); > /* skb is freed by ieee80211_tx_status_irqsafe() */ > > - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html