[PATCH] wcn36xx: Add chained transfer support for AMSDU

Bryan O'Donoghue bryan.odonoghue at linaro.org
Mon Oct 18 14:46:23 PDT 2021


On 18/10/2021 12:48, Loic Poulain wrote:
> WCNSS RX DMA transfer support is limited to 3872 bytes, which is
> enough for simple MPDUs (single MSDU), but not enough for cases
> with A-MSDU (depending on max AMSDU size or max MPDU size).
> 
> In that case the MPDU is spread ove multiple transfers, with the
> first transfer containing the MPDU header and (at least) the first
> A-MSDU subframe and additional transfer(s) containing the following
> A-MSDUs. This can be handled with a series of flags to tagging the
> first and last A-MSDU transfers.
> 
> In that case we have to bufferize and re-linearize the A-MSDU buffers
> into a proper MPDU skb before forwarding to mac80211 (in the same way
> as it is done in ath10k).
> 
> This change also includes sanity check of the buffer descriptor to
> prevent skb overflow.

I like this patch and I think it plugs a gap we have but, my question 
is, have we seen this code be triggered at least once ?

I'm a bit reticent about apply it upstream unless/until we have.

---
bod



More information about the wcn36xx mailing list