All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@openwrt.org>
To: Thomas Huehn <thomas@net.t-labs.tu-berlin.de>,
	linux-wireless@vger.kernel.org
Cc: johannes@sipsolutions.net
Subject: Re: [PATCH v3 08/10] mac80211: add max. lossless throughput per rate to rc_stats
Date: Sun, 22 Mar 2015 00:20:57 +0100	[thread overview]
Message-ID: <550DFCD9.7080809@openwrt.org> (raw)
In-Reply-To: <1426613359-31306-8-git-send-email-thomas@net.t-labs.tu-berlin.de>

On 2015-03-17 18:29, Thomas Huehn wrote:
> This patch adds the new statistic "maximum possible lossless
> throughput" to Minstrels and Minstrel-HTs rc_stats (in debugfs). This
> enables comprehensive comparison between current per-rate throughput
> and max. achievable per-rate throughput.
> 
> Signed-off-by: Thomas Huehn <thomas@net.t-labs.tu-berlin.de>
> ---
>  net/mac80211/rc80211_minstrel.c            | 10 ++++
>  net/mac80211/rc80211_minstrel.h            |  1 +
>  net/mac80211/rc80211_minstrel_debugfs.c    | 18 ++++---
>  net/mac80211/rc80211_minstrel_ht.c         | 84 ++++++++++++++++--------------
>  net/mac80211/rc80211_minstrel_ht.h         |  4 +-
>  net/mac80211/rc80211_minstrel_ht_debugfs.c | 24 +++++----
>  6 files changed, 83 insertions(+), 58 deletions(-)
> 
> diff --git a/net/mac80211/rc80211_minstrel.c b/net/mac80211/rc80211_minstrel.c
> index d985227..c2afe51 100644
> --- a/net/mac80211/rc80211_minstrel.c
> +++ b/net/mac80211/rc80211_minstrel.c
> @@ -85,6 +85,16 @@ int minstrel_get_tp_avg(struct minstrel_rate *mr)
>  		return MINSTREL_TRUNC(mr->stats.prob_ewma * (100000 / usecs));
>  }
>  
> +/* return max. potential lossless throughput */
> +inline int
> +minstrel_get_tp_max(struct minstrel_rate *mr)
> +{
> +	if (!mr->perfect_tx_time)
> +		return 0;
> +
> +	return 100000 / mr->perfect_tx_time;
> +}
> +
>  /* find & sort topmost throughput rates */
>  static inline void
>  minstrel_sort_best_tp_rates(struct minstrel_sta_info *mi, int i, u8 *tp_list)
How about merging it with the _avg function, like in minstrel_ht.

> diff --git a/net/mac80211/rc80211_minstrel_ht.h b/net/mac80211/rc80211_minstrel_ht.h
> index 68dce4f..850d352 100644
> --- a/net/mac80211/rc80211_minstrel_ht.h
> +++ b/net/mac80211/rc80211_minstrel_ht.h
> @@ -121,6 +121,8 @@ struct minstrel_ht_sta_priv {
>  
>  void minstrel_ht_add_sta_debugfs(void *priv, void *priv_sta, struct dentry *dir);
>  void minstrel_ht_remove_sta_debugfs(void *priv, void *priv_sta);
> -int minstrel_ht_get_tp_avg(struct minstrel_ht_sta *mi, int group, int rate);
> +int minstrel_ht_get_tp_avg(struct minstrel_ht_sta *mi, int group, int rate,
> +			   int prob_ewma);
> +int minstrel_ht_get_tp_max(struct minstrel_ht_sta *mi, int group, int rate);
Nonexistant function declaration, please remove it.

- Felix

  reply	other threads:[~2015-03-21 23:21 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-17 17:29 [PATCH v3 01/10] mac80211: enhance readability of Minstrels rc_stats output Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 02/10] mac80211: enhance readability of Minstrel-HTs " Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 03/10] mac80211: add new Minstrel statistic output via csv Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 04/10] mac80211: add new Minstrel-HT " Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 05/10] mac80211: unify Minstrel & Minstrel-HTs calculation of rate statistics Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 06/10] mac80211: improve Minstrel variable & function naming Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 07/10] mac80211: restructure per-rate throughput calculation into function Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 08/10] mac80211: add max. lossless throughput per rate to rc_stats Thomas Huehn
2015-03-21 23:20   ` Felix Fietkau [this message]
2015-03-17 17:29 ` [PATCH v3 09/10] mac80211: reduce calculation costs of EWMA Thomas Huehn
2015-03-17 17:29 ` [PATCH v3 10/10] mac80211: add standard deviation to Minstrels throughput statistic Thomas Huehn

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=550DFCD9.7080809@openwrt.org \
    --to=nbd@openwrt.org \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=thomas@net.t-labs.tu-berlin.de \
    /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.