Search Linux Wireless

Re: [PATCH] wifi: mac80211: fix BA session teardown race

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2023-08-30 at 09:06 +0200, Koen Vandeputte wrote:
> Hi Johannes,
> 
> I'm running OpenWRT on an AP device and noticed following splat when a
> fair amount of clients was connected to it (roughly 20)
> Do you think this one is affiliated with this patch?

Did you pull this patch in? It's not applied _anywhere_ yet, unless you
did?

Or are you asking if this could be _fixed_ by this patch?

> [   45.032441] WARNING: CPU: 2 PID: 1654 at
> backports-6.1.24/net/mac80211/driver-ops.h:611
> __ieee80211_flush_queues+0x168/0x16c [mac80211]
> [   45.036137] wlan1.sta4: Failed check-sdata-in-driver check, flags: 0x1
[...]
>    45.141905] CPU: 2 PID: 1654 Comm: hostapd Not tainted 5.15.127 #0
> [   45.147557] Hardware name: Generic DT based system
> [   45.153753] [<c030d480>] (unwind_backtrace) from [<c0309848>] (show_stack+0x10/0x14)
> [   45.158523] [<c0309848>] (show_stack) from [<c05dd924>] (dump_stack_lvl+0x40/0x4c)
> [   45.166414] [<c05dd924>] (dump_stack_lvl) from [<c0322540>] (__warn+0x8c/0x100)
> [   45.173792] [<c0322540>] (__warn) from [<c032261c>] (warn_slowpath_fmt+0x68/0x78)
> [   45.180996] [<c032261c>] (warn_slowpath_fmt) from [<bf25b63c>] (__ieee80211_flush_queues+0x168/0x16c [mac80211])
> [   45.188780] [<bf25b63c>] (__ieee80211_flush_queues [mac80211]) from [<bf228ec8>] (sta_set_sinfo+0xd44/0xe64 [mac80211])
> [   45.198951] [<bf228ec8>] (sta_set_sinfo [mac80211]) from [<bf229230>] (sta_info_destroy_addr_bss+0x44/0x5c [mac80211])
> [   45.209456] [<bf229230>] (sta_info_destroy_addr_bss [mac80211]) from [<bf1a5000>] (nl80211_del_station+0xe0/0x2b4 [cfg80211])
> [   45.220271] [<bf1a5000>] (nl80211_del_station [cfg80211]) from [<c080a818>] (genl_rcv_msg+0x154/0x340)
> [   45.231538] [<c080a818>] (genl_rcv_msg) from [<c08098e8>] (netlink_rcv_skb+0xb8/0x11c)
> [   45.240718] [<c08098e8>] (netlink_rcv_skb) from [<c0809f24>] (genl_rcv+0x28/0x34)
> [   45.248619] [<c0809f24>] (genl_rcv) from [<c0808fb0>] (netlink_unicast+0x174/0x26c)
> [   45.256170] [<c0808fb0>] (netlink_unicast) from [<c0809284>] (netlink_sendmsg+0x1dc/0x440)
> [   45.263641] [<c0809284>] (netlink_sendmsg) from [<c0782878>] (____sys_sendmsg+0x1d0/0x224)
> [   45.271974] [<c0782878>] (____sys_sendmsg) from [<c0784308>] (___sys_sendmsg+0xa4/0xdc)
> [   45.280220] [<c0784308>] (___sys_sendmsg) from [<c0784470>] (sys_sendmsg+0x44/0x74)
> [   45.288110] [<c0784470>] (sys_sendmsg) from [<c0300040>] (ret_fast_syscall+0x0/0x48)

That stack doesn't look quite right - __ieee80211_flush_queues() isn't
called from - or what looks like inlined into - sta_set_sinfo()?

So I think I don't believe the part about __ieee80211_flush_queues(), it
makes more sense for sta_set_sinfo() to call drv_sta_statistics() which
would also make more sense with the line number (611) which is at least
in my version close to the line there. Not sure what wifi code you're
using, so can't check the exact line, I guess.

But either way, I wouldn't think it could be fixed or broken by this
patch.

johannes




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux