projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0e7face
)
wifi: mac80211: fix beacon interval calculation overflow
author
Lachlan Hodges
<lachlan.hodges@morsemicro.com>
Sat, 21 Jun 2025 12:32:09 +0000
(22:32 +1000)
committer
Johannes Berg
<johannes.berg@intel.com>
Tue, 24 Jun 2025 07:04:55 +0000
(09:04 +0200)
As we are converting from TU to usecs, a beacon interval of
100*1024 usecs will lead to integer wrapping. To fix change
to use a u32.
Fixes:
057d5f4ba1e4
("mac80211: sync dtim_count to TSF")
Signed-off-by: Lachlan Hodges <lachlan.hodges@morsemicro.com>
Link:
https://patch.msgid.link/20250621123209.511796-1-lachlan.hodges@morsemicro.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/util.c
patch
|
blob
|
blame
|
history
diff --git
a/net/mac80211/util.c
b/net/mac80211/util.c
index 27d414efa3fd4bda40d2a37b14da6a4aa6bf0a02..a125995ed2525e9964cc3c35007f6f40e792e581 100644
(file)
--- a/
net/mac80211/util.c
+++ b/
net/mac80211/util.c
@@
-3884,7
+3884,7
@@
void ieee80211_recalc_dtim(struct ieee80211_local *local,
{
u64 tsf = drv_get_tsf(local, sdata);
u64 dtim_count = 0;
- u
16
beacon_int = sdata->vif.bss_conf.beacon_int * 1024;
+ u
32
beacon_int = sdata->vif.bss_conf.beacon_int * 1024;
u8 dtim_period = sdata->vif.bss_conf.dtim_period;
struct ps_data *ps;
u8 bcns_from_dtim;