All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: ath10k <ath10k@lists.infradead.org>
Subject: Re: Need to get msdu-chaining working.
Date: Thu, 27 Feb 2014 08:08:29 -0800	[thread overview]
Message-ID: <530F62FD.9060701@candelatech.com> (raw)
In-Reply-To: <CA+BoTQmr6+9wJ87pOmzPEBwPCMG5emfkfcUmzxXpH6gVPW+zFw@mail.gmail.com>

On 02/26/2014 10:51 PM, Michal Kazior wrote:
> On 27 February 2014 00:38, Ben Greear <greearb@candelatech.com> wrote:
>>
>> I'm using raw-rx mode in my firmware, and it's throughput is
>> extremely poor at higher speeds.  I see large numbers of warnings
>> about msdu_chaining, so I suspect this may be the reason.
>
> I assume this requires your custom FW?

Yes.  I am not sure you can use raw tx with standard firmware (yet)?

Or at least, you cannot have tx cooked and rx raw.

>> Does anyone have any suggestions for what needs to be done
>> to handle these sorts of frames properly?
>>
>>                          /* FIXME: we do not support chaining yet.
>>                           * this needs investigation */
>>                          if (msdu_chaining) {
>>                                  ath10k_warn("htt rx msdu_chaining is true\n");
>>                                  ath10k_htt_rx_free_msdu_chain(msdu_head);
>>                                  continue;
>>                          }
>
>>From what I understand chained msdu is a msdu that hasn't fit into the
> rx buffer and is split across the popped amsdu list. I suspect only
> the first msdu in chain has the htt_rx_desc and all other have not
> (this is what the current code does, but you'll need to verify that).
>
> I would try to concatenate all msdus into one (lots of memcpy :( ) or
> increase the HTT_RX_BUF_SIZE so that A-MSDU frames can fit into a
> single buffer (hopefully FW/HW is capable of doing that).

I think in raw mode the hardware/firmware may not try to re-assemble the skb,
or also when no peer object can be found.  This might be an issue in monitor
mode as well, but I'm not certain about that.

I think there is a way to chain skb data chunks w/out doing the copying,
but I am not certain how that would be done properly.

Thanks,
Ben


-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

  reply	other threads:[~2014-02-27 16:08 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-26 23:38 Need to get msdu-chaining working Ben Greear
2014-02-27  6:51 ` Michal Kazior
2014-02-27 16:08   ` Ben Greear [this message]
2014-02-28  7:36     ` Michal Kazior
2014-03-03 22:13       ` Ben Greear
2014-03-04  7:36         ` Michal Kazior
2014-03-04 16:59           ` Ben Greear
2014-03-05  8:09             ` Michal Kazior
2014-03-05 20:50               ` Ben Greear
2014-03-06  7:36                 ` Michal Kazior
2014-02-28  1:18   ` Ben Greear
2014-02-28  7:41     ` Michal Kazior
2014-02-28 19:12       ` Ben Greear

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=530F62FD.9060701@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=ath10k@lists.infradead.org \
    --cc=michal.kazior@tieto.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.