ath9k: Fix rate control debugging
Update the rate statistics only when debugfs has been enabled in ath9k and mac80211 and move the stat() functions under proper conditionals. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
1c11e10b6a
commit
4d28f771ff
|
@ -982,16 +982,6 @@ static void ath_rc_update_per(struct ath_softc *sc,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ath_debug_stat_retries(struct ath_rate_priv *rc, int rix,
|
|
||||||
int xretries, int retries, u8 per)
|
|
||||||
{
|
|
||||||
struct ath_rc_stats *stats = &rc->rcstats[rix];
|
|
||||||
|
|
||||||
stats->xretries += xretries;
|
|
||||||
stats->retries += retries;
|
|
||||||
stats->per = per;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ath_rc_update_ht(struct ath_softc *sc,
|
static void ath_rc_update_ht(struct ath_softc *sc,
|
||||||
struct ath_rate_priv *ath_rc_priv,
|
struct ath_rate_priv *ath_rc_priv,
|
||||||
struct ieee80211_tx_info *tx_info,
|
struct ieee80211_tx_info *tx_info,
|
||||||
|
@ -1065,14 +1055,6 @@ static void ath_rc_update_ht(struct ath_softc *sc,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ath_debug_stat_rc(struct ath_rate_priv *rc, int final_rate)
|
|
||||||
{
|
|
||||||
struct ath_rc_stats *stats;
|
|
||||||
|
|
||||||
stats = &rc->rcstats[final_rate];
|
|
||||||
stats->success++;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ath_rc_tx_status(struct ath_softc *sc,
|
static void ath_rc_tx_status(struct ath_softc *sc,
|
||||||
struct ath_rate_priv *ath_rc_priv,
|
struct ath_rate_priv *ath_rc_priv,
|
||||||
struct sk_buff *skb)
|
struct sk_buff *skb)
|
||||||
|
@ -1352,6 +1334,24 @@ static void ath_rate_update(void *priv, struct ieee80211_supported_band *sband,
|
||||||
|
|
||||||
#if defined(CONFIG_MAC80211_DEBUGFS) && defined(CONFIG_ATH9K_DEBUGFS)
|
#if defined(CONFIG_MAC80211_DEBUGFS) && defined(CONFIG_ATH9K_DEBUGFS)
|
||||||
|
|
||||||
|
void ath_debug_stat_rc(struct ath_rate_priv *rc, int final_rate)
|
||||||
|
{
|
||||||
|
struct ath_rc_stats *stats;
|
||||||
|
|
||||||
|
stats = &rc->rcstats[final_rate];
|
||||||
|
stats->success++;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ath_debug_stat_retries(struct ath_rate_priv *rc, int rix,
|
||||||
|
int xretries, int retries, u8 per)
|
||||||
|
{
|
||||||
|
struct ath_rc_stats *stats = &rc->rcstats[rix];
|
||||||
|
|
||||||
|
stats->xretries += xretries;
|
||||||
|
stats->retries += retries;
|
||||||
|
stats->per = per;
|
||||||
|
}
|
||||||
|
|
||||||
static ssize_t read_file_rcstat(struct file *file, char __user *user_buf,
|
static ssize_t read_file_rcstat(struct file *file, char __user *user_buf,
|
||||||
size_t count, loff_t *ppos)
|
size_t count, loff_t *ppos)
|
||||||
{
|
{
|
||||||
|
|
|
@ -213,10 +213,24 @@ struct ath_rate_priv {
|
||||||
|
|
||||||
#if defined(CONFIG_MAC80211_DEBUGFS) && defined(CONFIG_ATH9K_DEBUGFS)
|
#if defined(CONFIG_MAC80211_DEBUGFS) && defined(CONFIG_ATH9K_DEBUGFS)
|
||||||
struct dentry *debugfs_rcstats;
|
struct dentry *debugfs_rcstats;
|
||||||
#endif
|
|
||||||
struct ath_rc_stats rcstats[RATE_TABLE_SIZE];
|
struct ath_rc_stats rcstats[RATE_TABLE_SIZE];
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if defined(CONFIG_MAC80211_DEBUGFS) && defined(CONFIG_ATH9K_DEBUGFS)
|
||||||
|
void ath_debug_stat_rc(struct ath_rate_priv *rc, int final_rate);
|
||||||
|
void ath_debug_stat_retries(struct ath_rate_priv *rc, int rix,
|
||||||
|
int xretries, int retries, u8 per);
|
||||||
|
#else
|
||||||
|
static inline void ath_debug_stat_rc(struct ath_rate_priv *rc, int final_rate)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
static inline void ath_debug_stat_retries(struct ath_rate_priv *rc, int rix,
|
||||||
|
int xretries, int retries, u8 per)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_ATH9K_RATE_CONTROL
|
#ifdef CONFIG_ATH9K_RATE_CONTROL
|
||||||
int ath_rate_control_register(void);
|
int ath_rate_control_register(void);
|
||||||
void ath_rate_control_unregister(void);
|
void ath_rate_control_unregister(void);
|
||||||
|
|
Loading…
Reference in New Issue