linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Julian Calaby <julian.calaby@gmail.com>
To: Stanislaw Gruszka <sgruszka@redhat.com>
Cc: Mathias Kresin <dev@kresin.me>,
	linux-wireless <linux-wireless@vger.kernel.org>,
	Helmut Schaa <helmut.schaa@googlemail.com>
Subject: Re: [PATCH 05/10] rt2800: make ba_size depend on ampdu_factor
Date: Mon, 14 Nov 2016 20:41:57 +1100	[thread overview]
Message-ID: <CAGRGNgU=3tRrdgzoiGjoGr6QguyYnQ2kadiaX+HWxm0jiKqaqw@mail.gmail.com> (raw)
In-Reply-To: <20161114084536.GB12372@redhat.com>

Hi Stainslaw,

On Mon, Nov 14, 2016 at 7:45 PM, Stanislaw Gruszka <sgruszka@redhat.com> wrote:
> On Sat, Nov 05, 2016 at 01:56:58PM +0100, Mathias Kresin wrote:
>> 02.11.2016 15:11, Stanislaw Gruszka:
>> >
>> >-            sta_priv = sta_to_rt2x00_sta(sta);
>> >+            txdesc->u.ht.mpdu_density = sta->ht_cap.ampdu_density;
>> >             txdesc->u.ht.wcid = sta_priv->wcid;
>> >+
>> >+            if (!(tx_info->flags & IEEE80211_TX_CTL_RATE_CTRL_PROBE)) {
>> >+                    ba_size = IEEE80211_MIN_AMPDU_BUF;
>> >+                    ba_size <<= sta->ht_cap.ampdu_factor;
>> >+                    ba_size = min_t(int, 63, ba_size - 1);
>> >+            }
>> >     }
>> >
>> >     /*
>> >@@ -345,7 +350,7 @@ static void rt2x00queue_create_tx_descriptor_ht(struct rt2x00_dev *rt2x00dev,
>> >             return;
>> >     }
>> >
>> >-    txdesc->u.ht.ba_size = 7;       /* FIXME: What value is needed? */
>> >+    txdesc->u.ht.ba_size = ba_size;
>> >
>> >     /*
>> >      * Only one STBC stream is supported for now.
>> >
>>
>> Having this patch applied, the throughput on a vgv7510kw22 (RT3062F)
>> in AP mode using LEDE head is decreased by somewhat around 10
>> Mbits/sec. I'm using iperf3 for throughput tests and having this
>> patch reverted the throughout is back to 80 Mbits/sec.
>>
>> When bringing down the wifi interface the following messages are
>> logged with the patch applied:
>>
>> [  281.738373] ieee80211 phy0: rt2x00queue_flush_queue: Warning -
>> Queue 2 failed to flush
>> [  281.906380] ieee80211 phy0: rt2x00queue_flush_queue: Warning -
>> Queue 2 failed to flush
>
> Could you check below patch and see if it helps? If it does not,
> could you printk sta->ht_cap.ampdu_density and ba_size values
> and provide them here.
>
> Thanks
> Stanislaw
>
> diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> index 2515702..72c7948 100644
> --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
> @@ -4707,7 +4707,7 @@ static int rt2800_init_registers(struct rt2x00_dev *rt2x00dev)
>             rt2x00_rt_rev_lt(rt2x00dev, RT3070, REV_RT3070E))
>                 rt2x00_set_field32(&reg, MAX_LEN_CFG_MAX_PSDU, 2);
>         else
> -               rt2x00_set_field32(&reg, MAX_LEN_CFG_MAX_PSDU, 1);
> +               rt2x00_set_field32(&reg, MAX_LEN_CFG_MAX_PSDU, 3;

You're missing a closing parenthesis, so it isn't going to work unless
it's added back in.

>         rt2x00_set_field32(&reg, MAX_LEN_CFG_MIN_PSDU, 0);
>         rt2x00_set_field32(&reg, MAX_LEN_CFG_MIN_MPDU, 0);
>         rt2800_register_write(rt2x00dev, MAX_LEN_CFG, reg);

Thanks,

-- 
Julian Calaby

Email: julian.calaby@gmail.com
Profile: http://www.google.com/profiles/julian.calaby/

  reply	other threads:[~2016-11-14  9:42 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-02 14:10 [PATCH 00/10] rt2800: random fixes Stanislaw Gruszka
2016-11-02 14:10 ` [PATCH 01/10] rt2800: correctly report MCS TX parameters Stanislaw Gruszka
2016-11-02 14:10 ` [PATCH 02/10] rt2800usb: do not wipe out USB_DMA_CFG settings Stanislaw Gruszka
2016-11-02 14:10 ` [PATCH 03/10] rt2800: OFDM rates are mandatory Stanislaw Gruszka
2016-11-02 14:10 ` [PATCH 04/10] rt2800: do not overwrite WPDMA_GLO_CFG_WP_DMA_BURST_SIZE Stanislaw Gruszka
2016-11-05 12:55   ` Mathias Kresin
2016-11-14  8:42     ` Stanislaw Gruszka
2016-11-16  8:10       ` Mathias Kresin
2016-11-16 11:53   ` [PATCH v2 " Stanislaw Gruszka
2016-11-17  6:29     ` Kalle Valo
2016-11-02 14:11 ` [PATCH 05/10] rt2800: make ba_size depend on ampdu_factor Stanislaw Gruszka
2016-11-05 12:56   ` Mathias Kresin
2016-11-14  8:45     ` Stanislaw Gruszka
2016-11-14  9:41       ` Julian Calaby [this message]
2016-11-14  9:44         ` Stanislaw Gruszka
2016-11-14 12:43       ` Stanislaw Gruszka
2016-11-16  8:07         ` Mathias Kresin
2016-11-16 12:02           ` Stanislaw Gruszka
2016-11-16 15:54             ` Mathias Kresin
2016-11-14 12:45   ` Stanislaw Gruszka
2016-11-16 13:59   ` [05/10] " Kalle Valo
2016-11-02 14:11 ` [PATCH 06/10] rt2800: correct AUTO_RSP_CFG Stanislaw Gruszka
2016-11-02 14:11 ` [PATCH 07/10] rt2800: correct TX_SW_CFG1 for 5592 Stanislaw Gruszka
2016-11-02 14:11 ` [PATCH 08/10] rt2800: use RTS/CTS protection instead of CTS-to-self Stanislaw Gruszka
2016-11-02 14:11 ` [PATCH 09/10] rt2800: tune *_PROT_CFG parameters Stanislaw Gruszka
2016-11-02 14:11 ` [PATCH 10/10] rt2800: disable CCK rates on HT Stanislaw Gruszka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAGRGNgU=3tRrdgzoiGjoGr6QguyYnQ2kadiaX+HWxm0jiKqaqw@mail.gmail.com' \
    --to=julian.calaby@gmail.com \
    --cc=dev@kresin.me \
    --cc=helmut.schaa@googlemail.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=sgruszka@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).