Linux wireless drivers development
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@nbd.name>
To: Sriram R <srirrama@qti.qualcomm.com>,
	"Sriram R (QUIC)" <quic_srirrama@quicinc.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Cc: "johannes@sipsolutions.net" <johannes@sipsolutions.net>
Subject: Re: [RFC] mac80211: Mesh Fast xmit support
Date: Sat, 4 Dec 2021 10:18:43 +0100	[thread overview]
Message-ID: <35940119-ae70-b040-5645-9a90cb8f9046@nbd.name> (raw)
In-Reply-To: <SN6PR02MB4334A1D49795C50D341BB1D6F76B9@SN6PR02MB4334.namprd02.prod.outlook.com>

On 2021-12-04 10:14, Sriram R wrote:
>> -----Original Message-----
>> From: Felix Fietkau <nbd@nbd.name>
>> Sent: Saturday, December 4, 2021 1:55 PM
>> To: Sriram R (QUIC) <quic_srirrama@quicinc.com>; linux-
>> wireless@vger.kernel.org
>> Cc: johannes@sipsolutions.net
>> Subject: Re: [RFC] mac80211: Mesh Fast xmit support
>> 
>> WARNING: This email originated from outside of Qualcomm. Please be wary
>> of any links or attachments, and do not enable macros.
>> 
>> On 2021-12-04 03:04, Sriram R wrote:
>> > Support Fast xmit for mesh device types by caching the header
>> > corresponding to the ethernet DA and reusing the cached header (mac,
>> > mesh, llc) everytime the packet is intended for that DA.
>> >
>> > This will avoid multiple path table lookups during header generation
>> > for a mesh packet tx.
>> >
>> > Freshness of the header is verified by identifying change in mesh
>> > paths before using the header and corresponding changes to the header
>> > and cache entry is done on the fly.
>> >
>> > Mutable fields of the header such as eth SA, tid, mesh SN, PN are
>> > updated for each xmit.
>> >
>> > Each cache entry is about 100Bytes, least used/expired entries are
>> > periodically removed when cache gets almost full.
>> > Currently the size is set to 50 entries.
>> >
>> > Driver needs to advertise NL80211_EXT_FEATURE_MESH_FAST_XMIT
>> > to enable this support and setup this cache.
>> Thanks for working on this! I will likely take a closer look at it soon.
>> One quick question: does this impose any extra requirements on the driver,
>> or why does the driver need to advertise support for this?
> Hi Felix,
> 
>   There is no requirement from driver/hw as such and this has similar
> requirement as IEEE80211_HW_SUPPORT_FAST_XMIT being enabled from driver.
> But I was not sure if adding ~5KB (50 entries x ~100Bytes) by default
> was acceptable for those drivers which already enabled FAST_XMIT.
> Hence added this extra control from driver to enable this feature for this RFC.
> Kindly suggest if other alternatives could be taken up.
I think 5 KB memory use is very small compared to the memory used for 
packets and other data. If this is only about memory use, it also 
doesn't make much sense to me for the driver to decide if this is going 
to be used.
My suggestion would be to not introduce an extra capability and simply 
enable it if fast-xmit is supported.
Maybe it would make sense to allow the user to configure this, because 
some networks might benefit from a larger cache.

- Felix

  reply	other threads:[~2021-12-04  9:18 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-04  2:04 [RFC] mac80211: Mesh Fast xmit support Sriram R
2021-12-04  8:25 ` Felix Fietkau
2021-12-04  9:14   ` Sriram R
2021-12-04  9:18     ` Felix Fietkau [this message]
2021-12-04  9:38       ` Sriram R (QUIC)

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=35940119-ae70-b040-5645-9a90cb8f9046@nbd.name \
    --to=nbd@nbd.name \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=quic_srirrama@quicinc.com \
    --cc=srirrama@qti.qualcomm.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