summaryrefslogtreecommitdiffstats
path: root/net/mac80211
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-04-22 11:25:43 +0200
committerJohn W. Linville <linville@tuxdriver.com>2009-04-22 16:57:20 -0400
commit1d4df3a50f40a731fc03c86a76535ed141b0e4bc (patch)
tree6d0867c4f48a2df93cc6854d33e98d5e8165b0fe /net/mac80211
parenteb1a685e07310b5137c561e25ab738292db2c8a5 (diff)
downloadlinux-1d4df3a50f40a731fc03c86a76535ed141b0e4bc.tar.gz
linux-1d4df3a50f40a731fc03c86a76535ed141b0e4bc.tar.bz2
linux-1d4df3a50f40a731fc03c86a76535ed141b0e4bc.zip
mac80211: fix variable truncation on 32-bit
Stephen Rothwell reported these warnings from a 32-bit build: net/mac80211/mlme.c:1771: warning: left shift count >= width of type net/mac80211/mlme.c:1772: warning: left shift count >= width of type net/mac80211/mlme.c:1773: warning: left shift count >= width of type net/mac80211/mlme.c:1774: warning: left shift count >= width of type net/mac80211/mlme.c:1775: warning: left shift count >= width of type This shows a bug in my code -- BIT(X) uses just "1 << X" which means a 32-bit integer on 32-bit platforms, but the code here needs a u64 on all platforms. Fix this by using "1ULL << X" instead of BIT(X). Thanks Stephen! Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/mlme.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 1b0b7aa387ee..e819c02d13f0 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -1743,12 +1743,12 @@ static void ieee80211_rx_mgmt_probe_resp(struct ieee80211_sub_if_data *sdata,
* look out for other vendor IEs.
*/
static const u64 care_about_ies =
- BIT(WLAN_EID_COUNTRY) |
- BIT(WLAN_EID_ERP_INFO) |
- BIT(WLAN_EID_CHANNEL_SWITCH) |
- BIT(WLAN_EID_PWR_CONSTRAINT) |
- BIT(WLAN_EID_HT_CAPABILITY) |
- BIT(WLAN_EID_HT_INFORMATION);
+ (1ULL << WLAN_EID_COUNTRY) |
+ (1ULL << WLAN_EID_ERP_INFO) |
+ (1ULL << WLAN_EID_CHANNEL_SWITCH) |
+ (1ULL << WLAN_EID_PWR_CONSTRAINT) |
+ (1ULL << WLAN_EID_HT_CAPABILITY) |
+ (1ULL << WLAN_EID_HT_INFORMATION);
static void ieee80211_rx_mgmt_beacon(struct ieee80211_sub_if_data *sdata,
struct ieee80211_mgmt *mgmt,