| From 1e54ff0945acd7caa99e980ec5648a54d6a9f60d Mon Sep 17 00:00:00 2001 |
| From: Anders Roxell <anders.roxell@linaro.org> |
| Date: Fri, 22 Feb 2019 16:25:54 +0100 |
| Subject: batman-adv: fix warning in function batadv_v_elp_get_throughput |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| [ Upstream commit ca8c3b922e7032aff6cc3fd05548f4df1f3df90e ] |
| |
| When CONFIG_CFG80211 isn't enabled the compiler correcly warns about |
| 'sinfo.pertid' may be unused. It can also happen for other error |
| conditions that it not warn about. |
| |
| net/batman-adv/bat_v_elp.c: In function ‘batadv_v_elp_get_throughput.isra.0’: |
| include/net/cfg80211.h:6370:13: warning: ‘sinfo.pertid’ may be used |
| uninitialized in this function [-Wmaybe-uninitialized] |
| kfree(sinfo->pertid); |
| ~~~~~^~~~~~~~ |
| |
| Rework so that we only release '&sinfo' if cfg80211_get_station returns |
| zero. |
| |
| Fixes: 7d652669b61d ("batman-adv: release station info tidstats") |
| Signed-off-by: Anders Roxell <anders.roxell@linaro.org> |
| Signed-off-by: Sven Eckelmann <sven@narfation.org> |
| Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de> |
| Signed-off-by: Sasha Levin (Microsoft) <sashal@kernel.org> |
| --- |
| net/batman-adv/bat_v_elp.c | 6 ++++-- |
| 1 file changed, 4 insertions(+), 2 deletions(-) |
| |
| diff --git a/net/batman-adv/bat_v_elp.c b/net/batman-adv/bat_v_elp.c |
| index ef0dec20c7d8..5da183b2f4c9 100644 |
| --- a/net/batman-adv/bat_v_elp.c |
| +++ b/net/batman-adv/bat_v_elp.c |
| @@ -104,8 +104,10 @@ static u32 batadv_v_elp_get_throughput(struct batadv_hardif_neigh_node *neigh) |
| |
| ret = cfg80211_get_station(real_netdev, neigh->addr, &sinfo); |
| |
| - /* free the TID stats immediately */ |
| - cfg80211_sinfo_release_content(&sinfo); |
| + if (!ret) { |
| + /* free the TID stats immediately */ |
| + cfg80211_sinfo_release_content(&sinfo); |
| + } |
| |
| dev_put(real_netdev); |
| if (ret == -ENOENT) { |
| -- |
| 2.20.1 |
| |