When reporting Tx status, indicate that only one rate was used.
Otherwise, the rate is frozen at rate index 0 (i.e. 1Mb/s).
Signed-off-by: John W. Linville <[email protected]>
---
drivers/net/wireless/rtl818x/rtl8180_dev.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/rtl818x/rtl8180_dev.c b/drivers/net/wireless/rtl818x/rtl8180_dev.c
index d84ad05..8487327 100644
--- a/drivers/net/wireless/rtl818x/rtl8180_dev.c
+++ b/drivers/net/wireless/rtl818x/rtl8180_dev.c
@@ -188,6 +188,7 @@ static void rtl8180_handle_tx(struct ieee80211_hw *dev, unsigned int prio)
info->flags |= IEEE80211_TX_STAT_ACK;
info->status.rates[0].count = (flags & 0xFF) + 1;
+ info->status.rates[1].idx = -1;
ieee80211_tx_status_irqsafe(dev, skb);
if (ring->entries - skb_queue_len(&ring->queue) == 2)
--
1.6.6.1
On Wed, Apr 28, 2010 at 4:14 PM, John W. Linville
<[email protected]> wrote:
> When reporting Tx status, indicate that only one rate was used.
> Otherwise, the rate is frozen at rate index 0 (i.e. 1Mb/s).
>
> Signed-off-by: John W. Linville <[email protected]>
Stable fix?
The stable whore, Luis
John W. Linville <linville@...> writes:
>
> When reporting Tx status, indicate that only one rate was used.
> Otherwise, the rate is frozen at rate index 0 (i.e. 1Mb/s).
>
> Signed-off-by: John W. Linville <linville@...>
> ---
> drivers/net/wireless/rtl818x/rtl8180_dev.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/wireless/rtl818x/rtl8180_dev.c
b/drivers/net/wireless/rtl818x/rtl8180_dev.c
> index d84ad05..8487327 100644
> --- a/drivers/net/wireless/rtl818x/rtl8180_dev.c
> +++ b/drivers/net/wireless/rtl818x/rtl8180_dev.c
> @@ -188,6 +188,7 @@ static void rtl8180_handle_tx(struct ieee80211_hw *dev,
unsigned int prio)
> info->flags |= IEEE80211_TX_STAT_ACK;
>
> info->status.rates[0].count = (flags & 0xFF) + 1;
> + info->status.rates[1].idx = -1;
>
> ieee80211_tx_status_irqsafe(dev, skb);
> if (ring->entries - skb_queue_len(&ring->queue) == 2)
John,
I can confirm that this patch fixes the regression reported in the thread at
http://marc.info/?l=linux-wireless&m=123720659723688&w=2 so that the rtl8180
wireless driver and the minstrel rate controller now play together OK. I would
endorse the suggestion that this patch is backported to stable. Any chance of
late inclusion in 2.6.34?
Stats for info:
2.6.34-rc6-wl-00-47739-g27957c6
Rate control from /sys/kernel/debug/ieee80211/phy0/rc/name: minstrel
Stats from /sys/kernel/debug/ieee80211/phy0/stations/xx:xx:xx:xx:xx:xx/rc_stats
rate throughput ewma prob this prob this succ/attempt success attempts
P 1 0.9 98.1 100.0 0( 0) 137 142
2 1.8 95.7 100.0 0( 0) 11 11
5.5 4.8 95.7 100.0 0( 0) 11 11
11 9.1 95.7 100.0 0( 0) 11 11
6 5.4 95.9 100.0 0( 0) 18 20
9 8.0 95.2 100.0 0( 0) 14 16
12 10.5 95.3 100.0 0( 0) 13 14
18 15.5 95.2 100.0 0( 0) 21 28
24 20.3 95.4 100.0 0( 0) 65 110
t 36 24.8 81.5 100.0 0( 0) 443 600
T 48 34.7 89.0 100.0 1( 1) 5348 6735
54 17.8 41.1 25.0 0( 0) 16939 20381
Total packet count:: ideal 2794 lookaround 147
Thanks,
Adrian Bassett