Since 'filled' member in station_info changed to u64, BIT_ULL macro should be used with NL80211_STA_INFO_* attribute types instead of BIT.
The BIT macro uses unsigned long type which some architectures handle as 32bit and this results in compilation warnings such as:
net/mac80211/sta_info.c:2223:2: warning: left shift count >= width of type sinfo->filled |= BIT(NL80211_STA_INFO_TID_STATS); ^
Signed-off-by: Omer Efrat omer.efrat@tandemg.com --- net/batman-adv/bat_v_elp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/batman-adv/bat_v_elp.c b/net/batman-adv/bat_v_elp.c index 71c20c1..71e6474 100644 --- a/net/batman-adv/bat_v_elp.c +++ b/net/batman-adv/bat_v_elp.c @@ -114,7 +114,7 @@ static u32 batadv_v_elp_get_throughput(struct batadv_hardif_neigh_node *neigh) } if (ret) goto default_throughput; - if (!(sinfo.filled & BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT))) + if (!(sinfo.filled & BIT_ULL(NL80211_STA_INFO_EXPECTED_THROUGHPUT))) goto default_throughput;
return sinfo.expected_throughput / 100;
On Donnerstag, 14. Juni 2018 13:12:17 CEST Omer Efrat wrote:
Since 'filled' member in station_info changed to u64, BIT_ULL macro should be used with NL80211_STA_INFO_* attribute types instead of BIT.
The BIT macro uses unsigned long type which some architectures handle as 32bit and this results in compilation warnings such as:
net/mac80211/sta_info.c:2223:2: warning: left shift count >= width of type sinfo->filled |= BIT(NL80211_STA_INFO_TID_STATS); ^
Signed-off-by: Omer Efrat omer.efrat@tandemg.com
net/batman-adv/bat_v_elp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
It is called "batman-adv" and not "batman". And when (as in commit) did it change to 64 bit? Shouldn't there be a "Fixed: " line to know which kernels are affected (especially for the stable kernel developers).
Kind regards, Sven
Hi,
here are the infos which were missing and which should be included in the commit message
Since 'filled' member in station_info changed to u64
in commit 739960f128e5 ("cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION")
[...]
Fixes: d62890885efb ("batman-adv: Accept only filled wifi station info")
Signed-off-by: Omer Efrat omer.efrat@tandemg.com
Kind regards, Sven
On Thu, 2018-06-14 at 12:53 +0200, Sven Eckelmann wrote:
Hi,
here are the infos which were missing and which should be included in the commit message
Since 'filled' member in station_info changed to u64
in commit 739960f128e5 ("cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION")
Yeah, which actually means this patch isn't needed?
BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT) is fine since NL80211_STA_INFO_EXPECTED_THROUGHPUT is actually == 27.
johannes
On Donnerstag, 14. Juni 2018 13:05:16 CEST Johannes Berg wrote: [...]
in commit 739960f128e5 ("cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION")
Yeah, which actually means this patch isn't needed?
BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT) is fine since NL80211_STA_INFO_EXPECTED_THROUGHPUT is actually == 27.
Hadn't verified this before but this would make sense. So no fixes here - just some "cleanup" patch to make these tests more consistent. Thanks for checking.
@Omer: If you want it as cleanup patch then make it clear in the patch that the warning you've showed here is not actually not something which you will see in in the modified code.
Kind regards, Sven
Sven Eckelmann wrote:
@Omer: If you want it as cleanup patch then make it clear in the patch that the warning you've showed here is not actually not something which you will see in in the modified code.
I will send v3 as clean up patch.
Omer Efrat.
________________________________________ From: Sven Eckelmann sven@narfation.org Sent: Thursday, June 14, 2018 2:20:17 PM To: Johannes Berg Cc: b.a.t.m.a.n@lists.open-mesh.org; Omer Efrat; netdev@vger.kernel.org; linux-wireless@vger.kernel.org Subject: Re: [B.A.T.M.A.N.] [PATCH v2 3/5] batman: use BIT_ULL for NL80211_STA_INFO_* attribute types
On Donnerstag, 14. Juni 2018 13:05:16 CEST Johannes Berg wrote: [...]
in commit 739960f128e5 ("cfg80211/nl80211: Add support for NL80211_STA_INFO_RX_DURATION")
Yeah, which actually means this patch isn't needed?
BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT) is fine since NL80211_STA_INFO_EXPECTED_THROUGHPUT is actually == 27.
Hadn't verified this before but this would make sense. So no fixes here - just some "cleanup" patch to make these tests more consistent. Thanks for checking.
@Omer: If you want it as cleanup patch then make it clear in the patch that the warning you've showed here is not actually not something which you will see in in the modified code.
Kind regards, Sven
b.a.t.m.a.n@lists.open-mesh.org