From: Johannes Berg <johannes@sipsolutions.net>
To: Chun-Yeow Yeoh <yeohchunyeow@cozybit.com>
Cc: linux-wireless@vger.kernel.org, linville@tuxdriver.com,
devel@lists.open80211s.org
Subject: Re: [PATCH] mac80211: allow lowest basic rate for unicast management frame in mesh
Date: Thu, 01 Aug 2013 09:44:28 +0200 [thread overview]
Message-ID: <1375343068.8608.11.camel@jlt4.sipsolutions.net> (raw)
In-Reply-To: <1375148892-18121-1-git-send-email-yeohchunyeow@cozybit.com> (sfid-20130730_034821_964354_C1059677)
On Mon, 2013-07-29 at 18:48 -0700, Chun-Yeow Yeoh wrote:
> Allow lowest basic rate to be used for unicast management frame in
> mesh. Otherwise, the lowest supported rate is used for unicast
> management frame, such as 1Mbps for 2.4GHz and 6Mbps for 5GHz. Rename
> the rc_send_low_broadcast to re_send_low_basicrate since now it is
> also applied to unicast management frame in mesh.
>
> Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@cozybit.com>
> ---
> net/mac80211/rate.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/net/mac80211/rate.c b/net/mac80211/rate.c
> index ba63ac8..8038d47 100644
> --- a/net/mac80211/rate.c
> +++ b/net/mac80211/rate.c
> @@ -210,7 +210,7 @@ static bool rc_no_data_or_no_ack_use_min(struct ieee80211_tx_rate_control *txrc)
> !ieee80211_is_data(fc);
> }
>
> -static void rc_send_low_broadcast(s8 *idx, u32 basic_rates,
> +static void rc_send_low_basicrate(s8 *idx, u32 basic_rates,
> struct ieee80211_supported_band *sband)
> {
> u8 i;
> @@ -269,6 +269,7 @@ bool rate_control_send_low(struct ieee80211_sta *sta,
> {
> struct ieee80211_tx_info *info = IEEE80211_SKB_CB(txrc->skb);
> struct ieee80211_supported_band *sband = txrc->sband;
> + struct sta_info *sta_mesh = container_of(sta, struct sta_info, sta);
That doesn't seem like a good idea - IMHO you shouldn't use container_of
on NULL even if it still works in the end.
Also it might be a good idea to use more regular names: struct
ieee80211_sta *pubsta, struct sta_info *sta.
> @@ -281,10 +282,16 @@ bool rate_control_send_low(struct ieee80211_sta *sta,
> return true;
> }
>
> - rc_send_low_broadcast(&info->control.rates[0].idx,
> + rc_send_low_basicrate(&info->control.rates[0].idx,
> txrc->bss_conf->basic_rates,
> sband);
> }
> +
> + if (sta && ieee80211_vif_is_mesh(&sta_mesh->sdata->vif))
> + rc_send_low_basicrate(&info->control.rates[0].idx,
> + txrc->bss_conf->basic_rates,
> + sband);
I don't get this - that just duplicates the code above, no chance to
refactor it a bit instead of duplicating the call?
johannes
next prev parent reply other threads:[~2013-08-01 7:44 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-30 1:48 [PATCH] mac80211: allow lowest basic rate for unicast management frame in mesh Chun-Yeow Yeoh
2013-08-01 7:44 ` Johannes Berg [this message]
2013-08-02 5:14 ` Yeoh Chun-Yeow
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=1375343068.8608.11.camel@jlt4.sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=devel@lists.open80211s.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=yeohchunyeow@cozybit.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