Message ID | 1459241642-3730-1-git-send-email-mohammed@qca.qualcomm.com (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Kalle Valo |
Headers | show |
Hi Mohammed, [auto build test ERROR on ath6kl/ath-next] [also build test ERROR on v4.6-rc1 next-20160329] [if your patch is applied to the wrong git tree, please drop us a note to help improving the system] url: https://github.com/0day-ci/linux/commits/Mohammed-Shafi-Shajakhan/ath10k-Add-support-for-ath10k_sta_statistics-support/20160329-165849 base: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git ath-next config: sparc64-allyesconfig (attached as .config) reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=sparc64 All errors (new ones prefixed by >>): drivers/net/wireless/ath/ath10k/debugfs_sta.c: In function 'ath10k_sta_statistics': >> drivers/net/wireless/ath/ath10k/debugfs_sta.c:45:2: error: implicit declaration of function 'ath10k_peer_stats_enabled' [-Werror=implicit-function-declaration] if (!ath10k_peer_stats_enabled(ar)) ^ >> drivers/net/wireless/ath/ath10k/debugfs_sta.c:48:7: error: 'struct station_info' has no member named 'rx_duration' sinfo->rx_duration = arsta->rx_duration; ^ >> drivers/net/wireless/ath/ath10k/debugfs_sta.c:49:27: error: 'NL80211_STA_INFO_RX_DURATION' undeclared (first use in this function) sinfo->filled |= 1ULL << NL80211_STA_INFO_RX_DURATION; ^ drivers/net/wireless/ath/ath10k/debugfs_sta.c:49:27: note: each undeclared identifier is reported only once for each function it appears in cc1: some warnings being treated as errors vim +/ath10k_peer_stats_enabled +45 drivers/net/wireless/ath/ath10k/debugfs_sta.c 39 struct ieee80211_sta *sta, 40 struct station_info *sinfo) 41 { 42 struct ath10k_sta *arsta = (struct ath10k_sta *)sta->drv_priv; 43 struct ath10k *ar = arsta->arvif->ar; 44 > 45 if (!ath10k_peer_stats_enabled(ar)) 46 return; 47 > 48 sinfo->rx_duration = arsta->rx_duration; > 49 sinfo->filled |= 1ULL << NL80211_STA_INFO_RX_DURATION; 50 } 51 52 static ssize_t ath10k_dbg_sta_read_aggr_mode(struct file *file, --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com> writes: > From: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com> > > Enable support for 'drv_sta_statistics' callback. > Export rx_duration support if available to cfg80211/nl80211 > > This can also act as a placeholder for any new per STA stats support > > Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com> > --- > [v3] removed conditions for ath10k state checks based on Michal's suggestion > > Dependencies: > > 1. cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION (under review) > 2. iw: Add support for NL80211_STA_INFO_RX_DURATION netlink > attribute (under review) > 3. ath10k: Enable debugfs provision to enable Peer Stats feature (merged in pending branch) The dependency is in mac80211-next currently: 49da43f94f5e cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION (Sorry for the noise, I wish patchwork would have a feature to add notes)
diff --git a/drivers/net/wireless/ath/ath10k/debug.h b/drivers/net/wireless/ath/ath10k/debug.h index 6206edd..01c500f 100644 --- a/drivers/net/wireless/ath/ath10k/debug.h +++ b/drivers/net/wireless/ath/ath10k/debug.h @@ -155,6 +155,10 @@ ath10k_debug_get_new_fw_crash_data(struct ath10k *ar) void ath10k_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta, struct dentry *dir); void ath10k_sta_update_rx_duration(struct ath10k *ar, struct list_head *peer); +void ath10k_sta_statistics(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, + struct station_info *sinfo); + #else static inline void ath10k_sta_update_rx_duration(struct ath10k *ar, struct list_head *peer) diff --git a/drivers/net/wireless/ath/ath10k/debugfs_sta.c b/drivers/net/wireless/ath/ath10k/debugfs_sta.c index 67ef75b..c5396bf 100644 --- a/drivers/net/wireless/ath/ath10k/debugfs_sta.c +++ b/drivers/net/wireless/ath/ath10k/debugfs_sta.c @@ -35,6 +35,20 @@ void ath10k_sta_update_rx_duration(struct ath10k *ar, struct list_head *head) rcu_read_unlock(); } +void ath10k_sta_statistics(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, + struct station_info *sinfo) +{ + struct ath10k_sta *arsta = (struct ath10k_sta *)sta->drv_priv; + struct ath10k *ar = arsta->arvif->ar; + + if (!ath10k_peer_stats_enabled(ar)) + return; + + sinfo->rx_duration = arsta->rx_duration; + sinfo->filled |= 1ULL << NL80211_STA_INFO_RX_DURATION; +} + static ssize_t ath10k_dbg_sta_read_aggr_mode(struct file *file, char __user *user_buf, size_t count, loff_t *ppos) diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 20d72e2..02edeff 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -7271,6 +7271,7 @@ static const struct ieee80211_ops ath10k_ops = { #endif #ifdef CONFIG_MAC80211_DEBUGFS .sta_add_debugfs = ath10k_sta_add_debugfs, + .sta_statistics = ath10k_sta_statistics, #endif };